Exemple #1
0
        public void SetUp()
        {
            _db = new TestDb();
            _db.CreateTable<Product>();
            _db.CreateTable<Order>();
            _db.CreateTable<OrderLine>();

            var p1 = new Product { Name = "One", };
            var p2 = new Product { Name = "Two", };
            var p3 = new Product { Name = "Three", };
            _db.InsertAll(new[] { p1, p2, p3 });

            var o1 = new Order { PlacedTime = DateTime.Now, };
            var o2 = new Order { PlacedTime = DateTime.Now, };
            _db.InsertAll(new[] { o1, o2 });

            _db.InsertAll(new[] {
                new OrderLine {
                    OrderId = o1.Id,
                    ProductId = p1.Id,
                    Quantity = 1,
                },
                new OrderLine {
                    OrderId = o1.Id,
                    ProductId = p2.Id,
                    Quantity = 2,
                },
                new OrderLine {
                    OrderId = o2.Id,
                    ProductId = p3.Id,
                    Quantity = 3,
                },
            });
        }
		public void CreateThem ()
		{
			var db = new TestDb ();
			
			var foo = new Product { Name = "Foo", Price = 10.0m };
			var bar = new Product { Name = "Bar", Price = 0.10m };
			db.Insert (foo);
			db.Insert (bar);
			db.Insert (new OrderLine { ProductId = foo.Id, Quantity = 6, UnitPrice = 10.01m });
			db.Insert (new OrderLine { ProductId = foo.Id, Quantity = 3, UnitPrice = 0.02m });
			db.Insert (new OrderLine { ProductId = bar.Id, Quantity = 9, UnitPrice = 100.01m });
			
			var lines = foo.GetOrderLines ();
			
			Assert.AreEqual (lines.Length, 2, "Has 2 order lines");
			Assert.AreEqual (foo.Connection, db, "foo.Connection was set");
			Assert.AreEqual (lines[0].Connection, db, "lines[0].Connection was set");
		}