Exemplo n.º 1
0
        public void Init()
        {
            creationDate        = DateTime.Now;
            currentDate         = DateTime.Now;
            storage             = new Storage("qwe", StorageType.ExtraStorage);
            deal                = new Mock <Deal>();
            quota               = new DealQuota("asd", 10, 45, 15000);
            user                = new Mock <User>();
            createdBy           = new Mock <User>();
            team                = new Mock <Team>();
            contract            = new Mock <ClientContract>();
            accountOrganization = new Mock <AccountOrganization>();
            valueAddedTax       = new ValueAddedTax("18%", 18);
            ag     = new ArticleGroup("Группа товаров", "Группа товаров");
            art1   = new Article("Товар 1", ag, new MeasureUnit("шт.", "штуки", "123", 1), false);
            art2   = new Article("Товар 2", ag, new MeasureUnit("шт.", "штуки", "123", 1), false);
            art3   = new Article("Товар 3", ag, new MeasureUnit("шт.", "штуки", "123", 1), false);
            prices = new List <ArticleAccountingPrice>();
            prices.Add(new ArticleAccountingPrice(art1, 10M));
            prices.Add(new ArticleAccountingPrice(art2, 13M));
            prices.Add(new ArticleAccountingPrice(art3, 15M));
            receiptWaybillRow = new ReceiptWaybillRow(art1, 150, valueAddedTax, 75);

            user.Setup(x => x.Id).Returns(43);
            createdBy.Setup(x => x.Id).Returns(1);
            team.Setup(x => x.Id).Returns(1);
            deal.Setup(x => x.IsActive).Returns(true);
            deal.Setup(x => x.IsClosed).Returns(false);
            deal.Setup(x => x.Quotas).Returns(new List <DealQuota> {
                quota
            });
            deal.Setup(x => x.Contract).Returns(contract.Object);
            deal.Setup(x => x.Id).Returns(2);
            accountOrganization.Setup(x => x.Storages).Returns(new List <Storage> {
                storage
            });
            contract.Setup(x => x.AccountOrganization).Returns(accountOrganization.Object);

            waybill    = new ExpenditureWaybill("123", currentDate, storage, deal.Object, team.Object, quota, false, user.Object, DeliveryAddressType.CustomAddress, "qwerty", creationDate, createdBy.Object);
            waybillRow = new ExpenditureWaybillRow(receiptWaybillRow, 10, valueAddedTax);
            waybill.AddRow(waybillRow);
        }
Exemplo n.º 2
0
        public void Init()
        {
            // инициализация IoC
            IoCInitializer.Init();

            setting = new Setting()
            {
                UseReadyToAcceptStateForExpenditureWaybill = false
            };
            settingRepository = Mock.Get(IoCContainer.Resolve <ISettingRepository>());
            settingRepository.Setup(x => x.Get()).Returns(setting);

            storage = new Storage("qwe", StorageType.ExtraStorage)
            {
                Id = 42
            };
            accOrgSender = new Mock <AccountOrganization>();
            accOrgSender.Setup(x => x.Id).Returns(1);
            accOrgRecipient = new Mock <AccountOrganization>();
            accOrgRecipient.Setup(x => x.Id).Returns(2);

            valueAddedTax = new ValueAddedTax();
            user          = new Mock <User>();
            user.Setup(x => x.GetPermissionDistributionType(It.IsAny <Permission>())).Returns(PermissionDistributionType.All);
            createdBy = new Mock <User>();
            createdBy.Setup(x => x.GetPermissionDistributionType(It.IsAny <Permission>())).Returns(PermissionDistributionType.All);
            acceptedBy = new Mock <User>();
            acceptedBy.Setup(x => x.GetPermissionDistributionType(It.IsAny <Permission>())).Returns(PermissionDistributionType.All);

            var articleGroup = new ArticleGroup("Тестовая группа", "Тестовая группа");
            var measureUnit  = new MeasureUnit("шт.", "Штука", "123", 0)
            {
                Id = 1
            };

            articleA = new Article("Тестовый товар A", articleGroup, measureUnit, true)
            {
                Id = 1
            };

            receiptWaybillRow = new Mock <ReceiptWaybillRow>();
            receiptWaybillRow.Setup(x => x.Article).Returns(articleA);

            articleAccountingPrice = new List <ArticleAccountingPrice>()
            {
                new ArticleAccountingPrice(articleA, 100)
            };

            expenditureWaybillRepository = Mock.Get(IoCContainer.Resolve <IExpenditureWaybillRepository>());
            articleRepository            = Mock.Get(IoCContainer.Resolve <IArticleRepository>());
            articlePriceService          = Mock.Get(IoCContainer.Resolve <IArticlePriceService>());
            articlePriceService.Setup(x => x.GetArticleAccountingPrices(It.Is <short>(y => y == storage.Id), It.IsAny <IEnumerable <int> >())).Returns(articleAccountingPrice);
            articlePriceService.Setup(x => x.GetArticleAccountingPrices(It.Is <short>(y => y == storage.Id), It.IsAny <ISubQuery>(), It.IsAny <DateTime>())).Returns(articleAccountingPrice);

            articleAvailabilityService = Mock.Get(IoCContainer.Resolve <IArticleAvailabilityService>());

            articleMovementService = Mock.Get(IoCContainer.Resolve <IArticleMovementService>());

            receiptWaybillService = Mock.Get(IoCContainer.Resolve <IReceiptWaybillService>());

            articleRevaluationService = Mock.Get(IoCContainer.Resolve <IArticleRevaluationService>());

            factualFinancialArticleMovementService = new Mock <IFactualFinancialArticleMovementService>();

            articleMovementOperationCountService = new Mock <IArticleMovementOperationCountService>();

            teamRepository = Mock.Get(IoCContainer.Resolve <ITeamRepository>());

            dealRepository = Mock.Get(IoCContainer.Resolve <IDealRepository>());

            expenditureWaybillIndicatorService = Mock.Get(IoCContainer.Resolve <IExpenditureWaybillIndicatorService>());

            dealPaymentDocumentDistributionService = Mock.Get(IoCContainer.Resolve <IDealPaymentDocumentDistributionService>());

            blockingService = Mock.Get(IoCContainer.Resolve <IBlockingService>());

            articleSaleService                = Mock.Get(IoCContainer.Resolve <IArticleSaleService>());
            teamService                       = Mock.Get(IoCContainer.Resolve <ITeamService>());
            dealService                       = Mock.Get(IoCContainer.Resolve <IDealService>());
            dealIndicatorService              = Mock.Get(IoCContainer.Resolve <IDealIndicatorService>());
            clientContractIndicatorService    = Mock.Get(IoCContainer.Resolve <IClientContractIndicatorService>());
            returnFromClientWaybillRepository = new Mock <IReturnFromClientWaybillRepository>();

            expenditureWaybillService = new ExpenditureWaybillService(settingRepository.Object, expenditureWaybillRepository.Object, teamRepository.Object,
                                                                      Mock.Get(IoCContainer.Resolve <IStorageRepository>()).Object, Mock.Get(IoCContainer.Resolve <IUserRepository>()).Object,
                                                                      dealRepository.Object, articlePriceService.Object, expenditureWaybillIndicatorService.Object, articleMovementService.Object,
                                                                      dealPaymentDocumentDistributionService.Object, blockingService.Object, articleSaleService.Object,
                                                                      factualFinancialArticleMovementService.Object, articleMovementOperationCountService.Object, teamService.Object, dealService.Object,
                                                                      dealIndicatorService.Object, clientContractIndicatorService.Object, articleAvailabilityService.Object,
                                                                      receiptWaybillService.Object, articleRevaluationService.Object, returnFromClientWaybillRepository.Object);

            deal                = new Mock <Deal>();
            quota               = new DealQuota("asd", 10, 45, 15000);
            team                = new Mock <Team>();
            contract            = new Mock <ClientContract>();
            accountOrganization = new Mock <AccountOrganization>();
            deal.Setup(x => x.IsActive).Returns(true);
            deal.Setup(x => x.IsClosed).Returns(false);
            deal.Setup(x => x.Quotas).Returns(new List <DealQuota> {
                quota
            });
            deal.Setup(x => x.Contract).Returns(contract.Object);
            accountOrganization.Setup(x => x.Storages).Returns(new List <Storage> {
                storage
            });
            contract.Setup(x => x.AccountOrganization).Returns(accountOrganization.Object);

            waybill = new ExpenditureWaybill("123", DateTime.Now, storage, deal.Object, team.Object, quota, false, user.Object, DeliveryAddressType.CustomAddress, "qwe", DateTime.Now, createdBy.Object);

            var row = new ExpenditureWaybillRow(receiptWaybillRow.Object, 10, valueAddedTax);

            waybill.AddRow(row);

            articleMovementService.Setup(x => x.CancelArticleAcceptance(It.IsAny <ExpenditureWaybill>()))
            .Returns(new List <OutgoingWaybillRowSourceReservationInfo>()
            {
                new OutgoingWaybillRowSourceReservationInfo(row.Id, 1, 1)
            });
            articleMovementService.Setup(x => x.AcceptArticles(It.IsAny <ExpenditureWaybill>()))
            .Returns(new List <OutgoingWaybillRowSourceReservationInfo>()
            {
                new OutgoingWaybillRowSourceReservationInfo(row.Id, 1, 1)
            });
        }