diff options
author | Alan McGovern <alan@xamarin.com> | 2014-01-29 01:18:57 +0400 |
---|---|---|
committer | Alan McGovern <alan@xamarin.com> | 2014-01-29 01:18:57 +0400 |
commit | 216608a1833ef04c0aeee05be5732f1e1b24f4c7 (patch) | |
tree | fcbcab440f997383ae88485583fd6d6d4f6db55b /mcs/class/Microsoft.Build.Utilities | |
parent | d5611e8dc60099b979f3f371c84fc28f581302f6 (diff) |
[Microsoft.Build.Utilities] Properly escape/unescape ItemSpec
With tests.
Diffstat (limited to 'mcs/class/Microsoft.Build.Utilities')
-rw-r--r-- | mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/TaskItem.cs | 2 | ||||
-rw-r--r-- | mcs/class/Microsoft.Build.Utilities/Test/Microsoft.Build.Utilities/TaskItemTest.cs | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/TaskItem.cs b/mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/TaskItem.cs index bbda9528245..03c018a54d9 100644 --- a/mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/TaskItem.cs +++ b/mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/TaskItem.cs @@ -153,7 +153,7 @@ namespace Microsoft.Build.Utilities public string ItemSpec { get { return MSBuildUtils.Unescape (itemSpec); } - set { itemSpec = MSBuildUtils.Escape (value); } + set { itemSpec = value; } } public int MetadataCount { diff --git a/mcs/class/Microsoft.Build.Utilities/Test/Microsoft.Build.Utilities/TaskItemTest.cs b/mcs/class/Microsoft.Build.Utilities/Test/Microsoft.Build.Utilities/TaskItemTest.cs index 8f23aaba4e9..79e2eff5f67 100644 --- a/mcs/class/Microsoft.Build.Utilities/Test/Microsoft.Build.Utilities/TaskItemTest.cs +++ b/mcs/class/Microsoft.Build.Utilities/Test/Microsoft.Build.Utilities/TaskItemTest.cs @@ -285,5 +285,19 @@ namespace MonoTests.Microsoft.Build.Utilities { item = new TaskItem ("lalala"); item.SetMetadata ("Identity", "some value"); } + + [Test] + public void TestSetItemSpec () + { + var itemSpec = "foo@2x.png"; + var escapedItemSpec = global::Microsoft.Build.BuildEngine.Utilities.Escape (itemSpec); + + var item = new TaskItem ("foo"); + item.ItemSpec = itemSpec; + Assert.AreEqual (itemSpec, item.ItemSpec, "#1"); + + item.ItemSpec = escapedItemSpec; + Assert.AreEqual (itemSpec, item.ItemSpec, "#2"); + } } } |