private PaymentDispositionNoteDataUtil _dataUtil(PaymentDispositionNoteService service, string testname)
        {
            var expeditionService  = new PurchasingDispositionExpeditionService(GetServiceProvider().Object, _dbContext(testname));
            var expeditionDataUtil = new PurchasingDispositionExpeditionDataUtil(expeditionService);

            return(new PaymentDispositionNoteDataUtil(service, expeditionDataUtil));
        }
        public void Should_Success_Get_Report_Xls_Empty()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            var xls = service.GetXls(new List <ReportDto>());

            Assert.NotNull(xls);
        }
        public async Task Should_Success_Update_Data()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));


            PaymentDispositionNoteModel model = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            var newModel = await service.ReadByIdAsync(model.Id);

            newModel.BGCheckNumber = "newBG";
            var Response1 = await service.UpdateAsync(newModel.Id, newModel);

            Assert.NotEqual(0, Response1);

            PaymentDispositionNoteModel model2 = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            //var newModel2 = await service.ReadByIdAsync(model.Id);
            PaymentDispositionNoteModel newModel2 = new PaymentDispositionNoteModel();

            newModel2.Id = model2.Id;

            newModel2.Items = new List <PaymentDispositionNoteItemModel> {
                model2.Items.First()
            };
            var Response = await service.UpdateAsync(model2.Id, newModel2);

            Assert.NotEqual(0, Response);
        }
        public async Task Should_Success_Create_Data()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            PaymentDispositionNoteModel   model   = _dataUtil(service, GetCurrentMethod()).GetNewData();
            var Response = await service.CreateAsync(model);

            Assert.NotEqual(0, Response);
        }
        public async Task Should_Success_GetAllByPosition_Data()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            var data = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            var Response = service.GetAllByPosition(1, 25, "{}", null, null, "{}");

            Assert.NotEmpty(Response.Data);
        }
        public async Task Should_Success_Get_Data_By_Id()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            PaymentDispositionNoteModel   model   = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            var Response = await service.ReadByIdAsync(model.Id);

            Assert.NotNull(Response);
        }
        public async Task Should_Success_GetAmountPaidAndIsPosted()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            var data = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            var Response = service.GetAmountPaidAndIsPosted(data.PaymentDispositionNo);

            Assert.Equal(0, Response.AmountPaid);
            Assert.True(Response.IsPosted);
        }
        public async Task Should_Success_Post()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));

            PaymentDispositionNotePostDto dto = await _dataUtil(service, GetCurrentMethod()).GetNewPostDto();

            var Response = await service.Post(dto);

            Assert.NotEqual(0, Response);
        }
        public async Task Should_Success_Get_Data_Details_By_EPOId()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            PaymentDispositionNoteModel   model   = await _dataUtil(service, GetCurrentMethod()).GetTestData();

            var item     = model.Items.First();
            var detail   = item.Details.First();
            var epoId    = detail.EPOId;
            var Response = service.ReadDetailsByEPOId(detail.EPOId);

            Assert.NotNull(Response);
        }
        public async Task Should_Success_Get_Report_Xls()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            PaymentDispositionNoteModel   model   = _dataUtil(service, GetCurrentMethod()).GetNewData();

            var xls = service.GetXls(new List <ReportDto>()
            {
                new ReportDto(1, "", DateTimeOffset.Now, 1, "", DateTimeOffset.Now, DateTimeOffset.Now, 1, "", 1, "", 1, "", false, "", 1, "", 1, "", 1, 1, "")
            });

            Assert.NotNull(xls);
        }
        public async Task Should_Success_GeneratePdfTemplate()
        {
            PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
            var data = await _dataUtil(service, GetCurrentMethod()).GetPDFData();

            var data2 = await _dataUtil(service, GetCurrentMethod()).GetPDFDataIDRNONIDR();

            var Response  = service.GeneratePdfTemplate(data, 7);
            var Response2 = service.GeneratePdfTemplate(data2, 7);

            Assert.NotNull(Response);
            Assert.NotNull(Response2);
        }
        public async Task Should_Success_Get_Report()
        {
            try
            {
                PaymentDispositionNoteService service = new PaymentDispositionNoteService(GetServiceProvider().Object, _dbContext(GetCurrentMethod()));
                PaymentDispositionNoteModel   model   = _dataUtil(service, GetCurrentMethod()).GetNewData();
                await service.CreateAsync(model);

                var item   = model.Items.FirstOrDefault();
                var result = service.GetReport(model.Id, item.DispositionId, model.SupplierId, item.DivisionId, DateTimeOffset.MinValue, DateTimeOffset.MaxValue);

                Assert.NotEmpty(result);
            }
            catch (Exception e)
            {
            }
        }
 public PaymentDispositionNoteDataUtil(PaymentDispositionNoteService service, PurchasingDispositionExpeditionDataUtil expeditionData)
 {
     Service        = service;
     ExpeditionData = expeditionData;
 }