CultureInfoConverter added (dotnet/corefx#24855)
authorAnirudh Agnihotry <anirudhagnihotry098@gmail.com>
Thu, 26 Oct 2017 22:06:44 +0000 (15:06 -0700)
committerGitHub <noreply@github.com>
Thu, 26 Oct 2017 22:06:44 +0000 (15:06 -0700)
* Culture Converter added

* space formatting

* Expected and actual argument reordered

* Removed to string

* Reference Converter and its test added

* fixing reference Converter

* Skipping test on framework

* CultureInfo added with others

* Removed Reference Connverter

Commit migrated from https://github.com/dotnet/corefx/commit/c6115c50849d1524a26b2aa4c44e905a31570870

src/libraries/System.ComponentModel.TypeConverter/src/System.ComponentModel.TypeConverter.csproj
src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.cs
src/libraries/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs
src/libraries/System.ComponentModel.TypeConverter/tests/ReferenceConverterTests.cs
src/libraries/System.ComponentModel.TypeConverter/tests/TypeDescriptorTests.cs

index bef1910..d97e549 100644 (file)
     <Reference Include="System.Diagnostics.Tools" />
     <Reference Include="System.Diagnostics.TraceSource" />
     <Reference Include="System.Drawing.Primitives" />
+    <Reference Include="System.Globalization" />
     <Reference Include="System.IO.FileSystem" />
     <Reference Include="System.Linq" />
     <Reference Include="System.Net.Primitives" />
index 285f68d..ee0f28f 100644 (file)
@@ -6,9 +6,10 @@ using System.Collections;
 using System.Collections.Generic;
 using System.ComponentModel.Design;
 using System.Diagnostics;
+using System.Drawing;
+using System.Globalization;
 using System.Linq;
 using System.Reflection;
-using System.Drawing;
 using System.Threading;
 
 namespace System.ComponentModel
@@ -118,6 +119,7 @@ namespace System.ComponentModel
             [typeof(UInt64)] = typeof(UInt64Converter),
             [typeof(object)] = typeof(TypeConverter),
             [typeof(void)] = typeof(TypeConverter),
+            [typeof(CultureInfo)] = typeof(CultureInfoConverter),
             [typeof(DateTime)] = typeof(DateTimeConverter),
             [typeof(DateTimeOffset)] = typeof(DateTimeOffsetConverter),
             [typeof(Decimal)] = typeof(DecimalConverter),
@@ -135,7 +137,7 @@ namespace System.ComponentModel
             [typeof(ICollection)] = typeof(CollectionConverter),
             [typeof(Enum)] = typeof(EnumConverter),
             [s_intrinsicNullableKey] = typeof(NullableConverter),
-        });    
+        });
 
         private static Hashtable PropertyCache => LazyInitializer.EnsureInitialized(ref s_propertyCache, () => new Hashtable());
 
index d4426cc..5581e52 100644 (file)
@@ -56,8 +56,8 @@ namespace System.ComponentModel.Tests
             c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture,
                 "nl-BE");
             Assert.Equal(new CultureInfo("nl-BE"), c);
-            
-            try 
+
+            try
             {
                 // Linux can create such cultures
                 var cul = new CultureInfo("Dutch (Bel");
@@ -85,7 +85,7 @@ namespace System.ComponentModel.Tests
         {
             ArgumentException ex;
 
-            try 
+            try
             {
                 // Linux can create such cultures
                 var cul = new CultureInfo("(default)");
@@ -107,7 +107,7 @@ namespace System.ComponentModel.Tests
                 }
             }
 
-            try 
+            try
             {
                 // Linux can create such cultures
                 var cul = new CultureInfo(" ");
@@ -128,7 +128,7 @@ namespace System.ComponentModel.Tests
                 }
             }
 
-            try 
+            try
             {
                 // Linux can create such cultures
                 var cul = new CultureInfo("\r\n");
index 7424664..9c78e5e 100644 (file)
@@ -3,6 +3,7 @@
 // See the LICENSE file in the project root for more information.
 
 using System.Collections;
+using System.Globalization;
 using Xunit;
 
 namespace System.ComponentModel.Tests
@@ -255,7 +256,8 @@ namespace System.ComponentModel.Tests
             new Tuple<Type, Type> (typeof(IDerived), typeof(IBaseConverter)),
             new Tuple<Type, Type> (typeof(ClassIBase), typeof(IBaseConverter)),
             new Tuple<Type, Type> (typeof(ClassIDerived), typeof(IBaseConverter)),
-            new Tuple<Type, Type> (typeof(Uri), typeof(UriTypeConverter))
+            new Tuple<Type, Type> (typeof(Uri), typeof(UriTypeConverter)),
+            new Tuple<Type, Type> (typeof(CultureInfo), typeof(CultureInfoConverter))
         };
     }
 }