Exemplo n.º 1
0
        public void ET_Repository_Memory()
        {
            var repo  = RF.Concrete <MemoryCustomerRepository>();
            var items = repo.GetAll();

            Assert.IsTrue(items.Count == 0);

            //添加
            var customer = new MemoryCustomer {
                Name = "Huqf", Age = 10
            };

            repo.Save(customer);
            Assert.IsTrue(repo.CountAll() == 1);
            Assert.IsTrue(customer.PersistenceStatus == PersistenceStatus.Unchanged);

            //更新
            items = repo.GetAll();
            (items[0] as MemoryCustomer).Age = 11;
            repo.Save(items);
            items = repo.GetAll();
            Assert.IsTrue((items[0] as MemoryCustomer).Age == 11);

            //删除
            items.Clear();
            repo.Save(items);
            Assert.IsTrue(repo.CountAll() == 0);
        }
Exemplo n.º 2
0
        public void ET_Repository_Submit_Callback()
        {
            var repo     = RF.Concrete <MemoryCustomerRepository>();
            var customer = new MemoryCustomer {
                Name = "Huqf", Version = 1
            };

            repo.Save(customer);
            Assert.IsTrue(customer.Version == 3);

            customer.Age = 12;
            repo.Save(customer);
            Assert.IsTrue(customer.Version == 5);
            Assert.IsTrue(customer.PersistenceStatus == PersistenceStatus.Unchanged, "第二个版本号的添加,使用 LoadProperty");

            var customer2 = repo.GetById(customer.Id) as MemoryCustomer;

            Assert.IsTrue(customer != customer2);
            Assert.IsTrue(customer2.Version == 4, "第二个版本号的添加,在保存之后才会发生。");

            customer.PersistenceStatus = PersistenceStatus.Deleted;
            repo.Save(customer);
            Assert.IsTrue(customer.Version == 7);
        }
Exemplo n.º 3
0
        public void ET_Repository_Submit_Callback()
        {
            var repo = RF.Concrete<MemoryCustomerRepository>();
            var customer = new MemoryCustomer { Name = "Huqf", Version = 1 };

            repo.Save(customer);
            Assert.IsTrue(customer.Version == 3);

            customer.Age = 12;
            repo.Save(customer);
            Assert.IsTrue(customer.Version == 5);
            Assert.IsTrue(customer.PersistenceStatus == PersistenceStatus.Unchanged, "第二个版本号的添加,使用 LoadProperty");

            var customer2 = repo.GetById(customer.Id) as MemoryCustomer;
            Assert.IsTrue(customer != customer2);
            Assert.IsTrue(customer2.Version == 4, "第二个版本号的添加,在保存之后才会发生。");

            customer.PersistenceStatus = PersistenceStatus.Deleted;
            repo.Save(customer);
            Assert.IsTrue(customer.Version == 7);
        }
Exemplo n.º 4
0
        public void ET_Repository_Memory()
        {
            var repo = RF.Concrete<MemoryCustomerRepository>();
            var items = repo.GetAll();
            Assert.IsTrue(items.Count == 0);

            //添加
            var customer = new MemoryCustomer { Name = "Huqf", Age = 10 };
            repo.Save(customer);
            Assert.IsTrue(repo.CountAll() == 1);
            Assert.IsTrue(customer.PersistenceStatus == PersistenceStatus.Unchanged);

            //更新
            items = repo.GetAll();
            (items[0] as MemoryCustomer).Age = 11;
            repo.Save(items);
            items = repo.GetAll();
            Assert.IsTrue((items[0] as MemoryCustomer).Age == 11);

            //删除
            items.Clear();
            repo.Save(items);
            Assert.IsTrue(repo.CountAll() == 0);
        }