コード例 #1
0
        public async Task CreateOrderAsync__Order_create_succeeded__Property_customer_should_return_correct_data()
        {
            // Property should return Customer who ordered tickets.
            // This method set Customer property.
            var tickets = new ShallowTicket[] { _shallowTicket };
            var order   = new OrderRequestDto {
                Id = "1", Customer = new CustomerDto(), Tickets = tickets
            };

            _customerDbServiceMock.Setup(x => x.GetByAsync(It.IsAny <Expression <Func <Customer, bool> > >())).ReturnsAsync(new Customer[] { _customer });
            _customerDbServiceMock.Setup(x => x.AddAsync(It.IsAny <Customer>())).ReturnsAsync(_customer);
            var handler = new TicketOrderHandler(_dbServiceFactoryMock.Object, _validatorMock.Object, _logger);

            await handler.CreateOrderAsync(order);

            handler.Customer.Should().BeEquivalentTo(_customer);
        }
コード例 #2
0
        public void SetUp()
        {
            _validatorMock = new Mock <IValidator <SightseeingGroup> >();
            _logger        = Mock.Of <ILogger <TicketOrderHandler> >();

            var info = new VisitInfo
            {
                Id                     = "1",
                Description            = "recent sightseeing info",
                MaxAllowedGroupSize    = 30,
                MaxChildAge            = 5,
                MaxTicketOrderInterval = 4,
                SightseeingDuration    = 2,
                OpeningHours           = new OpeningHours[] { }
            };

            _infoDbServiceMock = new Mock <IVisitInfoDbService>();
            _infoDbServiceMock.Setup(x => x.GetAllAsync()).ReturnsAsync(new VisitInfo[] { info }.AsEnumerable());

            _ticketTariff = new TicketTariff {
                Id = "1", DefaultPrice = 20, Description = "ticket tariff"
            };
            _ticketTariffDbServiceMock = new Mock <ITicketTariffDbService>();

            _discount = new Discount {
                Id = "1", Description = "discount", DiscountValueInPercentage = 20, Type = Discount.DiscountType.ForChild
            };
            _discountDbServiceMock = new Mock <IDiscountDbService>();

            _ticket = new Ticket
            {
                Id             = "1",
                OrderStamp     = "stamp",
                PurchaseDate   = DateTime.Now.AddDays(-2),
                TicketUniqueId = "uniqu_id"
            };
            _ticketDbServiceMock = new Mock <ITicketDbService>();

            _customer = new Customer
            {
                Id            = "1",
                DateOfBirth   = DateTime.Now.AddYears(-30),
                EmailAddress  = "*****@*****.**",
                HasFamilyCard = false,
                IsChild       = false,
                IsDisabled    = true,
                Tickets       = new Ticket[] { _ticket }
            };
            _customerDbServiceMock = new Mock <ICustomerDbService>();

            _groupDbServiceMock   = new Mock <ISightseeingGroupDbService>();
            _dbServiceFactoryMock = new Mock <IIndex <string, IServiceBase> >();

            _shallowTicket = new ShallowTicket {
                DiscountId = "1", TicketTariffId = "1", SightseeingDate = DateTime.Now.AddDays(3).Date.AddHours(14)
            };

            _dbServiceFactoryMock.Setup(x => x["ICustomerDbService"]).Returns(_customerDbServiceMock.Object);
            _dbServiceFactoryMock.Setup(x => x["IDiscountDbService"]).Returns(_discountDbServiceMock.Object);
            _dbServiceFactoryMock.Setup(x => x["ITicketTariffDbService"]).Returns(_ticketTariffDbServiceMock.Object);
            _dbServiceFactoryMock.Setup(x => x["IVisitInfoDbService"]).Returns(_infoDbServiceMock.Object);
            _dbServiceFactoryMock.Setup(x => x["ISightseeingGroupDbService"]).Returns(_groupDbServiceMock.Object);
            _dbServiceFactoryMock.Setup(x => x["ITicketDbService"]).Returns(_ticketDbServiceMock.Object);
        }