Beispiel #1
0
        public void Repository_For_Uses_Registered_Fetching_Strategies()
        {
            IEnumerable <Order> orders;

            using (var testData = new NHTestDataGenerator(Factory.OpenSession()))
                using (new UnitOfWorkScope())
                {
                    testData.Batch(actions =>
                                   actions.CreateOrderForProducts(actions.CreateProducts(5)));

                    var strategies = new IFetchingStrategy <Order, NHRepositoryTests>[]
                    {
                        new OrderOrderItemsStrategy(),
                        new OrderItemsProductStrategy()
                    };

                    ServiceLocator.Current.Expect(x => x.GetAllInstances <IFetchingStrategy <Order, NHRepositoryTests> >())
                    .Return(strategies);

                    orders = new NHRepository <Order>()
                             .For <NHRepositoryTests>()
                             .ToList();
                }
            orders.ForEach(order =>
            {
                Assert.That(NHibernateUtil.IsInitialized(order.Items), Is.True);
                order.Items.ForEach(item =>
                                    Assert.That(NHibernateUtil.IsInitialized(item.Product), Is.True));
            });
        }
Beispiel #2
0
        public void Repository_For_Uses_Registered_Fetching_Strategies()
        {
            IEnumerable <Order> orders;

            using (var testData = new LinqToSqlDataGenerator(new TestDataDataContext()))
                using (new UnitOfWorkScope())
                {
                    testData.Batch(actions =>
                                   actions.CreateOrderForProducts(actions.CreateProducts(5)));

                    var strategies = new IFetchingStrategy <Order, LinqToSqlRepositoryTests>[]
                    {
                        new OrderOrderItemsStrategy(),
                        new OrderItemsProductStrategy()
                    };

                    IRepository <Order> ordersRepository = null;
                    ServiceLocator.Current.Expect(
                        x => x.GetAllInstances <IFetchingStrategy <Order, LinqToSqlRepositoryTests> >())
                    .Return(strategies);

                    ordersRepository = new LinqToSqlRepository <Order>().For <LinqToSqlRepositoryTests>();
                    orders           = (from o in ordersRepository select o).ToList();
                }
            orders.ForEach(x => Assert.That(x.CalculateTotal(), Is.GreaterThan(0)));
        }
        public void Repository_For_Uses_Registered_Fetching_Strategies()
        {
            IEnumerable<Order> orders;
            using (var testData = new LinqToSqlDataGenerator(new TestDataDataContext()))
            using (new UnitOfWorkScope())
            {
                testData.Batch(actions =>
                               actions.CreateOrderForProducts(actions.CreateProducts(5)));

                var strategies = new IFetchingStrategy<Order, LinqToSqlRepositoryTests>[]
                {
                    new OrderOrderItemsStrategy(),
                    new OrderItemsProductStrategy()
                };

                IRepository<Order> ordersRepository = null;
                ServiceLocator.Current.Expect(
                    x => x.GetAllInstances<IFetchingStrategy<Order, LinqToSqlRepositoryTests>>())
                    .Return(strategies);

                ordersRepository = new LinqToSqlRepository<Order>().For<LinqToSqlRepositoryTests>();
                orders = (from o in ordersRepository select o).ToList();
            }
            orders.ForEach(x => Assert.That(x.CalculateTotal(), Is.GreaterThan(0)));
        }
Beispiel #4
0
        public void Repository_For_Uses_Registered_Fetching_Strategies()
        {
            IEnumerable<Order> orders;
            using (var testData = new NHTestDataGenerator(Factory.OpenSession()))
            using (new UnitOfWorkScope())
            {
                testData.Batch(actions =>
                               actions.CreateOrderForProducts(actions.CreateProducts(5)));

                var strategies = new IFetchingStrategy<Order, NHRepositoryTests>[]
                {
                    new OrderOrderItemsStrategy(),
                    new OrderItemsProductStrategy()
                };

                ServiceLocator.Current.Expect(x => x.GetAllInstances<IFetchingStrategy<Order, NHRepositoryTests>>())
                    .Return(strategies);

                orders = new NHRepository<Order>()
                    .For<NHRepositoryTests>()
                    .ToList();
            }
            orders.ForEach(order =>
            {
                Assert.That(NHibernateUtil.IsInitialized(order.Items), Is.True);
                order.Items.ForEach(item =>
                                    Assert.That(NHibernateUtil.IsInitialized(item.Product), Is.True));
            });
        }
 public TAggregateRole Load <TAggregateRole, TAggregate>(Guid id, IFetchingStrategy <TAggregate, TAggregateRole> fetchingStrategy = null) where TAggregateRole : class where TAggregate : Aggregate, TAggregateRole
 {
     return(null);
 }