コード例 #1
0
        public void FindOrdersByChefTest()
        {
            EFEmployeeRepository emp = new EFEmployeeRepository(context);
            EFOrderRepository    or  = new EFOrderRepository(context);

            var chef = (from o in context.Orders
                        join e in context.Employees
                        on o.Chef.EmployeeId equals e.EmployeeId
                        select e).First();
            var newEmployee = new Employee()
            {
                Address   = "Mieszkalna 123",
                BirthDate = DateTime.Parse("10/10/1950"),
                Category  = null,
                Email     = "*****@*****.**",
                Name      = "John Smith",
                Salary    = 1234500,
                Telephone = "123-125-865",
                ProductCategoryCompetency = null,
                AvailableIntervals        = null
            };

            emp.AddNewEmployee(newEmployee);

            var order  = filter.FindOrdersByChef(chef);
            var noChef = filter.FindOrdersByChef(newEmployee);

            Assert.IsTrue(order != null, "Didn't find order");
            Assert.IsTrue(noChef.Count() == 0, "Find order with is not conected to chef");
        }
 private void FillOrdersScripts(EFOrderRepository repository)
 {
     foreach (string file in _files)
     {
         RunCommand(repository, file, "Orders");
     }
 }
        private void CreateOrders(EFOrderRepository repository)
        {
            var paymentMethods = repository.PaymentMethods.ToList();

            var customerId = 1;
            var rnd        = new Random();

            for (var i = 0; i < _customers.Length - 1; i++)             // 20 customers, with 2 orders each
            {
                for (var index = 0; index < 2; index++)
                {
                    var order = MockOrderBuilder.BuildOrder()
                                .WithAddresses()
                                .WithPayments(paymentMethods)
                                .WithShipment()
                                .WithLineItemsCount(2 + rnd.Next(5))
                                .WithReturns()
                                .WithStatus("InProgress")
                                .WithCustomer(customerId.ToString(CultureInfo.InvariantCulture), _customers[i])
                                // .WithOrderFormPropertyValues()
                                .GetOrder();
                    order.StoreId = "SampleStore";
                    order.OrderForms[0].Shipments[0].ShippingAddressId = order.OrderAddresses[1].OrderAddressId;

                    repository.Add(order);
                }

                repository.UnitOfWork.Commit();

                customerId++;
            }
        }
コード例 #4
0
        public void FindOrdersByPriceTest()
        {
            EFOrderRepository or = new EFOrderRepository(context);
            var orders           = context.Orders.ToList();

            decimal maxPrce = orders.Max(o => o.TotalPrice);
            var     order   = filter.FindOrdersByPrice(maxPrce, maxPrce + 1);

            Assert.IsTrue(order.All(o => o.TotalPrice == maxPrce), "Wrong filter");
        }
コード例 #5
0
        public void FindOrdersByTime()
        {
            EFOrderRepository or = new EFOrderRepository(context);

            var orders = context.Orders.ToList();

            DateTime maxDate = orders.Max(o => o.OrderCreated);
            var      order   = filter.FindOrdersByTime(maxDate, DateTime.MaxValue);

            Assert.IsTrue(order.All(o => o.OrderCreated == maxDate), "Wrong filter");
        }
コード例 #6
0
        public void FindOrdersByStatusTest()
        {
            EFOrderRepository or = new EFOrderRepository(context);

            var orders = context.Orders.ToList();


            var order = filter.FindOrdersByStatus(OrderStatus.Pending);

            Assert.IsTrue(order.Count() == orders.Where(o => o.OrderStatus == OrderStatus.Pending).Count(), "Wrong filter");
        }
コード例 #7
0
        public void FindOrdersByDeliverymanTest()
        {
            EFEmployeeRepository emp = new EFEmployeeRepository(context);
            EFOrderRepository    or  = new EFOrderRepository(context);

            var deliveryman = (from o in context.Orders
                               join e in context.Employees
                               on o.Deliveryman.EmployeeId equals e.EmployeeId
                               select e).First();

            var order = filter.FindOrdersByDeliveryman(deliveryman);

            Assert.IsTrue(order != null, "Didn't find order");
        }
コード例 #8
0
        public void FindOrdersByCustomerTest()
        {
            EFCustomerRepository cr = new EFCustomerRepository(context);
            EFOrderRepository    or = new EFOrderRepository(context);

            Customer customer = (from o in context.Orders
                                 join c in context.Customers
                                 on o.Customer.CustomerId equals c.CustomerId
                                 select c).First();

            var order = filter.FindOrdersByCustomer(customer);

            Assert.IsTrue(order != null, "Didn't find order");
        }
コード例 #9
0
        public ViewResult Order(Cart cart, decimal sum)
        {
            IOrderRepository orderRepository = new EFOrderRepository();

            Order order = new Order
            {
                Sum    = sum,
                UserId = Convert.ToInt32(User.Identity.Name)
            };

            orderRepository.SaveOrder(order);

            cart.Clear();

            return(View(order.OrderId));
        }
コード例 #10
0
        public override void Publish(string dbconnection, string data, bool sample, bool reduced, string strategy = SqlDbConfiguration.SqlAzureExecutionStrategy)
        {
            base.Publish(dbconnection, data, sample, reduced, strategy);
            var connection = dbconnection;

            SafeWriteDebug("ConnectionString: " + connection);

            using (var db = new EFOrderRepository(connection))
            {
                if (sample)
                {
                    SafeWriteVerbose("Running sample scripts");
                    new SqlOrderSampleDatabaseInitializer().InitializeDatabase(db);
                }
                else
                {
                    SafeWriteVerbose("Running minimum scripts");
                    new SqlOrderDatabaseInitializer().InitializeDatabase(db);
                }
            }
        }
コード例 #11
0
        public void Dispose()
        {
            try
            {
                // Ensure LocalDb databases are deleted after use so that LocalDb doesn't throw if
                // the temp location in which they are stored is later cleaned.
                using (var context = new EFOrderRepository(TestDSOrderService.DatabaseName))
                {
                    context.Database.Delete();
                }

                if (_Service != null)
                {
                    _Service.Dispose();
                }
            }
            finally
            {
                AppDomain.CurrentDomain.SetData("DataDirectory", _previousDataDirectory);
            }
        }
 protected override void Seed(EFOrderRepository context)
 {
     base.Seed(context);
     CreateOrders(context);
     FillOrdersScripts(context);
 }