Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSantiago Fernandez Madero <safern@microsoft.com>2017-07-20 19:52:50 +0300
committerGitHub <noreply@github.com>2017-07-20 19:52:50 +0300
commitb65507e2e548503766ef891a5744df014ee8f103 (patch)
tree121c7217be3b42dc06c983017a33587a68095fa5 /src/System.ComponentModel.TypeConverter
parentba799ddf373ddc25872994e38654c0bea4d9a8f2 (diff)
Update buildtools and UAP runners version to merge resources into pri file for UAP tests (#22418)
* Update buildtools and UAP runners version to merge resources into pri file for UAP tests * Fix CI and Add new separator to ComponentResourceManager * Fix Typo in comment * Fix NETFX Ci failures
Diffstat (limited to 'src/System.ComponentModel.TypeConverter')
-rw-r--r--src/System.ComponentModel.TypeConverter/src/System/ComponentModel/ComponentResourceManager.cs6
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/ComponentResourceManagerTests.cs44
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.Designer.cs52
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.resx26
4 files changed, 105 insertions, 23 deletions
diff --git a/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/ComponentResourceManager.cs b/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/ComponentResourceManager.cs
index 265da59ef2..a0a03edcc9 100644
--- a/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/ComponentResourceManager.cs
+++ b/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/ComponentResourceManager.cs
@@ -63,7 +63,7 @@ namespace System.ComponentModel
/// <summary>
/// This method examines all the resources for the provided culture.
/// When it finds a resource with a key in the format of
- /// &quot[objectName].[property name]&quot; it will apply that resource's value
+ /// &quot;[objectName].[property name]&quot; or &quot;[objectName]-[property name]&quot; it will apply that resource's value
/// to the corresponding property on the object. If there is no matching
/// property the resource will be ignored.
/// </summary>
@@ -149,10 +149,10 @@ namespace System.ComponentModel
}
}
- // Character after objectName.Length should be a ".", or else we should continue.
+ // Character after objectName.Length should be a "." or a '-', or else we should continue.
//
int idx = objectName.Length;
- if (key.Length <= idx || key[idx] != '.')
+ if (key.Length <= idx || (key[idx] != '.' && key[idx] != '-'))
{
continue;
}
diff --git a/src/System.ComponentModel.TypeConverter/tests/ComponentResourceManagerTests.cs b/src/System.ComponentModel.TypeConverter/tests/ComponentResourceManagerTests.cs
index d4534f2f99..1e0aef618f 100644
--- a/src/System.ComponentModel.TypeConverter/tests/ComponentResourceManagerTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/ComponentResourceManagerTests.cs
@@ -42,9 +42,17 @@ namespace System.ComponentModel.Tests
var value = new TestValue();
resourceManager.ApplyResources(value, "Object");
- Assert.Equal("One", value.GetSetProperty);
+ Assert.Equal("ObjectGetSetProperty", value.GetSetProperty);
Assert.Null(value.GetOnlyProperty);
Assert.Null(value.GetPrivateProperty());
+
+ if (!PlatformDetection.IsFullFramework) // https://github.com/dotnet/corefx/issues/22444 needs to be ported to netfx
+ {
+ resourceManager.ApplyResources(value, "Default");
+ Assert.Equal("DefaultGetSetProperty", value.GetSetProperty);
+ Assert.Null(value.GetOnlyProperty);
+ Assert.Null(value.GetPrivateProperty());
+ }
}
private class TestValue
@@ -92,7 +100,15 @@ namespace System.ComponentModel.Tests
resourceManager.ApplyResources(value, "Object");
Assert.Null(value.GetSetProperty);
- Assert.Equal("One", value.getsetproperty);
+ Assert.Equal("ObjectGetSetProperty", value.getsetproperty);
+
+ if (!PlatformDetection.IsFullFramework) // https://github.com/dotnet/corefx/issues/22444 needs to be ported to netfx
+ {
+ resourceManager.ApplyResources(value, "Default");
+
+ Assert.Null(value.GetSetProperty);
+ Assert.Equal("DefaultGetSetProperty", value.getsetproperty);
+ }
}
public class MulticaseBaseClass
@@ -117,7 +133,13 @@ namespace System.ComponentModel.Tests
var value = new TestComponent();
resourceManager.ApplyResources(value, "Object");
- Assert.Equal("One", value.GetSetProperty);
+ Assert.Equal("ObjectGetSetProperty", value.GetSetProperty);
+
+ if (!PlatformDetection.IsFullFramework) // https://github.com/dotnet/corefx/issues/22444 needs to be ported to netfx
+ {
+ resourceManager.ApplyResources(value, "Default");
+ Assert.Equal("DefaultGetSetProperty", value.GetSetProperty);
+ }
}
[Fact]
@@ -130,7 +152,13 @@ namespace System.ComponentModel.Tests
var value = new TestComponent { Site = new TestSite { DesignMode = false } };
resourceManager.ApplyResources(value, "Object");
- Assert.Equal("One", value.GetSetProperty);
+ Assert.Equal("ObjectGetSetProperty", value.GetSetProperty);
+
+ if (!PlatformDetection.IsFullFramework) // https://github.com/dotnet/corefx/issues/22444 needs to be ported to netfx
+ {
+ resourceManager.ApplyResources(value, "Default");
+ Assert.Equal("DefaultGetSetProperty", value.GetSetProperty);
+ }
}
[Fact]
@@ -144,7 +172,13 @@ namespace System.ComponentModel.Tests
var value = new TestComponent { Site = new TestSite { DesignMode = true } };
resourceManager.ApplyResources(value, "Object");
- Assert.Equal("One", value.GetSetProperty);
+ Assert.Equal("ObjectGetSetProperty", value.GetSetProperty);
+
+ if (!PlatformDetection.IsFullFramework) // https://github.com/dotnet/corefx/issues/22444 needs to be ported to netfx
+ {
+ resourceManager.ApplyResources(value, "Default");
+ Assert.Equal("DefaultGetSetProperty", value.GetSetProperty);
+ }
}
private class TestSite : ISite
diff --git a/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.Designer.cs b/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.Designer.cs
index b92d389fb5..49fff5dbce 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.Designer.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.Designer.cs
@@ -66,21 +66,57 @@ namespace Resources {
/// </summary>
internal static string _ {
get {
- return ResourceManager.GetString("", resourceCulture);
+ return ResourceManager.GetString("_", resourceCulture);
}
}
/// <summary>
- /// Looks up a localized string similar to Value-One.
+ /// Looks up a localized string similar to Default.
/// </summary>
- internal static string Object {
+ internal static string Default {
get {
- return ResourceManager.GetString("Object", resourceCulture);
+ return ResourceManager.GetString("Default", resourceCulture);
}
}
/// <summary>
- /// Looks up a localized string similar to Third.
+ /// Looks up a localized string similar to DefaultGetOnlyProperty.
+ /// </summary>
+ internal static string Default_GetOnlyProperty {
+ get {
+ return ResourceManager.GetString("Default-GetOnlyProperty", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to DefaultGetSetProperty.
+ /// </summary>
+ internal static string Default_GetSetProperty {
+ get {
+ return ResourceManager.GetString("Default-GetSetProperty", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to DefaultNoSuchProperty.
+ /// </summary>
+ internal static string Default_NoSuchProperty {
+ get {
+ return ResourceManager.GetString("Default-NoSuchProperty", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to DefaultPrivateProperty.
+ /// </summary>
+ internal static string Default_PrivateProperty {
+ get {
+ return ResourceManager.GetString("Default-PrivateProperty", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to ObjectGetOnlyProperty.
/// </summary>
internal static string Object_GetOnlyProperty {
get {
@@ -89,7 +125,7 @@ namespace Resources {
}
/// <summary>
- /// Looks up a localized string similar to One.
+ /// Looks up a localized string similar to ObjectGetSetProperty.
/// </summary>
internal static string Object_GetSetProperty {
get {
@@ -98,7 +134,7 @@ namespace Resources {
}
/// <summary>
- /// Looks up a localized string similar to Second.
+ /// Looks up a localized string similar to ObjectNoSuchProperty.
/// </summary>
internal static string Object_NoSuchProperty {
get {
@@ -107,7 +143,7 @@ namespace Resources {
}
/// <summary>
- /// Looks up a localized string similar to Third.
+ /// Looks up a localized string similar to ObjectPrivateProperty.
/// </summary>
internal static string Object_PrivateProperty {
get {
diff --git a/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.resx b/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.resx
index cc748dee7e..a088c94d90 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.resx
+++ b/src/System.ComponentModel.TypeConverter/tests/Resources/TestResx.resx
@@ -58,22 +58,34 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
- <data name="" xml:space="preserve">
+ <data name="_" xml:space="preserve">
<value>No Name</value>
</data>
- <data name="Object" xml:space="preserve">
- <value>Value-One</value>
+ <data name="Default" xml:space="preserve">
+ <value>Default</value>
+ </data>
+ <data name="Default-GetSetProperty" xml:space="preserve">
+ <value>DefaultGetSetProperty</value>
+ </data>
+ <data name="Default-NoSuchProperty" xml:space="preserve">
+ <value>DefaultNoSuchProperty</value>
+ </data>
+ <data name="Default-GetOnlyProperty" xml:space="preserve">
+ <value>DefaultGetOnlyProperty</value>
+ </data>
+ <data name="Default-PrivateProperty" xml:space="preserve">
+ <value>DefaultPrivateProperty</value>
</data>
<data name="Object.GetSetProperty" xml:space="preserve">
- <value>One</value>
+ <value>ObjectGetSetProperty</value>
</data>
<data name="Object.NoSuchProperty" xml:space="preserve">
- <value>Second</value>
+ <value>ObjectNoSuchProperty</value>
</data>
<data name="Object.GetOnlyProperty" xml:space="preserve">
- <value>Third</value>
+ <value>ObjectGetOnlyProperty</value>
</data>
<data name="Object.PrivateProperty" xml:space="preserve">
- <value>Third</value>
+ <value>ObjectPrivateProperty</value>
</data>
</root> \ No newline at end of file