Fix bugs in sizing TableLayoutPanel (Xamarin bug 18638)
[mono.git] / mcs / class / System.ComponentModel.Composition / Tests / ComponentModelUnitTest / System / ComponentModel / Composition / Primitives / CompositionElementDebuggerProxyTests.cs
1 // -----------------------------------------------------------------------\r
2 // Copyright (c) Microsoft Corporation.  All rights reserved.\r
3 // -----------------------------------------------------------------------\r
4 using System;\r
5 using System.Collections.Generic;\r
6 using System.ComponentModel.Composition;\r
7 using System.ComponentModel.Composition.Factories;\r
8 using System.ComponentModel.Composition.Primitives;\r
9 using System.UnitTesting;\r
10 using Microsoft.VisualStudio.TestTools.UnitTesting;\r
11 \r
12 namespace System.ComponentModel.Composition.Hosting\r
13 {\r
14     [TestClass]\r
15     public class CompositionElementDebuggerProxyTests\r
16     {\r
17         [TestMethod]\r
18         public void Constructor_NullAsElementArgument_ShouldThrowArgumentNull()\r
19         {\r
20             ExceptionAssert.ThrowsArgument<ArgumentNullException>("element", () =>\r
21             {\r
22                 new CompositionElementDebuggerProxy((CompositionElement)null);\r
23             });\r
24         }\r
25 \r
26         [TestMethod]\r
27         public void Constructor_ValueAsElementArgument_ShouldSetDisplayNameProperty()\r
28         {\r
29             var expectations = Expectations.GetObjectsReferenceTypes();\r
30 \r
31             foreach (var e in expectations)\r
32             {\r
33                 var element = CreateCompositionElement(e);\r
34 \r
35                 var proxy = new CompositionElementDebuggerProxy(element);\r
36 \r
37                 Assert.AreSame(element.DisplayName, proxy.DisplayName);\r
38             }            \r
39         }\r
40 \r
41         [TestMethod]\r
42         public void Constructor_ValueAsElementArgument_ShouldSetOriginProperty()\r
43         {\r
44             var expectations = Expectations.GetObjectsReferenceTypes();\r
45 \r
46             foreach (var e in expectations)\r
47             {\r
48                 var element = CreateCompositionElement(e);\r
49 \r
50                 var proxy = new CompositionElementDebuggerProxy(element);\r
51 \r
52                 Assert.AreSame(element.Origin, proxy.Origin);\r
53             }\r
54         }\r
55 \r
56         [TestMethod]\r
57         public void Constructor_ValueAsElementArgument_ShouldSetUnderlyingObjectProperty()\r
58         {\r
59             var expectations = Expectations.GetObjectsReferenceTypes();\r
60 \r
61             foreach (var e in expectations)\r
62             {\r
63                 var element = CreateCompositionElement(e);\r
64 \r
65                 var proxy = new CompositionElementDebuggerProxy(element);\r
66 \r
67                 Assert.AreSame(element.UnderlyingObject, proxy.UnderlyingObject);\r
68             }\r
69         }\r
70 \r
71         private static CompositionElement CreateCompositionElement(object underlyingObject)\r
72         {\r
73             return new CompositionElement(underlyingObject);\r
74         }\r
75    }\r
76 }