New tests.
[mono.git] / mcs / class / System.ComponentModel.Composition / Tests / ComponentModelUnitTest / System / ComponentModel / Composition / PartCreationPolicyAttributeTests.cs
1 // -----------------------------------------------------------------------\r
2 // Copyright (c) Microsoft Corporation.  All rights reserved.\r
3 // -----------------------------------------------------------------------\r
4 using System;\r
5 using System.ComponentModel.Composition;\r
6 using System.UnitTesting;\r
7 using Microsoft.VisualStudio.TestTools.UnitTesting;\r
8 \r
9 namespace System.ComponentModel.Composition\r
10 {\r
11     [TestClass]\r
12     public class PartCreationPolicyAttributeTests\r
13     {\r
14         [TestMethod]\r
15         public void Constructor_ShouldSetCreationPolicyToGivenValue()\r
16         {\r
17             var expectations = Expectations.GetEnumValues<CreationPolicy>();\r
18 \r
19             foreach (var e in expectations)\r
20             {\r
21                 var attribute = new PartCreationPolicyAttribute(e);\r
22 \r
23                 Assert.AreEqual(e, attribute.CreationPolicy);\r
24             }\r
25         }\r
26 \r
27         [TestMethod]\r
28         public void Constructor_OutOfRangeValueAsCreationPolicyArgument_ShouldSetCreationPolicy()\r
29         {   // Attributes should not throw exceptions\r
30 \r
31             var expectations = Expectations.GetInvalidEnumValues<CreationPolicy>();\r
32 \r
33             foreach (var e in expectations)\r
34             {\r
35                 var attribute = new PartCreationPolicyAttribute(e);\r
36 \r
37                 Assert.AreEqual(e, attribute.CreationPolicy);\r
38             }\r
39         }\r
40     }\r
41 }\r