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:
authorAlexander Köplinger <alex.koeplinger@outlook.com>2017-07-03 17:59:12 +0300
committerAlexander Köplinger <alex.koeplinger@outlook.com>2017-07-03 18:29:32 +0300
commit7e70a4e9236104c350e7d9ca3505225755065569 (patch)
treeac2d3c9604216d770200d4370f2613182bcd5312 /src/System.ComponentModel.TypeConverter
parente9e1fb251df4be19b142f0cef2c7dcc13b84f2f2 (diff)
parent4bf51c870ec075d89c809ea1dd7449d609187b7a (diff)
Merge remote-tracking branch 'upstream/master'
# Conflicts: # src/System.DirectoryServices.Protocols/src/System/DirectoryServices/Protocols/common/DirectoryException.cs # src/System.Drawing.Common/src/System/Drawing/Printing/Margins.cs # src/System.Drawing.Common/src/System/Drawing/SystemBrushes.cs # src/System.Drawing.Primitives/src/System/Drawing/SizeF.cs # src/System.Net.WebHeaderCollection/tests/WebHeaderCollectionTest.cs # src/System.Runtime.CompilerServices.VisualC/src/System/Runtime/CompilerServices/Attributes.cs
Diffstat (limited to 'src/System.ComponentModel.TypeConverter')
-rw-r--r--src/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs97
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/ContainerTests.cs14
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/ConverterTestBase.cs3
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs12
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/DateTimeConverterTests.cs21
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/DateTimeOffsetConverterTests.cs23
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Drawing/ColorConverterTests.cs6
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Drawing/PointConverterTests.cs2
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Drawing/RectangleConverterTests.cs4
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Drawing/SizeConverterTests.cs2
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/Drawing/StringTypeConverterTestBase.cs8
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/EnumConverterTest.cs7
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/InstanceDescriptorTests.cs16
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/MemberDescriptorTests.cs8
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/NullableConverterTests.cs2
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/System.ComponentModel.TypeConverter.Tests.csproj6
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/TimerTests.cs2
-rw-r--r--src/System.ComponentModel.TypeConverter/tests/TypeConverterTests.cs64
18 files changed, 157 insertions, 140 deletions
diff --git a/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs b/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
index 889241c02a..3cc23cf044 100644
--- a/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
+++ b/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
@@ -27,6 +27,7 @@ namespace System.ComponentModel
/// Retrieves the "default" name for our culture.
/// </summary>
private string DefaultCultureString => SR.CultureInfoConverterDefaultCultureString;
+ const string DefaultInvariantCultureString = "(Default)";
/// <summary>
/// Retrieves the Name for a input CultureInfo.
@@ -86,68 +87,58 @@ namespace System.ComponentModel
}
CultureInfo retVal = null;
- CultureInfo currentUICulture = CultureInfo.CurrentUICulture;
-
+ string defaultCultureString = DefaultCultureString;
if (culture != null && culture.Equals(CultureInfo.InvariantCulture))
{
- CultureInfo.CurrentUICulture = culture;
+ defaultCultureString = DefaultInvariantCultureString;
}
- try
+ // Look for the default culture info.
+ //
+ if (text == null || text.Length == 0 || string.Compare(text, defaultCultureString, StringComparison.Ordinal) == 0)
{
- // Look for the default culture info.
- //
- if (text == null || text.Length == 0 || string.Compare(text, DefaultCultureString, StringComparison.Ordinal) == 0)
- {
- retVal = CultureInfo.InvariantCulture;
- }
+ retVal = CultureInfo.InvariantCulture;
+ }
- // Now look in our set of installed cultures.
- //
- if (retVal == null)
+ // Now look in our set of installed cultures.
+ //
+ if (retVal == null)
+ {
+ foreach (CultureInfo info in GetStandardValues(context))
{
- foreach (CultureInfo info in GetStandardValues(context))
+ if (info != null && string.Compare(GetCultureName(info), text, StringComparison.Ordinal) == 0)
{
- if (info != null && string.Compare(GetCultureName(info), text, StringComparison.Ordinal) == 0)
- {
- retVal = info;
- break;
- }
+ retVal = info;
+ break;
}
-
}
+ }
- // Now try to create a new culture info from this value
- //
- if (retVal == null)
+ // Now try to create a new culture info from this value
+ //
+ if (retVal == null)
+ {
+ try
{
- try
- {
- retVal = new CultureInfo(text);
- }
- catch { }
+ retVal = new CultureInfo(text);
}
+ catch { }
+ }
- // Finally, try to find a partial match
- //
- if (retVal == null)
+ // Finally, try to find a partial match
+ //
+ if (retVal == null)
+ {
+ text = text.ToLower(CultureInfo.CurrentCulture);
+ foreach (CultureInfo info in _values)
{
- text = text.ToLower(CultureInfo.CurrentCulture);
- foreach (CultureInfo info in _values)
+ if (info != null && GetCultureName(info).ToLower(CultureInfo.CurrentCulture).StartsWith(text))
{
- if (info != null && GetCultureName(info).ToLower(CultureInfo.CurrentCulture).StartsWith(text))
- {
- retVal = info;
- break;
- }
+ retVal = info;
+ break;
}
-
}
- }
- finally
- {
- CultureInfo.CurrentUICulture = culture;
}
// No good. We can't support it.
@@ -179,27 +170,19 @@ namespace System.ComponentModel
if (destinationType == typeof(string))
{
string retVal;
- CultureInfo currentUICulture = CultureInfo.CurrentUICulture;
-
+ string defaultCultureString = DefaultCultureString;
if (culture != null && culture.Equals(CultureInfo.InvariantCulture))
{
- CultureInfo.CurrentUICulture = culture;
+ defaultCultureString = DefaultInvariantCultureString;
}
- try
+ if (value == null || value == CultureInfo.InvariantCulture)
{
- if (value == null || value == CultureInfo.InvariantCulture)
- {
- retVal = DefaultCultureString;
- }
- else
- {
- retVal = GetCultureName(((CultureInfo)value));
- }
+ retVal = defaultCultureString;
}
- finally
+ else
{
- CultureInfo.CurrentUICulture = culture;
+ retVal = GetCultureName(((CultureInfo)value));
}
return retVal;
diff --git a/src/System.ComponentModel.TypeConverter/tests/ContainerTests.cs b/src/System.ComponentModel.TypeConverter/tests/ContainerTests.cs
index 3dd4f3ad21..f154d8f132 100644
--- a/src/System.ComponentModel.TypeConverter/tests/ContainerTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/ContainerTests.cs
@@ -304,7 +304,7 @@ namespace System.ComponentModel.Tests
TestComponent c2 = new TestComponent();
ArgumentException ex;
- ex = Assert.Throws<ArgumentException>(() => container.Add(c2, "dup"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => container.Add(c2, "dup"));
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
if (!PlatformDetection.IsNetNative) // .Net Native toolchain optimizes away exception messages and paramnames.
@@ -317,7 +317,7 @@ namespace System.ComponentModel.Tests
// new component, different case
TestComponent c3 = new TestComponent();
- ex = Assert.Throws<ArgumentException>(() => container.Add(c3, "duP"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => container.Add(c3, "duP"));
// Duplicate component name 'duP'. Component names must be
// unique and case-insensitive
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -342,7 +342,7 @@ namespace System.ComponentModel.Tests
TestContainer container2 = new TestContainer();
TestComponent c5 = new TestComponent();
container2.Add(c5, "C5");
- ex = Assert.Throws<ArgumentException>(() => container.Add(c5, "dup"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => container.Add(c5, "dup"));
// Duplicate component name 'dup'. Component names must be
// unique and case-insensitive
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -652,7 +652,7 @@ namespace System.ComponentModel.Tests
_container.Add(compB, "B");
ArgumentException ex;
- ex = Assert.Throws<ArgumentException>(() => _container.InvokeValidateName(compB, "dup"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => _container.InvokeValidateName(compB, "dup"));
// Duplicate component name 'duP'. Component names must be
// unique and case-insensitive
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -668,7 +668,7 @@ namespace System.ComponentModel.Tests
// new component, different case
TestComponent compC = new TestComponent();
- ex = Assert.Throws<ArgumentException>(() => _container.InvokeValidateName(compC, "dup"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => _container.InvokeValidateName(compC, "dup"));
// Duplicate component name 'duP'. Component names must be
// unique and case-insensitive
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -686,7 +686,7 @@ namespace System.ComponentModel.Tests
TestContainer container2 = new TestContainer();
TestComponent compD = new TestComponent();
container2.Add(compD, "B");
- ex = Assert.Throws<ArgumentException>(() => _container.InvokeValidateName(compD, "dup"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => _container.InvokeValidateName(compD, "dup"));
// Duplicate component name 'duP'. Component names must be
// unique and case-insensitive
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -760,4 +760,4 @@ namespace System.ComponentModel.Tests
}
}
}
-} \ No newline at end of file
+}
diff --git a/src/System.ComponentModel.TypeConverter/tests/ConverterTestBase.cs b/src/System.ComponentModel.TypeConverter/tests/ConverterTestBase.cs
index ba7a4d310f..d29f064e98 100644
--- a/src/System.ComponentModel.TypeConverter/tests/ConverterTestBase.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/ConverterTestBase.cs
@@ -2,12 +2,13 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
+using System.Diagnostics;
using System.Globalization;
using Xunit;
namespace System.ComponentModel.Tests
{
- public class ConverterTestBase
+ public class ConverterTestBase : RemoteExecutorTestBase
{
public static void CanConvertTo_WithContext(object[,] data, TypeConverter converter)
{
diff --git a/src/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs
index 7543564ce9..d4426cc59c 100644
--- a/src/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/CultureInfoConverterTests.cs
@@ -65,8 +65,8 @@ namespace System.ComponentModel.Tests
catch (CultureNotFoundException)
{
// if we cannot create the cultures we should get exception from the Converter too
- Assert.Throws<ArgumentException>(() => c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture, "Dutch (Bel"));
- Assert.Throws<ArgumentException>(() => c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture, "duTcH (Bel"));
+ AssertExtensions.Throws<ArgumentException>(null, () => c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture, "Dutch (Bel"));
+ AssertExtensions.Throws<ArgumentException>(null, () => c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture, "duTcH (Bel"));
}
c = (CultureInfo)converter.ConvertFrom(null, CultureInfo.InvariantCulture, "(Default)");
@@ -93,7 +93,7 @@ namespace System.ComponentModel.Tests
catch (CultureNotFoundException)
{
// if we cannot create the cultures we should get exception from the Converter too
- ex = Assert.Throws<ArgumentException>(() => converter.ConvertFrom(null, CultureInfo.InvariantCulture, "(default)"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => converter.ConvertFrom(null, CultureInfo.InvariantCulture, "(default)"));
// The (default) culture cannot be converted to
// a CultureInfo object on this computer
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -114,7 +114,7 @@ namespace System.ComponentModel.Tests
}
catch (CultureNotFoundException)
{
- ex = Assert.Throws<ArgumentException>(() => converter.ConvertFrom(null, CultureInfo.InvariantCulture, " "));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => converter.ConvertFrom(null, CultureInfo.InvariantCulture, " "));
// The culture cannot be converted to
// a CultureInfo object on this computer
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -135,7 +135,7 @@ namespace System.ComponentModel.Tests
}
catch (CultureNotFoundException)
{
- ex = Assert.Throws<ArgumentException>(() => converter.ConvertFrom(null, CultureInfo.InvariantCulture, "\r\n"));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => converter.ConvertFrom(null, CultureInfo.InvariantCulture, "\r\n"));
// The \r\n culture cannot be converted to
// a CultureInfo object on this computer
Assert.Equal(typeof(ArgumentException), ex.GetType());
@@ -209,4 +209,4 @@ namespace System.ComponentModel.Tests
}
}
}
-} \ No newline at end of file
+}
diff --git a/src/System.ComponentModel.TypeConverter/tests/DateTimeConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/DateTimeConverterTests.cs
index 940c6b7fbc..349f945b4e 100644
--- a/src/System.ComponentModel.TypeConverter/tests/DateTimeConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/DateTimeConverterTests.cs
@@ -48,20 +48,25 @@ namespace System.ComponentModel.Tests
[Fact]
public static void ConvertTo_WithContext()
{
- DateTimeFormatInfo formatInfo = (DateTimeFormatInfo)CultureInfo.CurrentCulture.GetFormat(typeof(DateTimeFormatInfo));
- string formatWithTime = formatInfo.ShortDatePattern + " " + formatInfo.ShortTimePattern;
- string format = formatInfo.ShortDatePattern;
- DateTime testDateAndTime = new DateTime(1998, 12, 5, 22, 30, 30);
+ RemoteInvoke(() => {
+ CultureInfo.CurrentCulture = new CultureInfo("pl-PL");
+ DateTimeFormatInfo formatInfo = (DateTimeFormatInfo)CultureInfo.CurrentCulture.GetFormat(typeof(DateTimeFormatInfo));
+ string formatWithTime = formatInfo.ShortDatePattern + " " + formatInfo.ShortTimePattern;
+ string format = formatInfo.ShortDatePattern;
+ DateTime testDateAndTime = new DateTime(1998, 12, 5, 22, 30, 30);
- ConvertTo_WithContext(new object[5, 3]
- {
+ ConvertTo_WithContext(new object[5, 3]
+ {
{ DateTimeConverterTests.s_testDate, DateTimeConverterTests.s_testDate.ToString(format, CultureInfo.CurrentCulture), null },
{ testDateAndTime, testDateAndTime.ToString(formatWithTime, CultureInfo.CurrentCulture), null },
{ DateTime.MinValue, string.Empty, null },
{ DateTimeConverterTests.s_testDate, "1998-12-05", CultureInfo.InvariantCulture },
{ testDateAndTime, "12/05/1998 22:30:30", CultureInfo.InvariantCulture }
- },
- DateTimeConverterTests.s_converter);
+ },
+ DateTimeConverterTests.s_converter);
+
+ return SuccessExitCode;
+ });
}
}
}
diff --git a/src/System.ComponentModel.TypeConverter/tests/DateTimeOffsetConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/DateTimeOffsetConverterTests.cs
index 5880ca2520..2c4712185b 100644
--- a/src/System.ComponentModel.TypeConverter/tests/DateTimeOffsetConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/DateTimeOffsetConverterTests.cs
@@ -48,20 +48,27 @@ namespace System.ComponentModel.Tests
[Fact]
public static void ConvertTo_WithContext()
{
- DateTimeFormatInfo formatInfo = (DateTimeFormatInfo)CultureInfo.CurrentCulture.GetFormat(typeof(DateTimeFormatInfo));
- string formatWithTime = formatInfo.ShortDatePattern + " " + formatInfo.ShortTimePattern + " zzz";
- string format = formatInfo.ShortDatePattern + " zzz";
- DateTimeOffset testDateAndTime = new DateTimeOffset(new DateTime(1998, 12, 5, 22, 30, 30));
+ RemoteInvoke(() =>
+ {
+ CultureInfo.CurrentCulture = new CultureInfo("pl-PL");
- ConvertTo_WithContext(new object[5, 3]
- {
+ DateTimeFormatInfo formatInfo = (DateTimeFormatInfo)CultureInfo.CurrentCulture.GetFormat(typeof(DateTimeFormatInfo));
+ string formatWithTime = formatInfo.ShortDatePattern + " " + formatInfo.ShortTimePattern + " zzz";
+ string format = formatInfo.ShortDatePattern + " zzz";
+ DateTimeOffset testDateAndTime = new DateTimeOffset(new DateTime(1998, 12, 5, 22, 30, 30));
+
+ ConvertTo_WithContext(new object[5, 3]
+ {
{ DateTimeOffsetConverterTests.s_testOffset, DateTimeOffsetConverterTests.s_testOffset.ToString(format, CultureInfo.CurrentCulture), null },
{ testDateAndTime, testDateAndTime.ToString(formatWithTime, CultureInfo.CurrentCulture), null },
{ DateTimeOffset.MinValue, string.Empty, null },
{ DateTimeOffsetConverterTests.s_testOffset, DateTimeOffsetConverterTests.s_testOffset.ToString("yyyy-MM-dd zzz", CultureInfo.InvariantCulture), CultureInfo.InvariantCulture },
{ testDateAndTime, testDateAndTime.ToString(CultureInfo.InvariantCulture), CultureInfo.InvariantCulture }
- },
- DateTimeOffsetConverterTests.s_converter);
+ },
+ DateTimeOffsetConverterTests.s_converter);
+
+ return SuccessExitCode;
+ });
}
}
}
diff --git a/src/System.ComponentModel.TypeConverter/tests/Drawing/ColorConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/Drawing/ColorConverterTests.cs
index 2b86d4edab..fef8e7bddc 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Drawing/ColorConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Drawing/ColorConverterTests.cs
@@ -166,7 +166,7 @@ namespace System.ComponentModel.TypeConverterTests
public void ConvertFrom_ArgumentException(string value)
{
var conv = new ColorConverter();
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
conv.ConvertFrom(null, CultureInfo.InvariantCulture, value);
});
@@ -326,7 +326,7 @@ namespace System.ComponentModel.TypeConverterTests
public void ConvertFromInvariantString_Invalid()
{
var conv = new ColorConverter();
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
conv.ConvertFromInvariantString("1, 2, 3, 4, 5");
});
@@ -372,7 +372,7 @@ namespace System.ComponentModel.TypeConverterTests
public void ConvertFromString_Invalid()
{
var conv = new ColorConverter();
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
conv.ConvertFromString(string.Format("1{0} 2{0} 3{0} 4{0} 5", CultureInfo.CurrentCulture.TextInfo.ListSeparator));
});
diff --git a/src/System.ComponentModel.TypeConverter/tests/Drawing/PointConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/Drawing/PointConverterTests.cs
index cd231d89dc..c51d9a11ab 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Drawing/PointConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Drawing/PointConverterTests.cs
@@ -160,7 +160,7 @@ namespace System.ComponentModel.TypeConverterTests
[Fact]
public void CreateInstance_CaseSensitive()
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.CreateInstance(null, new Dictionary<string, object>
{
diff --git a/src/System.ComponentModel.TypeConverter/tests/Drawing/RectangleConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/Drawing/RectangleConverterTests.cs
index 065d442afa..3093765f38 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Drawing/RectangleConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Drawing/RectangleConverterTests.cs
@@ -158,7 +158,7 @@ namespace System.ComponentModel.TypeConverterTests
[Fact]
public void CreateInstance_CaseSensitive()
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.CreateInstance(null, new Dictionary<string, object>
{
@@ -278,4 +278,4 @@ namespace System.ComponentModel.TypeConverterTests
CultureInfo.CurrentCulture.TextInfo.ListSeparator), str);
}
}
-} \ No newline at end of file
+}
diff --git a/src/System.ComponentModel.TypeConverter/tests/Drawing/SizeConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/Drawing/SizeConverterTests.cs
index 794ba38ad1..ea0680a07f 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Drawing/SizeConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Drawing/SizeConverterTests.cs
@@ -160,7 +160,7 @@ namespace System.ComponentModel.TypeConverterTests
[Fact]
public void CreateInstance_CaseSensitive()
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.CreateInstance(null, new Dictionary<string, object>
{
diff --git a/src/System.ComponentModel.TypeConverter/tests/Drawing/StringTypeConverterTestBase.cs b/src/System.ComponentModel.TypeConverter/tests/Drawing/StringTypeConverterTestBase.cs
index 6895a2e4e3..5bb03f7bb6 100644
--- a/src/System.ComponentModel.TypeConverter/tests/Drawing/StringTypeConverterTestBase.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/Drawing/StringTypeConverterTestBase.cs
@@ -80,7 +80,7 @@ namespace System.ComponentModel.TypeConverterTests
protected void ConvertFromThrowsArgumentExceptionForString(string value)
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.ConvertFrom(null, CultureInfo.InvariantCulture, value);
});
@@ -137,7 +137,7 @@ namespace System.ComponentModel.TypeConverterTests
protected void ConvertFromInvariantStringThrowsArgumentException(string str)
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.ConvertFromInvariantString(str);
});
@@ -155,7 +155,7 @@ namespace System.ComponentModel.TypeConverterTests
protected void ConvertFromStringThrowsArgumentException(string str)
{
- Assert.Throws<ArgumentException>(() =>
+ AssertExtensions.Throws<ArgumentException>(null, () =>
{
Converter.ConvertFromString(str);
});
@@ -171,4 +171,4 @@ namespace System.ComponentModel.TypeConverterTests
Assert.IsType<FormatException>(ex.InnerException);
}
}
-} \ No newline at end of file
+}
diff --git a/src/System.ComponentModel.TypeConverter/tests/EnumConverterTest.cs b/src/System.ComponentModel.TypeConverter/tests/EnumConverterTest.cs
index 1bc9ef6616..e552235d11 100644
--- a/src/System.ComponentModel.TypeConverter/tests/EnumConverterTest.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/EnumConverterTest.cs
@@ -91,11 +91,8 @@ namespace System.ComponentModel.Tests
[Fact]
public static void ConvertTo_WithContext_Negative()
{
- Assert.Throws<ArgumentException>(
- () => EnumConverterTests.s_someEnumConverter.ConvertTo(TypeConverterTests.s_context, null, 3, typeof(string)));
-
- Assert.Throws<ArgumentException>(
- () => new EnumConverter(typeof(Enum)).ConvertTo(TypeConverterTests.s_context, null, SomeFlagsEnum.Option1, typeof(string)));
+ AssertExtensions.Throws<ArgumentException>(null, () => EnumConverterTests.s_someEnumConverter.ConvertTo(TypeConverterTests.s_context, null, 3, typeof(string)));
+ AssertExtensions.Throws<ArgumentException>(null, "enumType", () => new EnumConverter(typeof(Enum)).ConvertTo(TypeConverterTests.s_context, null, SomeFlagsEnum.Option1, typeof(string)));
}
[Fact]
diff --git a/src/System.ComponentModel.TypeConverter/tests/InstanceDescriptorTests.cs b/src/System.ComponentModel.TypeConverter/tests/InstanceDescriptorTests.cs
index 4aa9903cf7..e1ed3d6f6e 100644
--- a/src/System.ComponentModel.TypeConverter/tests/InstanceDescriptorTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/InstanceDescriptorTests.cs
@@ -50,7 +50,7 @@ namespace System.ComponentModel.Tests
[Fact]
public void Constructor0_Arguments_Mismatch()
{
- ArgumentException ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(ci, null));
+ ArgumentException ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(ci, null));
// Length mismatch
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -75,7 +75,7 @@ namespace System.ComponentModel.Tests
[Fact]
public void Constructor_MemberInfo_Null_Boolean()
{
- Assert.Throws<ArgumentException>(() => new InstanceDescriptor(ci, null, false));
+ AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(ci, null, false));
// mismatch for required parameters
}
@@ -107,7 +107,7 @@ namespace System.ComponentModel.Tests
{
FieldInfo fi = typeof(StaticField).GetField(nameof(StaticField.Field));
- ArgumentException ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(fi, new object[] { url }));
+ ArgumentException ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(fi, new object[] { url }));
// Parameter must be static
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -135,7 +135,7 @@ namespace System.ComponentModel.Tests
{
FieldInfo fi = typeof(InstanceField).GetField(nameof(InstanceField.Name));
- ArgumentException ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(fi, null));
+ ArgumentException ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(fi, null));
// Parameter must be static
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -181,7 +181,7 @@ namespace System.ComponentModel.Tests
ArgumentException ex;
- ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(pi, null));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(pi, null));
// Parameter must be static
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -191,7 +191,7 @@ namespace System.ComponentModel.Tests
Assert.Null(ex.ParamName);
}
- ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(pi, null, false));
+ ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(pi, null, false));
// Parameter must be static
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -207,7 +207,7 @@ namespace System.ComponentModel.Tests
{
PropertyInfo pi = typeof(WriteOnlyProperty).GetProperty(nameof(WriteOnlyProperty.Name));
- ArgumentException ex = Assert.Throws<ArgumentException>(() => new InstanceDescriptor(pi, null));
+ ArgumentException ex = AssertExtensions.Throws<ArgumentException>(null, () => new InstanceDescriptor(pi, null));
// Parameter must be readable
Assert.Equal(typeof(ArgumentException), ex.GetType());
Assert.Null(ex.InnerException);
@@ -248,4 +248,4 @@ namespace System.ComponentModel.Tests
public static string Property => "PropertyValue";
}
}
-} \ No newline at end of file
+}
diff --git a/src/System.ComponentModel.TypeConverter/tests/MemberDescriptorTests.cs b/src/System.ComponentModel.TypeConverter/tests/MemberDescriptorTests.cs
index 8e8e7f47ae..42c9326495 100644
--- a/src/System.ComponentModel.TypeConverter/tests/MemberDescriptorTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/MemberDescriptorTests.cs
@@ -36,15 +36,15 @@ namespace System.ComponentModel.Tests
[Fact]
public void MemberDescriptorFromName()
{
- Assert.Throws<ArgumentException>(() => new MockMemberDescriptor((string)null));
- Assert.Throws<ArgumentException>(() => new MockMemberDescriptor(""));
+ AssertExtensions.Throws<ArgumentException>(null, () => new MockMemberDescriptor((string)null));
+ AssertExtensions.Throws<ArgumentException>(null, () => new MockMemberDescriptor(""));
}
[Fact]
public void MemberDescriptorFromNameAndAttributes()
{
- Assert.Throws<ArgumentException>(() => new MockMemberDescriptor((string)null, new Attribute[0]));
- Assert.Throws<ArgumentException>(() => new MockMemberDescriptor("", new Attribute[0]));
+ AssertExtensions.Throws<ArgumentException>(null, () => new MockMemberDescriptor((string)null, new Attribute[0]));
+ AssertExtensions.Throws<ArgumentException>(null, () => new MockMemberDescriptor("", new Attribute[0]));
var name = nameof(MemberDescriptorFromNameAndAttributes);
var attributes = new Attribute[] { new MockAttribute1(), new MockAttribute2() };
diff --git a/src/System.ComponentModel.TypeConverter/tests/NullableConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/NullableConverterTests.cs
index 9035ca227a..1fa2989be8 100644
--- a/src/System.ComponentModel.TypeConverter/tests/NullableConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/NullableConverterTests.cs
@@ -17,7 +17,7 @@ namespace System.ComponentModel.Tests
[Fact]
public static void Constructor_Negative()
{
- Assert.Throws<ArgumentException>(() => new NullableConverter(typeof(string)));
+ AssertExtensions.Throws<ArgumentException>("type", () => new NullableConverter(typeof(string)));
}
[Fact]
diff --git a/src/System.ComponentModel.TypeConverter/tests/System.ComponentModel.TypeConverter.Tests.csproj b/src/System.ComponentModel.TypeConverter/tests/System.ComponentModel.TypeConverter.Tests.csproj
index 0af21b39a6..b5ac1d292a 100644
--- a/src/System.ComponentModel.TypeConverter/tests/System.ComponentModel.TypeConverter.Tests.csproj
+++ b/src/System.ComponentModel.TypeConverter/tests/System.ComponentModel.TypeConverter.Tests.csproj
@@ -85,5 +85,11 @@
<Compile Include="InstanceDescriptorTests.cs" />
<Compile Include="Security\Authentication\ExtendedProtection\ExtendedProtectionPolicyTypeConverterTests.cs" />
</ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="$(CommonTestPath)\System\Diagnostics\RemoteExecutorConsoleApp\RemoteExecutorConsoleApp.csproj">
+ <Project>{69e46a6f-9966-45a5-8945-2559fe337827}</Project>
+ <Name>RemoteExecutorConsoleApp</Name>
+ </ProjectReference>
+ </ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
</Project> \ No newline at end of file
diff --git a/src/System.ComponentModel.TypeConverter/tests/TimerTests.cs b/src/System.ComponentModel.TypeConverter/tests/TimerTests.cs
index 07dfb9a7d2..886d0fd170 100644
--- a/src/System.ComponentModel.TypeConverter/tests/TimerTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/TimerTests.cs
@@ -20,7 +20,7 @@ namespace System.Timers.Tests
[InlineData(double.MaxValue)]
public void NegativeTests(double interval)
{
- Assert.Throws<ArgumentException>(null, () => new TestTimer(interval));
+ AssertExtensions.Throws<ArgumentException>(null, () => new TestTimer(interval));
}
[Fact]
diff --git a/src/System.ComponentModel.TypeConverter/tests/TypeConverterTests.cs b/src/System.ComponentModel.TypeConverter/tests/TypeConverterTests.cs
index 1f5133fdca..51041e28e9 100644
--- a/src/System.ComponentModel.TypeConverter/tests/TypeConverterTests.cs
+++ b/src/System.ComponentModel.TypeConverter/tests/TypeConverterTests.cs
@@ -2,12 +2,13 @@
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
+using System.Diagnostics;
using System.Globalization;
using Xunit;
namespace System.ComponentModel.Tests
{
- public class TypeConverterTests : TypeConverter
+ public class TypeConverterTests : RemoteExecutorTestBase
{
public static TypeConverter s_converter = new TypeConverter();
public static ITypeDescriptorContext s_context = new MyTypeDescriptorContext();
@@ -82,28 +83,34 @@ namespace System.ComponentModel.Tests
[Fact]
public static void ConvertTo_WithContext()
{
- Assert.Throws<ArgumentNullException>(
+ RemoteInvoke(() =>
+ {
+ CultureInfo.CurrentCulture = new CultureInfo("pl-PL");
+
+ Assert.Throws<ArgumentNullException>(
() => TypeConverterTests.s_converter.ConvertTo(TypeConverterTests.s_context, null, TypeConverterTests.c_conversionInputValue, null));
- Assert.Throws<NotSupportedException>(
- () => TypeConverterTests.s_converter.ConvertTo(TypeConverterTests.s_context, null, TypeConverterTests.c_conversionInputValue, typeof(int)));
+ Assert.Throws<NotSupportedException>(
+ () => TypeConverterTests.s_converter.ConvertTo(TypeConverterTests.s_context, null, TypeConverterTests.c_conversionInputValue, typeof(int)));
- object o = TypeConverterTests.s_converter.ConvertTo(
- TypeConverterTests.s_context, null, TypeConverterTests.c_conversionInputValue, typeof(string));
- TypeConverterTests.VerifyConversionToString(o);
+ object o = TypeConverterTests.s_converter.ConvertTo(
+ TypeConverterTests.s_context, null, TypeConverterTests.c_conversionInputValue, typeof(string));
+ TypeConverterTests.VerifyConversionToString(o);
- o = TypeConverterTests.s_converter.ConvertTo(
- TypeConverterTests.s_context, CultureInfo.CurrentCulture, TypeConverterTests.c_conversionInputValue, typeof(string));
- TypeConverterTests.VerifyConversionToString(o);
+ o = TypeConverterTests.s_converter.ConvertTo(
+ TypeConverterTests.s_context, CultureInfo.CurrentCulture, TypeConverterTests.c_conversionInputValue, typeof(string));
+ TypeConverterTests.VerifyConversionToString(o);
- o = TypeConverterTests.s_converter.ConvertTo(
- TypeConverterTests.s_context, CultureInfo.InvariantCulture, TypeConverterTests.c_conversionInputValue, typeof(string));
- TypeConverterTests.VerifyConversionToString(o);
+ o = TypeConverterTests.s_converter.ConvertTo(
+ TypeConverterTests.s_context, CultureInfo.InvariantCulture, TypeConverterTests.c_conversionInputValue, typeof(string));
+ TypeConverterTests.VerifyConversionToString(o);
- string s = TypeConverterTests.s_converter.ConvertTo(
- TypeConverterTests.s_context, CultureInfo.InvariantCulture, new FormattableClass(), typeof(string)) as string;
- Assert.NotNull(s);
- Assert.Equal(FormattableClass.Token, s);
+ string s = TypeConverterTests.s_converter.ConvertTo(
+ TypeConverterTests.s_context, CultureInfo.InvariantCulture, new FormattableClass(), typeof(string)) as string;
+ Assert.NotNull(s);
+ Assert.Equal(FormattableClass.Token, s);
+ return SuccessExitCode;
+ });
}
[Fact]
@@ -138,12 +145,8 @@ namespace System.ComponentModel.Tests
private void RunProtectedMethods()
{
- Assert.Throws<NotSupportedException>(() => GetConvertFromException(null));
- Assert.Throws<NotSupportedException>(() => GetConvertFromException("1"));
- Assert.Throws<NotSupportedException>(() => GetConvertFromException(new BaseClass()));
- Assert.Throws<NotSupportedException>(() => GetConvertToException(null, typeof(int)));
- Assert.Throws<NotSupportedException>(() => GetConvertToException("1", typeof(int)));
- Assert.Throws<NotSupportedException>(() => GetConvertToException(new BaseClass(), typeof(BaseClass)));
+ var tc = new TypeConverterHelper();
+ tc.RunProtectedMethods();
}
private static void VerifyConversionToString(object o)
@@ -151,5 +154,20 @@ namespace System.ComponentModel.Tests
Assert.True(o is string);
Assert.Equal(TypeConverterTests.c_conversionResult, (string)o);
}
+
+ private class TypeConverterHelper : TypeConverter
+ {
+ public void RunProtectedMethods()
+ {
+ var tc = new TypeConverter();
+
+ Assert.Throws<NotSupportedException>(() => GetConvertFromException(null));
+ Assert.Throws<NotSupportedException>(() => GetConvertFromException("1"));
+ Assert.Throws<NotSupportedException>(() => GetConvertFromException(new BaseClass()));
+ Assert.Throws<NotSupportedException>(() => GetConvertToException(null, typeof(int)));
+ Assert.Throws<NotSupportedException>(() => GetConvertToException("1", typeof(int)));
+ Assert.Throws<NotSupportedException>(() => GetConvertToException(new BaseClass(), typeof(BaseClass)));
+ }
+ }
}
}