public async Task Should_Throw_Exception_Create_Non_Exist_COA_Invalid_Format() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); var items = new List <JournalTransactionItemModel>() { new JournalTransactionItemModel() { COA = new COAModel() { Code = "9999.9.99.99", }, Debit = 1000 }, new JournalTransactionItemModel() { COA = new COAModel() { Code = "9999.9.9998", }, Credit = 1000 } }; model.Items = items; //var Response = await service.CreateAsync(model); await Assert.ThrowsAsync <Exception>(() => service.CreateAsync(model)); }
public void Should_No_Error_Validate_Data() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var vm = _dataUtil(service).GetDataToValidate(); Assert.True(vm.Validate(null).Count() == 0); }
private JournalTransactionDataUtil _dataUtil(JournalTransactionService service) { var coaService = new COAService(GetServiceProvider().Object, service._DbContext); var coaDataUtil = new COADataUtil(coaService); return(new JournalTransactionDataUtil(service, coaDataUtil)); }
public async Task Should_Success_Update_Data_NewItem() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = await _dataUtil(service).GetTestData(); model.Description = "NewDescription"; var newItemDebit = new JournalTransactionItemModel() { COA = new COAModel() { Id = 1, Code = "" }, Debit = 100 }; model.Items.Add(newItemDebit); var newItemCredit = new JournalTransactionItemModel() { COA = new COAModel() { Id = 1, Code = "" }, Credit = 100 }; model.Items.Add(newItemCredit); var Response = await service.UpdateAsync(model.Id, model); Assert.NotEqual(0, Response); }
public async Task Should_Success_Create_Data_Non_Exist_COA() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); var items = new List <JournalTransactionItemModel>() { new JournalTransactionItemModel() { COA = new COAModel() { Code = "9999.9.99.99", }, Debit = 1000 }, new JournalTransactionItemModel() { COA = new COAModel() { Code = "9999.9.99.98", }, Credit = 1000 } }; model.Items = items; var Response = await service.CreateAsync(model); Assert.NotEqual(0, Response); }
public async Task Should_Success_Create_Data() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); var Response = await service.CreateAsync(model); Assert.NotEqual(0, Response); }
public void Should_Success_Generate_Excel_Empty() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var reportResponse = service.GenerateExcel(DateTimeOffset.UtcNow, DateTimeOffset.UtcNow, 7); Assert.NotNull(reportResponse); }
public async Task Should_Success_GetSubLedgerReportXls_When_EmptyData() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var result = await service.GetSubLedgerReportXls(null, DateTime.Now.Month, DateTime.Now.Year, 1); Assert.NotNull(result); }
public async Task Should_Skip_ReverseJournalTransaction_DataNotFound() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); //await Assert.ThrowsAsync<Exception>(() => service.ReverseJournalTransactionByReferenceNo("test")); var response = await service.ReverseJournalTransactionByReferenceNo("test"); Assert.Equal(0, response); }
public async Task Should_Success_GetGeneralLedgerReportXls_When_DataNoExist() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var response = await service.GetGeneralLedgerReportXls(DateTime.Now.AddYears(-1), DateTime.Now.AddYears(1), 0); Assert.NotNull(response); }
public async Task Should_Success_Get_Data_By_Id() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = await _dataUtil(service).GetTestData(); var Response = await service.ReadByIdAsync(model.Id); Assert.NotNull(Response); }
public async Task Should_Success_Get_Data() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestData(); var Response = service.Read(1, 25, "{}", null, data.DocumentNo, "{}"); Assert.NotEmpty(Response.Data); }
public async Task Should_Success_Get_General_LedgerXls() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewPostedData(); await service.CreateAsync(model); var response = await service.GetGeneralLedgerReportXls(DateTime.Now.AddYears(-1), DateTime.Now.AddYears(1), 0); Assert.NotNull(response); }
public async Task Should_Success_Posting_Transaction_By_Model() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestData(); var reportResponse = await service.PostTransactionAsync(data.Id, data); Assert.NotEqual(0, reportResponse); }
public async Task Should_Success_Generate_NoBankName_SubLedger() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestPostedManualData(); var reportResponse = await service.GetSubLedgerReport(data.Items.ToList()[0].COAId, data.Date.Month, data.Date.Year, 1); Assert.NotNull(reportResponse); }
public async Task Should_Success_ReverseJournalTransaction_Data() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); var createdData = await service.CreateAsync(model); var response = await service.ReverseJournalTransactionByReferenceNo(model.ReferenceNo); Assert.NotEqual(0, response); }
public async Task Should_Success_Generate_Excel() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestData(); var reportResponse = service.GenerateExcel(data.Date.AddDays(-1), data.Date, 7); Assert.NotNull(reportResponse); }
public void Should_Error_Validate_Data_NotEqual_Total() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var vm = _dataUtil(service).GetDataToValidate(); vm.Items[1].Credit = 5000; vm.Date = DateTimeOffset.UtcNow.AddDays(2); Assert.True(vm.Validate(null).Count() > 0); }
public void Should_Error_Validate_Data_Debit_And_Credit_EqualsZero() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var vm = _dataUtil(service).GetDataToValidate(); vm.Items[1].Credit = 0; vm.Items[1].Credit = 0; Assert.True(vm.Validate(null).Count() > 0); }
public async Task Should_Success_UpdateAsync_ExistData() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = await _dataUtil(service).GetTestData(); var existData = await service.ReadByIdAsync(model.Id); var Response = await service.UpdateAsync(existData.Id, existData); Assert.NotEqual(0, Response); }
public async Task Should_Success_Get_Data_ByDate() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestData(); DateTimeOffset date = DateTimeOffset.UtcNow; var Response = service.ReadByDate(date.AddDays(-1), date.AddDays(1), 0, 1, 25, "{}", null, data.DocumentNo, "{}"); Assert.NotEmpty(Response.Data); }
public async Task Should_Success_Read_ReferenceType() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); model.Status = "DRAFT"; var createdData = await service.CreateAsync(model); var response = service.GetAllReferenceType(model.Description); Assert.NotEmpty(response); }
public async Task Should_Success_Create_Many() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var firstModel = _dataUtil(service).GetNewData(); var secondModel = _dataUtil(service).GetNewData(); var response = await service.CreateManyAsync(new List <JournalTransactionModel>() { firstModel, secondModel }); //var newModel = _dataUtil(service).GetNewData(); //newModel.ReferenceNo = model.ReferenceNo; //var response = await service.CreateAsync(newModel); Assert.NotEqual(0, response); }
public async Task Should_Success_Read_Unposted_Journal() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var model = _dataUtil(service).GetNewData(); model.Status = "DRAFT"; var createdData = await service.CreateAsync(model); var response = service.ReadUnPostedTransactionsByPeriod(DateTimeOffset.Now.Month, DateTimeOffset.Now.Year); Assert.NotEmpty(response); }
public async Task Should_Success_Create_NextMonth_Data() { var dbContext = _dbContext(GetCurrentMethod()); var service = new JournalTransactionService(GetServiceProvider().Object, dbContext); var model = _dataUtil(service).GetNewData(); var Response = await service.CreateAsync(model); var numberGenerator = dbContext.JournalTransactionNumbers.FirstOrDefault(); numberGenerator.Month = model.CreatedUtc.Month - 1; dbContext.JournalTransactionNumbers.Update(numberGenerator); dbContext.SaveChanges(); var newModel = _dataUtil(service).GetNewData(); newModel.ReferenceNo = new Guid().ToString(); var NewResponse = await service.CreateAsync(newModel); Assert.NotEqual(0, NewResponse); }
public async Task Should_Success_Get_Report() { var service = new JournalTransactionService(GetServiceProvider().Object, _dbContext(GetCurrentMethod())); var data = await _dataUtil(service).GetTestData(); var reportResponse = service.GetReport(1, 25, data.Date.AddDays(-1), data.Date, 7); Assert.NotNull(reportResponse.Item1); var reportResponse2 = service.GetReport(1, 25, data.Date.AddDays(-1), null, 7); Assert.NotNull(reportResponse2.Item1); var reportResponse3 = service.GetReport(1, 25, null, data.Date, 7); Assert.NotNull(reportResponse3.Item1); var reportResponse4 = service.GetReport(1, 25, null, null, 7); Assert.NotNull(reportResponse4.Item1); }
public JournalTransactionDataUtil(JournalTransactionService service, COADataUtil coaDataUtil) { _Service = service; _COADataUtil = coaDataUtil; }