update MEF to preview 9
[mcs.git] / class / System.ComponentModel.Composition / Tests / ComponentModelUnitTest / System / ComponentModel / Composition / ExportMetadataAttributeTests.cs
blob96ff3292d8f8fcc55fc226578f5cd492cfb73cc2
1 // -----------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation. All rights reserved.
3 // -----------------------------------------------------------------------
4 using System;
5 using System.ComponentModel.Composition;
6 using Microsoft.VisualStudio.TestTools.UnitTesting;
7 using System.UnitTesting;
9 namespace System.ComponentModel.Composition
11 [TestClass]
12 public class ExportMetadataAttributeTests
14 [TestMethod]
15 public void Constructor_NullAsNameArgument_ShouldSetNamePropertyToEmptyString()
17 var attribute = new ExportMetadataAttribute((string)null, "Value");
19 Assert.AreEqual(string.Empty, attribute.Name);
22 [TestMethod]
23 public void Constructor_ShouldSetIsMultiplePropertyToFalse()
25 var attribute = new ExportMetadataAttribute("Name", "Value");
27 Assert.IsFalse(attribute.IsMultiple);
30 [TestMethod]
31 public void Constructor_ValueAsNameArgument_ShouldSetNameProperty()
33 var expectations = Expectations.GetMetadataNames();
35 foreach (var e in expectations)
37 var attribute = new ExportMetadataAttribute(e, "Value");
39 Assert.AreEqual(e, attribute.Name);
43 [TestMethod]
44 public void Constructor_ValueAsValueArgument_ShouldSetValueProperty()
46 var expectations = Expectations.GetMetadataValues();
48 foreach (var e in expectations)
50 var attribute = new ExportMetadataAttribute("Name", e);
52 Assert.AreEqual(e, attribute.Value);
56 [TestMethod]
57 public void IsMultiple_ValueAsValueArgument_ShouldSetPropert()
59 var expectations = Expectations.GetBooleans();
61 var attribute = new ExportMetadataAttribute("Name", "Value");
63 foreach (var e in expectations)
65 attribute.IsMultiple = e;
66 Assert.AreEqual(e, attribute.IsMultiple);