2009-06-12 Bill Holmes <billholmes54@gmail.com>
[mono.git] / mcs / class / System.Data.Linq / src / DbLinq / Test / Providers / Linq_101_Samples / Null.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Linq;\r
4 using System.Text;\r
5 using NUnit.Framework;\r
6 using Test_NUnit;\r
7 \r
8 using nwind;\r
9 \r
10 // test ns Linq_101_Samples\r
11 #if MYSQL\r
12     namespace Test_NUnit_MySql.Linq_101_Samples\r
13 #elif ORACLE && ODP\r
14     namespace Test_NUnit_OracleODP.Linq_101_Samples\r
15 #elif ORACLE\r
16     namespace Test_NUnit_Oracle.Linq_101_Samples\r
17 #elif POSTGRES\r
18     namespace Test_NUnit_PostgreSql.Linq_101_Samples\r
19 #elif SQLITE\r
20     namespace Test_NUnit_Sqlite.Linq_101_Samples\r
21 #elif INGRES\r
22     namespace Test_NUnit_Ingres.Linq_101_Samples\r
23 #elif MSSQL && MONO_STRICT\r
24     namespace Test_NUnit_MsSql_Strict.Linq_101_Samples\r
25 #elif MSSQL\r
26     namespace Test_NUnit_MsSql.Linq_101_Samples\r
27 #elif FIREBIRD\r
28     namespace Test_NUnit_Firebird.Linq_101_Samples\r
29 #endif\r
30 {\r
31     /// <summary>\r
32     /// Source:  http://msdn2.microsoft.com/en-us/vbasic/bb737930.aspx\r
33     /// manually translated from VB into C#.\r
34     /// </summary>\r
35     [TestFixture]\r
36     public class NullTest : TestBase\r
37     {\r
38         [Test]\r
39         public void Null()\r
40         {\r
41             Northwind db = CreateDB();\r
42 \r
43             var q = from e in db.Employees \r
44                     where e.ReportsTo==null select e;\r
45 \r
46             List<Employee> list = q.ToList();\r
47             Assert.IsTrue(list.Count > 0);\r
48         }\r
49 \r
50         [Test]\r
51         public void NullableT_HasValue()\r
52         {\r
53             Northwind db = CreateDB();\r
54 \r
55             var q = from e in db.Employees \r
56                     where !e.ReportsTo.HasValue select e;\r
57 \r
58             List<Employee> list = q.ToList();\r
59             Assert.IsTrue(list.Count > 0);\r
60         }\r
61 \r
62         [Test]\r
63         public void NullableT_Value()\r
64         {\r
65             Northwind db = CreateDB();\r
66 \r
67             var q = from e in db.Employees \r
68                     where e.ReportsTo.HasValue \r
69                     select new { e.FirstName, e.LastName, ReportsTo = e.ReportsTo.Value };\r
70 \r
71             var list = q.ToList();\r
72             Assert.IsTrue(list.Count > 0);\r
73         }\r
74 \r
75         [Test]\r
76         public void Null_EX1()\r
77         {\r
78             Northwind db = CreateDB();\r
79 \r
80             var q = from e in db.Employees\r
81                     where null == e.ReportsTo\r
82                     select e;\r
83 \r
84             List<Employee> list = q.ToList();\r
85             Assert.IsTrue(list.Count > 0);\r
86         }\r
87 \r
88         [Test]\r
89         public void Null_EX2()\r
90         {\r
91             Northwind db = CreateDB();\r
92 \r
93             var q = from e in db.Employees\r
94                     where null != e.ReportsTo\r
95                     select e;\r
96 \r
97             List<Employee> list = q.ToList();\r
98             Assert.IsTrue(list.Count > 0);\r
99         }\r
100 \r
101     }\r
102 }\r