1
// -----------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation. All rights reserved.
3 // -----------------------------------------------------------------------
5 using System
.ComponentModel
.Composition
;
6 using Microsoft
.VisualStudio
.TestTools
.UnitTesting
;
7 using System
.UnitTesting
;
9 namespace System
.ComponentModel
.Composition
12 public class ExportMetadataAttributeTests
15 public void Constructor_NullAsNameArgument_ShouldSetNamePropertyToEmptyString()
17 var attribute
= new ExportMetadataAttribute((string)null, "Value");
19 Assert
.AreEqual(string.Empty
, attribute
.Name
);
23 public void Constructor_ShouldSetIsMultiplePropertyToFalse()
25 var attribute
= new ExportMetadataAttribute("Name", "Value");
27 Assert
.IsFalse(attribute
.IsMultiple
);
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
);
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
);
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
);