public void Can_insert_update_and_delete_when_tpt_inheritance()
            {
                ExtendedSqlAzureExecutionStrategy.ExecuteNew(
                    () =>
                {
                    using (new TransactionScope())
                    {
                        using (var context = CreateContext())
                        {
                            var customer = new SpecialCustomer();

                            Assert.Equal(0, context.Set <SpecialCustomer>().Count());

                            // Insert
                            context.Set <SpecialCustomer>().Add(customer);
                            context.SaveChanges();

                            Assert.Equal(1, context.Set <SpecialCustomer>().Count());

                            // Update
                            customer.Points = 1;
                            context.SaveChanges();

                            Assert.Equal(1, context.Set <SpecialCustomer>().Select(c => c.Points).First());

                            // Delete
                            context.Set <SpecialCustomer>().Remove(customer);
                            context.SaveChanges();

                            Assert.Equal(0, context.Set <SpecialCustomer>().Count());
                        }
                    }
                });
            }
Ejemplo n.º 2
0
        public void CanCreateTransactionForAccount()
        {
            Account         a = new Account();
            SpecialCustomer c = new SpecialCustomer("john", "doe");

            Transaction tx = a.CreateTransaction();

            tx.Customer = c;

            //we can only be accurate up to the millisecond on the date here, but we can create a timespan of 2 hours just

            //to be sure.

            Assert.IsTrue(tx.TransactionDate.CompareTo(DateTime.Now.AddHours(-1)) > 0 &&

                          tx.TransactionDate.CompareTo(DateTime.Now.AddHours(1)) < 0, "Date wasn’t set");

            Assert.IsNotNull(tx, "Transaction wasn’t returned");

            Assert.AreEqual(a, tx.Account, "Account wasn’t set");

            Assert.IsNotNull(tx.Rentals, "Rentals collection was null");

            Assert.AreEqual(0, tx.Rentals.Count, "Rentals collection wasn’t empty");

            Assert.AreEqual(0.0, tx.SubTotal());
        }
            public void Can_insert_update_and_delete_when_tph_inheritance()
            {
                using (var context = CreateContext())
                {
                    var customer = new SpecialCustomer();

                    Assert.Equal(0, context.Set <SpecialCustomer>().Count());

                    // Insert
                    context.Set <SpecialCustomer>().Add(customer);
                    context.SaveChanges();

                    Assert.Equal(1, context.Set <SpecialCustomer>().Count());

                    // Update
                    customer.Points = 1;
                    context.SaveChanges();

                    Assert.Equal(1, context.Set <SpecialCustomer>().Select(c => c.Points).First());

                    // Delete
                    context.Set <SpecialCustomer>().Remove(customer);
                    context.SaveChanges();

                    Assert.Equal(0, context.Set <SpecialCustomer>().Count());
                }
            }
Ejemplo n.º 4
0
 public override void SetUp()
 {
     _account  = new Account();
     _customer = new SpecialCustomer("john", "doe");
     base.SetUp();
 }