public void CreateFuelCashExpenseTest__Without_ExpenseCategory__Thrown_InvalidProgrammException_and_FuelCashExpense_must_be_null() { // arrange // имитация того что нужной статьи не было найдено CategoryRepository.FuelDocumentExpenseCategoryTestGap = (arg) => { return(null); }; var fuelDocument = new FuelDocument(); FuelType fuelTypeMock = Substitute.For <FuelType>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); Organization organisationMock = Substitute.For <Organization>(); IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); // act, assert Assert.Throws(typeof(InvalidProgramException), () => fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock)); // additional assert Assert.That(fuelDocument.FuelCashExpense, Is.Null, "При исключении в момент создания операций, операции оплаты топлива не должно быть создано"); }
public void SendTest__TransferDocument_FuelExpenseOperation_already_exists__Thrown_InvalidOperationException() { // arrange var cashier = Substitute.For <Employee>(); var subdivisionFrom = Substitute.For <Subdivision>(); subdivisionFrom.Id.Returns(1); var subdivisionTo = Substitute.For <Subdivision>(); subdivisionTo.Id.Returns(2); FuelType fuelTypeMock = Substitute.For <FuelType>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionFrom, fuelTypeMock).Returns(50); var document = new FuelTransferDocument(); document.FuelType = fuelTypeMock; document.Author = Substitute.For <Employee>(); document.Driver = Substitute.For <Employee>(); document.Car = Substitute.For <Car>(); document.CashSubdivisionFrom = subdivisionFrom; document.CashSubdivisionTo = subdivisionTo; document.Status = FuelTransferDocumentStatuses.New; document.TransferedLiters = transferedLitersForSend; document.FuelExpenseOperation = Substitute.For <FuelExpenseOperation>(); // act, assert Assert.Throws <InvalidOperationException>(() => document.Send(cashier, fuelRepositoryMock)); }
public HomeController(ICarRepository carRep, ICategoryRepository categoryRep, IFuelRepository fuelRep, IGearRepository gearRep) { this._carRep = carRep; this._categoryRep = categoryRep; this._fuelRep = fuelRep; this._gearRep = gearRep; }
public void CreateFuelExpenseOperationTest() { // arrange expenseCategoryMock = Substitute.For <ExpenseCategory>(); CategoryRepository.FuelDocumentExpenseCategoryTestGap = (arg) => expenseCategoryMock; FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); Car carMock = Substitute.For <Car>(); carMock.IsCompanyCar.Returns(false); Organization organisationMock = Substitute.For <Organization>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); routeListMock.ClosingSubdivision = subdivisionMock; IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.Car = carMock; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.FuelCoupons = 40; fuelDocument.PayedForFuel = null; fuelDocument.Subdivision = subdivisionMock; // act fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock); // assert AssertsAccumulator.Create .Accumulate(() => Assert.That(fuelDocument.FuelExpenseOperation.FuelDocument, Is.SameAs(fuelDocument), "Документ в операции должен совпадать с документом выдачи топлива")) .Accumulate(() => Assert.That(fuelDocument.FuelExpenseOperation.FuelTransferDocument, Is.Null, "Документ перемещения топлива не должен быть заполнен")) .Accumulate(() => Assert.That(fuelDocument.FuelExpenseOperation.RelatedToSubdivision, Is.SameAs(fuelDocument.RouteList.ClosingSubdivision), "Подразделение в операции должно совпадать с подразделением в маршрутном листе")) .Accumulate(() => Assert.That(fuelDocument.FuelExpenseOperation.FuelLiters, Is.EqualTo(fuelDocument.FuelCoupons), "Списанное топливо должно совпадать с топливом выданным талонами в документе выдачи")) .Release(); }
public RouteListWorkingJournalViewModel( RouteListJournalFilterViewModel filterViewModel, IUnitOfWorkFactory unitOfWorkFactory, ICommonServices commonServices, IRouteListRepository routeListRepository, IFuelRepository fuelRepository, ICallTaskRepository callTaskRepository, BaseParametersProvider baseParametersProvider, IExpenseParametersProvider expenseParametersProvider, ISubdivisionRepository subdivisionRepository, IAccountableDebtsRepository accountableDebtsRepository, IGtkTabsOpener gtkTabsOpener) : base(filterViewModel, unitOfWorkFactory, commonServices) { TabName = "Работа кассы с МЛ"; _routeListRepository = routeListRepository ?? throw new ArgumentNullException(nameof(routeListRepository)); _fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); _callTaskRepository = callTaskRepository ?? throw new ArgumentNullException(nameof(callTaskRepository)); _baseParametersProvider = baseParametersProvider ?? throw new ArgumentNullException(nameof(baseParametersProvider)); _expenseParametersProvider = expenseParametersProvider ?? throw new ArgumentNullException(nameof(expenseParametersProvider)); _subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); _accountableDebtsRepository = accountableDebtsRepository ?? throw new ArgumentNullException(nameof(accountableDebtsRepository)); _gtkTabsOpener = gtkTabsOpener ?? throw new ArgumentNullException(nameof(gtkTabsOpener)); UseSlider = false; NotifyConfiguration.Enable(); NotifyConfiguration.Instance.BatchSubscribeOnEntity <RouteList>(OnRouteListChanged); InitPopupActions(); }
public void CreateFuelCashExpenseTest() { // arrange var categoryRepositoryMock = Substitute.For <ICategoryRepository>(); expenseCategoryMock = Substitute.For <ExpenseCategory>(); categoryRepositoryMock.FuelDocumentExpenseCategory(null).Returns(expenseCategoryMock); FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); Car carMock = Substitute.For <Car>(); carMock.IsCompanyCar.Returns(false); Organization organisationMock = Substitute.For <Organization>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); routeListMock.ClosingSubdivision = subdivisionMock; OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(_parametersProvider); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.FuelPaymentType = FuelPaymentType.Cash; fuelDocument.Car = carMock; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.FuelCoupons = 40; fuelDocument.PayedForFuel = 500; fuelDocument.Subdivision = subdivisionMock; // act fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock, categoryRepositoryMock); // assert AssertsAccumulator.Create .Accumulate(() => Assert.That(fuelDocument.FuelCashExpense.Casher, Is.SameAs(fuelDocument.Author))) .Accumulate(() => Assert.That(fuelDocument.FuelCashExpense.Employee, Is.SameAs(fuelDocument.Driver))) .Accumulate(() => Assert.That(fuelDocument.FuelCashExpense.RelatedToSubdivision, Is.SameAs(fuelDocument.RouteList.ClosingSubdivision))) .Release(); }
public void CreateFuelCashExpenseTest_Money(decimal payedForFuel, decimal result) { // arrange var categoryRepositoryMock = Substitute.For <ICategoryRepository>(); expenseCategoryMock = Substitute.For <ExpenseCategory>(); categoryRepositoryMock.FuelDocumentExpenseCategory(null).Returns(expenseCategoryMock); FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); Car carMock = Substitute.For <Car>(); carMock.IsCompanyCar.Returns(false); Organization organisationMock = Substitute.For <Organization>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); routeListMock.ClosingSubdivision = subdivisionMock; IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); var organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(_parametersProvider); organisationParametersProviderMock.CommonCashDistributionOrganisationId.Returns(2); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.Car = carMock; fuelDocument.FuelPaymentType = FuelPaymentType.Cash; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.FuelCoupons = 40; fuelDocument.PayedForFuel = payedForFuel; fuelDocument.Subdivision = subdivisionMock; // act fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock, categoryRepositoryMock); // assert Assert.That(fuelDocument.FuelCashExpense.Money, Is.EqualTo(result)); }
public FuelBalanceViewModel(ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository) { UoW = UnitOfWorkFactory.CreateWithoutRoot(); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); ConfigEntityUpdateSubscribes(); Update(); }
public FuelService(IFuelRepository repository, IJsonReader jsonReader, IHttpClient httpClient, int getLastDays, int chunkSize, string serviceApi) { _repository = repository; _jsonReader = jsonReader; _httpClient = httpClient; _getLastDays = getLastDays; _chunkSize = chunkSize; _serviceApi = serviceApi; }
public void CreateFuelCashExpenseTest__Incorrect_FuelCoupons_and_PayedForFuel__Thrown_ValidationException_and_FuelCashExpense_must_be_null() { // arrange // arrange var categoryRepositoryMock = Substitute.For <ICategoryRepository>(); expenseCategoryMock = Substitute.For <ExpenseCategory>(); categoryRepositoryMock.FuelDocumentExpenseCategory(null).Returns(expenseCategoryMock); FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); Car carMock = Substitute.For <Car>(); carMock.IsCompanyCar.Returns(true); Organization organisationMock = Substitute.For <Organization>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); routeListMock.ClosingSubdivision = subdivisionMock; IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(_parametersProvider); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.Car = carMock; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.PayedForFuel = 0; // act, assert Assert.Throws(typeof(ValidationException), () => fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock, categoryRepositoryMock)); // additional assert Assert.That(fuelDocument.FuelCashExpense, Is.Null, "При исключении в момент создания операций, операции оплаты топлива не должно быть создано"); }
public void CreateFuelCashExpenseTest__With_Zero_PayedFor_Fuel__FuelCashExpense_must_be_null() { // arrange var categoryRepositoryMock = Substitute.For <ICategoryRepository>(); expenseCategoryMock = Substitute.For <ExpenseCategory>(); categoryRepositoryMock.FuelDocumentExpenseCategory(null).Returns(expenseCategoryMock); FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); CarVersion carVersionMock = Substitute.For <CarVersion>(); carVersionMock.IsCompanyCar.Returns(true); Organization organisationMock = Substitute.For <Organization>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); routeListMock.ClosingSubdivision = subdivisionMock; IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(_parametersProvider); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.Car = carVersionMock.Car; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.FuelCoupons = 40; fuelDocument.PayedForFuel = 0; fuelDocument.Subdivision = subdivisionMock; // act fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock, categoryRepositoryMock); // assert Assert.That(fuelDocument.FuelCashExpense, Is.Null); }
public FuelController(IFuelRepository fuelRepository, IMapper mapper, IPropertyMappingService propertyMappingService, IPropertyCheckerService propertyCheckerService) { _fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); _mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); _propertyMappingService = propertyMappingService ?? throw new ArgumentNullException(nameof(propertyMappingService)); _propertyCheckerService = propertyCheckerService ?? throw new ArgumentNullException(nameof(propertyCheckerService)); }
public FuelDocumentsJournalViewModel( IUnitOfWorkFactory unitOfWorkFactory, ICommonServices commonServices, IEmployeeService employeeService, ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository, ICounterpartyJournalFactory counterpartyJournalFactory, INomenclatureSelectorFactory nomenclatureSelectorFactory, IEmployeeJournalFactory employeeJournalFactory, ISubdivisionJournalFactory subdivisionJournalFactory, ICarJournalFactory carJournalFactory, IReportViewOpener reportViewOpener, IFileChooserProvider fileChooserProvider, ExpenseCategoryJournalFilterViewModel expenseCategoryJournalFilterViewModel ) : base(unitOfWorkFactory, commonServices) { this.commonServices = commonServices ?? throw new ArgumentNullException(nameof(commonServices)); this.employeeService = employeeService ?? throw new ArgumentNullException(nameof(employeeService)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.counterpartyJournalFactory = counterpartyJournalFactory ?? throw new ArgumentNullException(nameof(counterpartyJournalFactory)); this.nomenclatureSelectorFactory = nomenclatureSelectorFactory ?? throw new ArgumentNullException(nameof(nomenclatureSelectorFactory)); this.employeeJournalFactory = employeeJournalFactory ?? throw new ArgumentNullException(nameof(employeeJournalFactory)); _subdivisionJournalFactory = subdivisionJournalFactory ?? throw new ArgumentNullException(nameof(subdivisionJournalFactory)); this.carJournalFactory = carJournalFactory ?? throw new ArgumentNullException(nameof(carJournalFactory)); this.reportViewOpener = reportViewOpener ?? throw new ArgumentNullException(nameof(reportViewOpener)); this.fileChooserProvider = fileChooserProvider ?? throw new ArgumentNullException(nameof(fileChooserProvider)); this.expenseCategoryJournalFilterViewModel = expenseCategoryJournalFilterViewModel ?? throw new ArgumentNullException(nameof(expenseCategoryJournalFilterViewModel)); TabName = "Журнал учета топлива"; var loader = new ThreadDataLoader <FuelDocumentJournalNode>(unitOfWorkFactory); loader.MergeInOrderBy(x => x.CreationDate, true); DataLoader = loader; RegisterIncomeInvoice(); RegisterTransferDocument(); RegisterWriteoffDocument(); FinishJournalConfiguration(); UpdateOnChanges( typeof(FuelIncomeInvoice), typeof(FuelIncomeInvoiceItem), typeof(FuelTransferDocument), typeof(FuelWriteoffDocument), typeof(FuelWriteoffDocumentItem) ); }
public HomeController( IAdvertisementRepository advertisementRepository, IBrandRepository brandRepository, IFuelRepository fuelRepository, ITransmissionTypeRepository transmissionRepository, IVehiclTypeRepository vehiclTypeRepository, IRegionRepository regionRepository) { _brandRepository = brandRepository; _fuelRepository = fuelRepository; _transmissionTypeRepository = transmissionRepository; _vehiclTypeRepository = vehiclTypeRepository; _regionRepository = regionRepository; }
public VehiclesController(IVehicleRepository vehicleRepository, IBrandRepository brandRepository, IFuelRepository fuelRepository, IColorRepository colorRepository, IConverterHelper converterHelper, IUserHelper userHelper, IMainWindowConverterHelper mainWindowConverterHelper ) { _vehicleRepository = vehicleRepository; _brandRepository = brandRepository; _fuelRepository = fuelRepository; _colorRepository = colorRepository; _converterHelper = converterHelper; _userHelper = userHelper; }
public FuelWriteoffDocumentViewModel( IEntityUoWBuilder uoWBuilder, IUnitOfWorkFactory unitOfWorkFactory, IEmployeeService employeeService, IFuelRepository fuelRepository, ISubdivisionRepository subdivisionRepository, ICommonServices commonServices, IEmployeeJournalFactory employeeJournalFactory, IReportViewOpener reportViewOpener, IFileChooserProvider fileChooserProvider, ExpenseCategoryJournalFilterViewModel expenseCategoryJournalFilterViewModel, ISubdivisionJournalFactory subdivisionJournalFactory ) : base(uoWBuilder, unitOfWorkFactory, commonServices) { this.unitOfWorkFactory = unitOfWorkFactory ?? throw new ArgumentNullException(nameof(unitOfWorkFactory)); this.employeeService = employeeService ?? throw new ArgumentNullException(nameof(employeeService)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.commonServices = commonServices ?? throw new ArgumentNullException(nameof(commonServices)); EmployeeJournalFactory = employeeJournalFactory ?? throw new ArgumentNullException(nameof(employeeJournalFactory)); this.reportViewOpener = reportViewOpener ?? throw new ArgumentNullException(nameof(reportViewOpener)); this.expenseCategoryJournalFilterViewModel = expenseCategoryJournalFilterViewModel ?? throw new ArgumentNullException(nameof(expenseCategoryJournalFilterViewModel)); this.fileChooserProvider = fileChooserProvider ?? throw new ArgumentNullException(nameof(fileChooserProvider)); SubdivisionJournalFactory = subdivisionJournalFactory ?? throw new ArgumentNullException(nameof(subdivisionJournalFactory)); CreateCommands(); UpdateCashSubdivisions(); TabName = "Акт выдачи топлива"; if (CurrentEmployee == null) { AbortOpening("К вашему пользователю не привязан сотрудник, невозможно открыть документ"); } if (UoW.IsNew) { Entity.Date = DateTime.Now; Entity.Cashier = CurrentEmployee; } ValidationContext.ServiceContainer.AddService(typeof(IFuelRepository), fuelRepository); ConfigureEntries(); }
public AdvertisementController( IContentProvider contentProvider, IAdvertisementRepository advertisementRepository, IBrandRepository brandRepository, IFuelRepository fuelRepository, ITransmissionTypeRepository transmissionRepository, IVehiclTypeRepository vehiclTypeRepository, IRegionRepository regionRepository, ICurrencyRepository currencyRepository) { _contentProvider = contentProvider; _advertisementRepository = advertisementRepository; _brandRepository = brandRepository; _fuelRepository = fuelRepository; _transmissionRepository = transmissionRepository; _vehiclTypeRepository = vehiclTypeRepository; _regionRepository = regionRepository; _currencyRepository = currencyRepository; }
public void SendTest_CreateFuelTransferOperation() { // arrange var cashier = Substitute.For <Employee>(); var subdivisionFrom = Substitute.For <Subdivision>(); subdivisionFrom.Id.Returns(1); var subdivisionTo = Substitute.For <Subdivision>(); subdivisionTo.Id.Returns(2); FuelType fuelTypeMock = Substitute.For <FuelType>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionFrom, fuelTypeMock).Returns(50); var document = new FuelTransferDocument(); document.FuelType = fuelTypeMock; document.Author = Substitute.For <Employee>(); document.Driver = Substitute.For <Employee>(); document.Car = Substitute.For <Car>(); document.CashSubdivisionFrom = subdivisionFrom; document.CashSubdivisionTo = subdivisionTo; document.Status = FuelTransferDocumentStatuses.New; document.TransferedLiters = transferedLitersForSend; // act document.Send(cashier, fuelRepositoryMock); // assert AssertsAccumulator.Create .Accumulate(() => Assert.That(document.FuelTransferOperation.ReceiveTime, Is.Null)) .Accumulate(() => Assert.That(document.FuelTransferOperation.SendTime, Is.EqualTo(document.SendTime))) .Accumulate(() => Assert.That(document.FuelTransferOperation.SubdivisionFrom, Is.SameAs(document.CashSubdivisionFrom))) .Accumulate(() => Assert.That(document.FuelTransferOperation.SubdivisionTo, Is.SameAs(document.CashSubdivisionTo))) .Accumulate(() => Assert.That(document.FuelTransferOperation.TransferedLiters, Is.EqualTo(document.TransferedLiters))) .Release(); }
public FuelIncomeInvoiceViewModel ( IEntityUoWBuilder uowBuilder, IUnitOfWorkFactory unitOfWorkFactory, IEmployeeService employeeService, INomenclatureSelectorFactory nomenclatureSelectorFactory, ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository, ICounterpartyJournalFactory counterpartyJournalFactory, ICommonServices commonServices ) : base(uowBuilder, unitOfWorkFactory, commonServices) { this.employeeService = employeeService; this.nomenclatureSelectorFactory = nomenclatureSelectorFactory ?? throw new ArgumentNullException(nameof(nomenclatureSelectorFactory)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.counterpartyJournalFactory = counterpartyJournalFactory ?? throw new ArgumentNullException(nameof(counterpartyJournalFactory)); TabName = "Входящая накладная по топливу"; if (CurrentEmployee == null) { AbortOpening("К вашему пользователю не привязан сотрудник, невозможно открыть документ"); } if (uowBuilder.IsNewEntity) { Entity.СreationTime = DateTime.Now; Entity.Author = CurrentEmployee; } FuelBalanceViewModel = new FuelBalanceViewModel(subdivisionRepository, fuelRepository); CreateCommands(); ConfigEntityUpdateSubscribes(); ConfigureEntityPropertyChanges(); UpdateCashSubdivisions(); UpdateBalanceCache(); ValidationContext.ServiceContainer.AddService(typeof(IFuelRepository), fuelRepository); ConfigureEntries(); }
public FuelTransferDocumentViewModel( IEntityUoWBuilder uoWBuilder, IUnitOfWorkFactory unitOfWorkFactory, IEmployeeService employeeService, ISubdivisionRepository subdivisionRepository, IFuelRepository fuelRepository, ICommonServices commonServices, IEmployeeJournalFactory employeeJournalFactory, ICarJournalFactory carJournalFactory, IReportViewOpener reportViewOpener ) : base(uoWBuilder, unitOfWorkFactory, commonServices) { this.employeeService = employeeService ?? throw new ArgumentNullException(nameof(employeeService)); this.subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); this.fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); this.employeeJournalFactory = employeeJournalFactory ?? throw new ArgumentNullException(nameof(employeeJournalFactory)); this.carJournalFactory = carJournalFactory ?? throw new ArgumentNullException(nameof(carJournalFactory)); this.reportViewOpener = reportViewOpener ?? throw new ArgumentNullException(nameof(reportViewOpener)); TabName = "Документ перемещения топлива"; if (CurrentEmployee == null) { AbortOpening("К вашему пользователю не привязан сотрудник, невозможно открыть документ"); } ConfigureEntityPropertyChanges(); CreateCommands(); FuelBalanceViewModel = new FuelBalanceViewModel(subdivisionRepository, fuelRepository); UpdateCashSubdivisions(); UpdateFuelTypes(); UpdateBalanceCache(); if (uoWBuilder.IsNewEntity) { Entity.CreationTime = DateTime.Now; Entity.Author = CurrentEmployee; } ConfigureEntries(); }
public void SendTest__TransferDocument_Without_Cashier__Thrown_ArgumentNullException() { // arrange var subdivisionFrom = Substitute.For <Subdivision>(); subdivisionFrom.Id.Returns(1); var subdivisionTo = Substitute.For <Subdivision>(); subdivisionTo.Id.Returns(2); FuelType fuelTypeMock = Substitute.For <FuelType>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionFrom, fuelTypeMock).Returns(50); var document = new FuelTransferDocument(); document.FuelType = fuelTypeMock; document.Author = Substitute.For <Employee>(); document.Driver = Substitute.For <Employee>(); document.Car = Substitute.For <Car>(); document.CashSubdivisionFrom = subdivisionFrom; document.CashSubdivisionTo = subdivisionTo; document.Status = FuelTransferDocumentStatuses.New; document.TransferedLiters = transferedLitersForSend; var parameterName = document.GetType().GetMethod(nameof(document.Send)).GetParameters()[0].Name; // act var exception = Assert.Throws <ArgumentNullException>(() => document.Send(null, fuelRepositoryMock)); // assert Assert.That(exception.ParamName, Is.EqualTo(parameterName)); }
public ConverterHelper(IVehicleRepository vehicleRepository, IBrandRepository brandRepository, IFuelRepository fuelRepository, IColorRepository colorRepository, IUserHelper userHelper, IZipCodeRepository zipCodeRepository, ICountryRepository countryRepository, IComboHelpers comboHelpers, IServiceRepository serviceRepository, IDealershipRepository dealershipRepository, IDepartmentRepository departmentRepository) { _vehicleRepository = vehicleRepository; _brandRepository = brandRepository; _fuelRepository = fuelRepository; _colorRepository = colorRepository; _userHelper = userHelper; _zipCodeRepository = zipCodeRepository; _countryRepository = countryRepository; _comboHelpers = comboHelpers; _serviceRepository = serviceRepository; _dealershipRepository = dealershipRepository; _departmentRepository = departmentRepository; }
public FuelController(IFuelRepository fuelRep) { this._fuelRep = fuelRep; }
public RouteListJournalViewModel( RouteListJournalFilterViewModel filterViewModel, IRouteListRepository routeListRepository, IFuelRepository fuelRepository, ISubdivisionRepository subdivisionRepository, ICategoryRepository categoryRepository, ITrackRepository trackRepository, IUndeliveredOrdersRepository undeliveredOrdersRepository, IDeliveryShiftRepository deliveryShiftRepository, IUnitOfWorkFactory unitOfWorkFactory, IRouteListParametersProvider routeListParametersProvider, ICallTaskWorker callTaskWorker, IWarehouseRepository warehouseRepository, ICarJournalFactory carJournalFactory, IEmployeeJournalFactory employeeJournalFactory, IEmployeeRepository employeeRepository, IGtkTabsOpener gtkTabsOpener, IOrderSelectorFactory orderSelectorFactory, ICounterpartyJournalFactory counterpartyJournalFactory, IDeliveryPointJournalFactory deliveryPointJournalFactory, ISubdivisionJournalFactory subdivisionJournalFactory, IUndeliveredOrdersJournalOpener undeliveredOrdersJournalOpener, IStockRepository stockRepository, IReportPrinter reportPrinter, ITerminalNomenclatureProvider terminalNomenclatureProvider, IEmployeeSettings employeeSettings, ICommonServices commonServices) : base(filterViewModel, unitOfWorkFactory, commonServices) { _routeListRepository = routeListRepository ?? throw new ArgumentNullException(nameof(routeListRepository)); _fuelRepository = fuelRepository ?? throw new ArgumentNullException(nameof(fuelRepository)); _subdivisionRepository = subdivisionRepository ?? throw new ArgumentNullException(nameof(subdivisionRepository)); _categoryRepository = categoryRepository ?? throw new ArgumentNullException(nameof(categoryRepository)); _trackRepository = trackRepository ?? throw new ArgumentNullException(nameof(trackRepository)); _undeliveredOrdersRepository = undeliveredOrdersRepository ?? throw new ArgumentNullException(nameof(undeliveredOrdersRepository)); _deliveryShiftRepository = deliveryShiftRepository ?? throw new ArgumentNullException(nameof(deliveryShiftRepository)); _routeListParametersProvider = routeListParametersProvider ?? throw new ArgumentNullException(nameof(routeListParametersProvider)); _callTaskWorker = callTaskWorker ?? throw new ArgumentNullException(nameof(callTaskWorker)); _warehouseRepository = warehouseRepository ?? throw new ArgumentNullException(nameof(warehouseRepository)); _carJournalFactory = carJournalFactory ?? throw new ArgumentNullException(nameof(carJournalFactory)); _employeeJournalFactory = employeeJournalFactory ?? throw new ArgumentNullException(nameof(employeeJournalFactory)); _employeeRepository = employeeRepository ?? throw new ArgumentNullException(nameof(employeeRepository)); _gtkTabsOpener = gtkTabsOpener ?? throw new ArgumentNullException(nameof(gtkTabsOpener)); _orderSelectorFactory = orderSelectorFactory ?? throw new ArgumentNullException(nameof(orderSelectorFactory)); _counterpartyJournalFactory = counterpartyJournalFactory ?? throw new ArgumentNullException(nameof(counterpartyJournalFactory)); _deliveryPointJournalFactory = deliveryPointJournalFactory ?? throw new ArgumentNullException(nameof(deliveryPointJournalFactory)); _subdivisionJournalFactory = subdivisionJournalFactory ?? throw new ArgumentNullException(nameof(subdivisionJournalFactory)); _undeliveredOrdersJournalOpener = undeliveredOrdersJournalOpener ?? throw new ArgumentNullException(nameof(undeliveredOrdersJournalOpener)); _stockRepository = stockRepository ?? throw new ArgumentNullException(nameof(stockRepository)); _reportPrinter = reportPrinter ?? throw new ArgumentNullException(nameof(reportPrinter)); _terminalNomenclatureProvider = terminalNomenclatureProvider ?? throw new ArgumentNullException(nameof(terminalNomenclatureProvider)); _employeeSettings = employeeSettings ?? throw new ArgumentNullException(nameof(employeeSettings)); TabName = "Журнал МЛ"; NotifyConfiguration.Enable(); NotifyConfiguration.Instance.BatchSubscribeOnEntity <RouteList>(changeEvents => Refresh()); InitPopupActions(); }
public FuelController(IFuelRepository fuelRepository) { _fuelRepository = fuelRepository; }
public void CreateFuelOperationTest_Car_IsCompanyHavings() { // arrange expenseCategoryMock = Substitute.For <ExpenseCategory>(); CategoryRepository.FuelDocumentExpenseCategoryTestGap = (arg) => expenseCategoryMock; FuelType fuelTypeMock = Substitute.For <FuelType>(); fuelTypeMock.Cost.Returns(30); Car carMock = Substitute.For <Car>(); carMock.IsCompanyCar.Returns(true); Organization organisationMock = Substitute.For <Organization>(); IUnitOfWork uowMock = Substitute.For <IUnitOfWork>(); VodovozRouteList routeListMock = Substitute.For <VodovozRouteList>(); Subdivision subdivisionMock = Substitute.For <Subdivision>(); routeListMock.ClosingSubdivision = subdivisionMock; IFuelRepository fuelRepositoryMock = Substitute.For <IFuelRepository>(); fuelRepositoryMock.GetFuelBalanceForSubdivision(uowMock, subdivisionMock, fuelTypeMock).Returns(50); OrganizationParametersProvider organisationParametersProviderMock = Substitute.For <OrganizationParametersProvider>(); CashDistributionCommonOrganisationProvider commonOrganisationProviderMock = Substitute.For <CashDistributionCommonOrganisationProvider>(organisationParametersProviderMock); commonOrganisationProviderMock.GetCommonOrganisation(uowMock).Returns(organisationMock); var fuelDocument = new FuelDocument(); fuelDocument.Driver = Substitute.For <Employee>(); fuelDocument.Car = carMock; fuelDocument.Date = DateTime.Now; fuelDocument.LastEditDate = DateTime.Now; fuelDocument.Fuel = fuelTypeMock; fuelDocument.RouteList = routeListMock; fuelDocument.UoW = uowMock; fuelDocument.FuelCoupons = 40; fuelDocument.PayedForFuel = null; fuelDocument.Subdivision = subdivisionMock; // act fuelDocument.CreateOperations(fuelRepositoryMock, commonOrganisationProviderMock); // assert AssertsAccumulator.Create .Accumulate(() => Assert.That(fuelDocument.FuelOperation.LitersGived, Is.EqualTo(fuelDocument.FuelCoupons), "Количество топлива в операции не совпадает с количеством в документе")) .Accumulate(() => Assert.That(fuelDocument.FuelOperation.PayedLiters, Is.EqualTo(fuelDocument.PayedLiters), "Количество топлива оплаченного деньгами не совпадает с количеством топлива оплаченного деньгами в документе")) .Accumulate(() => Assert.That(fuelDocument.FuelOperation.Car, Is.SameAs(fuelDocument.Car), "Автомобиль в операции не совпадает с автомобилем в документе")) .Accumulate(() => Assert.That(fuelDocument.FuelOperation.Driver, Is.Null, "Водитель не должен быть заполнен")) .Accumulate(() => Assert.That(fuelDocument.FuelOperation.Fuel, Is.SameAs(fuelDocument.Fuel), "Тип топлива в операции не совпадает с типом топлива в документе")) .Release(); }
public CarFiltersService(ITransmissionRepository transmissionRepository, ICarBodyRepository carBodyRepository, IFuelRepository fuelRepository) { _transmissionRepository = transmissionRepository; _carBodyRepository = carBodyRepository; _fuelRepository = fuelRepository; }