2009-06-12 Bill Holmes <billholmes54@gmail.com>
[mono.git] / mcs / class / System.Data.Linq / src / DbLinq / Test / Providers / Linq_101_Samples / Inheritance.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Linq;\r
4 using System.Text;\r
5 using Test_NUnit;\r
6 using NUnit.Framework;\r
7 using Test_NUnit.Linq_101_Samples;\r
8 \r
9 using nwind;\r
10 \r
11 // test ns Linq_101_Samples\r
12 #if MYSQL\r
13     namespace Test_NUnit_MySql.Linq_101_Samples\r
14 #elif ORACLE && ODP\r
15     namespace Test_NUnit_OracleODP.Linq_101_Samples\r
16 #elif ORACLE\r
17     namespace Test_NUnit_Oracle.Linq_101_Samples\r
18 #elif POSTGRES\r
19     namespace Test_NUnit_PostgreSql.Linq_101_Samples\r
20 #elif SQLITE\r
21     namespace Test_NUnit_Sqlite.Linq_101_Samples\r
22 #elif INGRES\r
23     namespace Test_NUnit_Ingres.Linq_101_Samples\r
24 #elif MSSQL && MONO_STRICT\r
25     namespace Test_NUnit_MsSql_Strict.Linq_101_Samples\r
26 #elif MSSQL\r
27     namespace Test_NUnit_MsSql.Linq_101_Samples\r
28 #elif FIREBIRD\r
29     namespace Test_NUnit_Firebird.Linq_101_Samples\r
30 #endif\r
31 {\r
32     [TestFixture]\r
33     public class Inheritance : TestBase\r
34     {\r
35         [Linq101SamplesModified("Original code did a reference to a newdb nortwhind that didn't exist, currently here uses db instead. Besides Contact type didn't exist")]\r
36         [Test(Description = "Simple. This sample returns all contacts where the city is London.")]\r
37         public void LinqToSqlInheritance01()\r
38         {\r
39             Northwind db = CreateDB();\r
40 \r
41             Assert.Ignore();\r
42 \r
43             //var cons = from c in db.Contacts\r
44             //           select c;\r
45 \r
46             //var list = cons.ToList();\r
47             //Assert.IsTrue(list.Count > 0);\r
48         }\r
49 \r
50         [Linq101SamplesModified("Original code did a reference to a newdb nortwhind that didn't exist, currently here uses db instead. Besides Contact type didn't exist")]\r
51         [Test(Description = "OfType. This sample uses OfType to return all customer contacts.")]\r
52         public void LinqToSqlInheritance02()\r
53         {\r
54             Northwind db = CreateDB();\r
55 \r
56             Assert.Ignore();\r
57 \r
58             //var cons = from c in newDB.Contacts.OfType<CustomerContact>()\r
59             //           select c;\r
60 \r
61             //var list = cons.ToList();\r
62             //Assert.IsTrue(list.Count > 0);\r
63 \r
64         }\r
65 \r
66         [Linq101SamplesModified("This test could not be implemented since FullContact is not defined.")]\r
67         [Test(Description = "CType. This sample uses CType to return FullContact or null.")]\r
68         public void LinqToSqlInheritance04()\r
69         {\r
70             Northwind db = CreateDB();\r
71 \r
72             Assert.Ignore();\r
73 \r
74             //var cons = from c in newDB.Contacts\r
75             //           select (FullContact)c;\r
76 \r
77             //var list = cons.ToList();\r
78             //Assert.IsTrue(list.Count > 0);\r
79         }\r
80 \r
81         [Linq101SamplesModified("This test could not be implemented since CustomerContact is not defined.")]\r
82         [Test(Description = "Cast. This sample uses a cast to retrieve customer contacts who live in London.")]\r
83         public void LinqToSqlInheritance05()\r
84         {\r
85             Northwind db = CreateDB();\r
86 \r
87             Assert.Ignore();\r
88 \r
89             //var cons = from c in newDB.Contacts\r
90             //           where c.ContactType == "Customer" && (CustomerContact)c.City == "London"\r
91             //           select c;\r
92 \r
93             //var list = cons.ToList();\r
94             //Assert.IsTrue(list.Count > 0);\r
95 \r
96 \r
97         }\r
98 \r
99         [Linq101SamplesModified("Original code did a reference to a newdb nortwhind that didn't exist, currently here uses db instead. Besides Contact type didn't exist")]\r
100         [Test(Description = "UseAsDefault. This sample demonstrates that an unknown contact type will be automatically converted to the default contact type.")]\r
101         public void LinqToSqlInheritance06()\r
102         {\r
103             Northwind db = CreateDB();\r
104 \r
105             Assert.Ignore();\r
106 \r
107             //var contact = new Contact() { ContactType = null, CompanyName = "Unknown Company", City = "London", Phone = "333-444-5555" };\r
108             //db.Contacts.Add(contact);\r
109             //db.SubmitChanges();\r
110 \r
111             //var con = (from c in db.Contacts\r
112             //           where c.ContactType == null\r
113             //           select c).First();\r
114 \r
115         \r
116         }\r
117 \r
118         [Linq101SamplesModified("Original code did a reference to a newdb nortwhind that didn't exist, currently here uses db instead. Besides Contact type didn't exist")]\r
119         [Test(Description = "Insert New Record. This sample demonstrates how to create a new shipper contact.")]\r
120         public void LinqToSqlInheritance07()\r
121         {\r
122             Northwind db = CreateDB();\r
123 \r
124             Assert.Ignore();\r
125 \r
126             //var ShipperContacts = from sc in newDB.Contacts.OfType<ShipperContact>()\r
127             //                      where sc.CompanyName = "Northwind Shipper"\r
128             //                      select sc;\r
129 \r
130 \r
131             //var nsc = new ShipperContact() { CompanyName = "Northwind Shipper", Phone = "(123)-456-7890" };\r
132             //db.Contacts.Add(nsc);\r
133             //db.SubmitChanges();\r
134 \r
135 \r
136             //ShipperContacts = from sc in db.Contacts.OfType<ShipperContact>()\r
137             //                  where sc.CompanyName == "Northwind Shipper"\r
138             //                  select sc;\r
139 \r
140 \r
141             //newDB.Contacts.Remove(nsc);\r
142             //newDB.SubmitChanges();\r
143         }\r
144     }\r
145 }\r