Bug 15572. Lookup KnownTypeCollection element types in MSSimpleNamespace
[mono.git] / mcs / class / corlib / Test / System.Diagnostics / DebuggerDisplayAttributeTest.cs
1 //
2 // MonoTests.System.Diagnostics.DebuggerDisplayAttributeTest.cs
3 //
4 // Author:
5 //      Rolf Bjarne Kvinge  (RKvinge@novell.com)
6 //
7 // (C) 2007
8 //
9
10 #if NET_2_0
11
12 using System;
13 using System.Diagnostics;
14 using NUnit.Framework;
15
16 namespace MonoTests.System.Diagnostics
17 {
18         /// <summary>
19         /// Tests the case where StackFrame is created for specified file name and
20         /// location inside it.
21         /// </summary>
22         [TestFixture]
23         public class DebuggerDisplayAttributeTest
24         {
25                 [Test]
26                 public void ConstructorTest ()
27                 {
28                         DebuggerDisplayAttribute dda;
29
30                         dda = new DebuggerDisplayAttribute (null);
31                         Assert.AreEqual (string.Empty, dda.Value, "A1");
32                         Assert.IsNull (dda.Target, "A2");
33                         Assert.IsNull (dda.TargetTypeName, "A3");
34                         Assert.AreEqual (string.Empty, dda.Type, "A4");
35                         Assert.AreEqual (string.Empty, dda.Name, "A4");
36
37                         dda = new DebuggerDisplayAttribute ("abc");
38                         Assert.AreEqual ("abc", dda.Value, "B1");
39                         Assert.IsNull (dda.Target, "B2");
40                         Assert.IsNull (dda.TargetTypeName, "B3");
41                         Assert.AreEqual (string.Empty, dda.Type, "B4");
42                         Assert.AreEqual (string.Empty, dda.Name, "B4");
43                 }
44                 
45                 [Test]
46                 public void TargetTest ()
47                 {
48                         DebuggerDisplayAttribute dda;
49
50                         dda = new DebuggerDisplayAttribute (null);
51                         Assert.AreEqual (string.Empty, dda.Value, "A1");
52                         Assert.IsNull (dda.Target, "A2");
53                         Assert.IsNull (dda.TargetTypeName, "A3");
54                         Assert.AreEqual (string.Empty, dda.Type, "A4");
55                         Assert.AreEqual (string.Empty, dda.Name, "A4");
56
57                         dda.Target = typeof(string);
58                         Assert.AreEqual (string.Empty, dda.Value, "B1");
59                         Assert.IsNotNull (dda.Target, "B2");
60                         Assert.AreSame (typeof(string), dda.Target, "B2-b");
61                         Assert.AreEqual (typeof (string).AssemblyQualifiedName, dda.TargetTypeName, "B3");
62                         Assert.AreEqual (string.Empty, dda.Type, "B4");
63                         Assert.AreEqual (string.Empty, dda.Name, "B4");
64
65                         try {
66                                 dda.Target = null;
67                                 Assert.Fail ("Excepted ArgumentNullException, got no exception.");
68                         } catch (ArgumentNullException) {
69                         }
70                 }
71
72                 [Test]
73                 public void TargetTypeNameTest ()
74                 {
75                         DebuggerDisplayAttribute dda;
76
77                         dda = new DebuggerDisplayAttribute (null);
78                         Assert.AreEqual (string.Empty, dda.Value, "A1");
79                         Assert.IsNull (dda.Target, "A2");
80                         Assert.IsNull (dda.TargetTypeName, "A3");
81                         Assert.AreEqual (string.Empty, dda.Type, "A4");
82                         Assert.AreEqual (string.Empty, dda.Name, "A4");
83
84                         dda.TargetTypeName = "System.String";
85                         Assert.AreEqual (string.Empty, dda.Value, "B1");
86                         Assert.IsNull (dda.Target, "B2");
87                         Assert.AreEqual ("System.String", dda.TargetTypeName, "B3");
88                         Assert.AreEqual (string.Empty, dda.Type, "B4");
89                         Assert.AreEqual (string.Empty, dda.Name, "B4");
90
91                         dda.TargetTypeName = null;
92                         Assert.AreEqual (string.Empty, dda.Value, "C1");
93                         Assert.IsNull (dda.Target, "C2");
94                         Assert.IsNull (dda.TargetTypeName, "C3");
95                         Assert.AreEqual (string.Empty, dda.Type, "C4");
96                         Assert.AreEqual (string.Empty, dda.Name, "C4");
97
98                         dda.TargetTypeName = string.Empty;
99                         Assert.AreEqual (string.Empty, dda.Value, "D1");
100                         Assert.IsNull (dda.Target, "D2");
101                         Assert.AreEqual (string.Empty, dda.TargetTypeName, "D3");
102                         Assert.AreEqual (string.Empty, dda.Type, "D4");
103                         Assert.AreEqual (string.Empty, dda.Name, "D4");
104                 }
105
106                 [Test]
107                 public void TypeTest ()
108                 {
109                         DebuggerDisplayAttribute dda;
110
111                         dda = new DebuggerDisplayAttribute (null);
112                         Assert.AreEqual (string.Empty, dda.Value, "A1");
113                         Assert.IsNull (dda.Target, "A2");
114                         Assert.IsNull (dda.TargetTypeName, "A3");
115                         Assert.AreEqual (string.Empty, dda.Type, "A4");
116                         Assert.AreEqual (string.Empty, dda.Name, "A4");
117
118                         dda.Type = "System.String";
119                         Assert.AreEqual (string.Empty, dda.Value, "B1");
120                         Assert.IsNull (dda.Target, "B2");
121                         Assert.IsNull (dda.TargetTypeName, "B3");
122                         Assert.AreEqual ("System.String", dda.Type, "B4");
123                         Assert.AreEqual (string.Empty, dda.Name, "B4");
124
125                         dda.Type = null;
126                         Assert.AreEqual (string.Empty, dda.Value, "C1");
127                         Assert.IsNull (dda.Target, "C2");
128                         Assert.IsNull (dda.TargetTypeName, "C3");
129                         Assert.IsNull (dda.Type, "C4");
130                         Assert.AreEqual (string.Empty, dda.Name, "C4");
131
132                         dda.Type = string.Empty;
133                         Assert.AreEqual (string.Empty, dda.Value, "D1");
134                         Assert.IsNull (dda.Target, "D2");
135                         Assert.IsNull (dda.TargetTypeName, "D3");
136                         Assert.AreEqual (string.Empty, dda.Type, "D4");
137                         Assert.AreEqual (string.Empty, dda.Name, "D4");
138                 }
139
140                 [Test]
141                 public void NameTest ()
142                 {
143                         DebuggerDisplayAttribute dda;
144
145                         dda = new DebuggerDisplayAttribute (null);
146                         Assert.AreEqual (string.Empty, dda.Value, "A1");
147                         Assert.IsNull (dda.Target, "A2");
148                         Assert.IsNull (dda.TargetTypeName, "A3");
149                         Assert.AreEqual (string.Empty, dda.Type, "A4");
150                         Assert.AreEqual (string.Empty, dda.Name, "A4");
151
152                         dda.Name = "who?";
153                         Assert.AreEqual (string.Empty, dda.Value, "B1");
154                         Assert.IsNull (dda.Target, "B2");
155                         Assert.IsNull (dda.TargetTypeName, "B3");
156                         Assert.AreEqual (string.Empty, dda.Type, "B4");
157                         Assert.AreEqual ("who?", dda.Name, "B4");
158
159                         dda.Name = null;
160                         Assert.AreEqual (string.Empty, dda.Value, "C1");
161                         Assert.IsNull (dda.Target, "C2");
162                         Assert.IsNull (dda.TargetTypeName, "C3");
163                         Assert.AreEqual (string.Empty, dda.Type, "C4");
164                         Assert.IsNull (dda.Name, "C4");
165
166                         dda.Name = string.Empty;
167                         Assert.AreEqual (string.Empty, dda.Value, "D1");
168                         Assert.IsNull (dda.Target, "D2");
169                         Assert.IsNull (dda.TargetTypeName, "D3");
170                         Assert.AreEqual (string.Empty, dda.Type, "D4");
171                         Assert.AreEqual (string.Empty, dda.Name, "D4");
172                 }
173         }
174 }
175
176 #endif