Imported Upstream version 6.4.0.137

Former-commit-id: 943baa9f16a098c33e129777827f3a9d20da00d6
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-07-26 19:53:28 +00:00
parent e9207cf623
commit ef583813eb
2712 changed files with 74169 additions and 40587 deletions

View File

@@ -123,6 +123,7 @@ sealed class Date {
} // class Date
[TestFixture]
[Category ("Calendars")]
public class CalendarTest {
private Calendar[] acal;
private GregorianCalendar gcal;
@@ -427,7 +428,7 @@ public class CalendarTest {
new Date(28,10,2038,1),
new Date(13,10,1460,1),
new Date(12,2,5799,1),
new Date(10,11,50,4),
new Date(10,11,20,5),
new Date(10,11,127,1),
new Date(10,11,4371,1),
new Date(10,11,2581,1));
@@ -435,7 +436,7 @@ public class CalendarTest {
new Date(5,7,2094,1),
new Date(6,3,1518,1),
new Date(5,11,5854,1),
new Date(18,7,106,4),
new Date(18,7,76,5),
new Date(18,7,183,1),
new Date(18,7,4427,1),
new Date(18,7,2637,1));
@@ -494,7 +495,7 @@ public class CalendarTest {
foreach (Calendar cal in acal) {
int check = 1;
if (cal is JapaneseCalendar)
check = 4;
check = 5;
Assert.AreEqual(check, cal.Eras.Length,
String.Format("D01 {0}.Eras.Length", cal));
cal.Eras[0] = 29;
@@ -506,11 +507,12 @@ public class CalendarTest {
public void TestErasProperty2() {
Assert.AreEqual(1, clcal.Eras.Length, "cn");
Assert.AreEqual(1, tlcal.Eras.Length, "tw");
Assert.AreEqual(2, jlcal.Eras.Length, "jp");
Assert.AreEqual(3, jlcal.Eras.Length, "jp");
Assert.AreEqual(1, klcal.Eras.Length, "kr");
Assert.AreEqual(4, jlcal.Eras [0], "jp.1");
Assert.AreEqual(3, jlcal.Eras [1], "jp.2");
Assert.AreEqual(5, jlcal.Eras [0], "jp.1");
Assert.AreEqual(4, jlcal.Eras [1], "jp.2");
Assert.AreEqual(3, jlcal.Eras [2], "jp.3");
}
[Test]

View File

@@ -15,6 +15,7 @@ namespace MonoTests.System.Globalization
{
[TestFixture]
[Category ("ManagedCollator")]
public class CompareInfoTest
{
static bool doTest = Environment.GetEnvironmentVariable ("MONO_DISABLE_MANAGED_COLLATION") != "yes";

View File

@@ -92,6 +92,7 @@ namespace MonoTests.System.Globalization
}
[Test]
[Category ("Calendars")]
public void TestSpecificCultureFormats_es_ES ()
{
CultureInfo ci = new CultureInfo ("es-ES");
@@ -119,6 +120,7 @@ namespace MonoTests.System.Globalization
}
[Test]
[Category ("Calendars")]
public void MonthGenitiveNames ()
{
var dfi = new CultureInfo ("cs-CZ").DateTimeFormat;
@@ -127,6 +129,7 @@ namespace MonoTests.System.Globalization
}
[Test]
[Category ("Calendars")]
public void QuoteInValue ()
{
var culture = new CultureInfo("mt-MT");
@@ -144,6 +147,7 @@ namespace MonoTests.System.Globalization
}
[Test]
[Category ("Calendars")]
public void TestFirstYearOfJapaneseEra ()
{
DateTimeFormatInfo jpnFormat = new CultureInfo ("ja-JP").DateTimeFormat;

View File

@@ -37,6 +37,7 @@ using System.IO;
namespace MonoTests.System.Globalization
{
[TestFixture]
[Category ("Calendars")]
public class EastAsianLunisolarCalendarTest
{
static ChineseLunisolarCalendar cn = new ChineseLunisolarCalendar ();
@@ -48,30 +49,30 @@ namespace MonoTests.System.Globalization
public void ToDateTime ()
{
Assert.AreEqual (new DateTime (2000, 2, 5), cn.ToDateTime (2000, 1, 1, 0, 0, 0, 0), "cn1");
Assert.AreEqual (new DateTime (2000, 2, 5), jp.ToDateTime (12, 1, 1, 0, 0, 0, 0), "jp1"); // since 1988 (current epoch)
Assert.AreEqual (new DateTime (2000, 2, 5), jp.ToDateTime (12, 1, 1, 0, 0, 0, 0, 4), "jp1"); // since 1988 (current epoch)
Assert.AreEqual (new DateTime (2000, 2, 5), tw.ToDateTime (89, 1, 1, 0, 0, 0, 0), "tw1"); // since 1912 (current epoch)
Assert.AreEqual (new DateTime (2000, 2, 5), kr.ToDateTime (2000, 1, 1, 0, 0, 0, 0), "kr1");
Assert.AreEqual (new DateTime (2001, 1, 24), cn.ToDateTime (2001, 1, 1, 0, 0, 0, 0), "cn2");
Assert.AreEqual (new DateTime (2001, 1, 24), jp.ToDateTime (13, 1, 1, 0, 0, 0, 0), "jp2");
Assert.AreEqual (new DateTime (2001, 1, 24), jp.ToDateTime (13, 1, 1, 0, 0, 0, 0, 4), "jp2");
Assert.AreEqual (new DateTime (2001, 1, 24), tw.ToDateTime (90, 1, 1, 0, 0, 0, 0), "tw2");
Assert.AreEqual (new DateTime (2001, 1, 24), kr.ToDateTime (2001, 1, 1, 0, 0, 0, 0), "kr2");
Assert.AreEqual (new DateTime (2002, 2, 12), cn.ToDateTime (2002, 1, 1, 0, 0, 0, 0), "cn3");
Assert.AreEqual (new DateTime (2002, 2, 12), jp.ToDateTime (14, 1, 1, 0, 0, 0, 0), "jp3");
Assert.AreEqual (new DateTime (2002, 2, 12), jp.ToDateTime (14, 1, 1, 0, 0, 0, 0, 4), "jp3");
Assert.AreEqual (new DateTime (2002, 2, 12), tw.ToDateTime (91, 1, 1, 0, 0, 0, 0), "tw3");
Assert.AreEqual (new DateTime (2002, 2, 12), kr.ToDateTime (2002, 1, 1, 0, 0, 0, 0), "kr3");
// actually it is 5th month which is leap, but that
// does not afffect on resulting DateTime
Assert.AreEqual (new DateTime (2001, 5, 23), cn.ToDateTime (2001, 5, 1, 0, 0, 0, 0), "cn4");
Assert.AreEqual (new DateTime (2001, 5, 23), jp.ToDateTime (13, 5, 1, 0, 0, 0, 0), "jp4");
Assert.AreEqual (new DateTime (2001, 5, 23), jp.ToDateTime (13, 5, 1, 0, 0, 0, 0, 4), "jp4");
Assert.AreEqual (new DateTime (2001, 5, 23), tw.ToDateTime (90, 5, 1, 0, 0, 0, 0), "tw4");
Assert.AreEqual (new DateTime (2001, 5, 23), kr.ToDateTime (2001, 5, 1, 0, 0, 0, 0), "kr4");
// here the leap month works.
Assert.AreEqual (new DateTime (2002, 2, 11), cn.ToDateTime (2001, 13, 30, 0, 0, 0, 0), "cn5");
Assert.AreEqual (new DateTime (2002, 2, 11), jp.ToDateTime (13, 13, 30, 0, 0, 0, 0), "jp5");
Assert.AreEqual (new DateTime (2002, 2, 11), jp.ToDateTime (13, 13, 30, 0, 0, 0, 0, 4), "jp5");
Assert.AreEqual (new DateTime (2002, 2, 11), tw.ToDateTime (90, 13, 30, 0, 0, 0, 0), "tw5");
Assert.AreEqual (new DateTime (2002, 2, 11), kr.ToDateTime (2001, 13, 30, 0, 0, 0, 0), "kr5");
@@ -114,7 +115,7 @@ namespace MonoTests.System.Globalization
for (int i = 0; i < 60; i++)
Assert.AreEqual (leapYears [i % 19], cn.IsLeapYear (2000 + i), "cn" + i);
for (int i = 0; i < 48; i++) // only 1-to-61 are allowed
Assert.AreEqual (leapYears [i % 19], jp.IsLeapYear (12 + i), "jp" + i);
Assert.AreEqual (leapYears [i % 19], jp.IsLeapYear (12 + i, 4), "jp" + i);
for (int i = 0; i < 50; i++)
Assert.AreEqual (leapYears [i % 19], tw.IsLeapYear (89 + i), "tw" + i);
for (int i = 0; i < 50; i++)
@@ -177,7 +178,7 @@ namespace MonoTests.System.Globalization
d [29] = 6;
for (int y = 12; y < 32; y++)
for (int m = 1; m <= 12; m++)
Assert.AreEqual (d.ContainsKey (y) && d [y] == m, jp.IsLeapMonth (y, m), "jp" + y + "/" + m);
Assert.AreEqual (d.ContainsKey (y) && d [y] == m, jp.IsLeapMonth (y, m, 4), "jp" + y + "/" + m);
d = new Dictionary<int,int> ();
d [2001] = 5;

View File

@@ -95,7 +95,7 @@ namespace MonoTests.System.Globalization
public void GetAscii ()
{
IdnMapping m = new IdnMapping ();
GetAscii (m, "www.mono-project.com", "www.mono-project.com", 1);
GetAscii (m, "www.example.com", "www.example.com", 1);
GetAscii (m, "a\uFF61b", "a.b", 2);
// umm... does it reject anything larger than U+FFFF ??
@@ -168,7 +168,7 @@ namespace MonoTests.System.Globalization
public void GetUnicode ()
{
IdnMapping m = new IdnMapping ();
GetAscii (m, "www.mono-project.com", "www.mono-project.com", 1);
GetAscii (m, "www.example.com", "www.example.com", 1);
GetAscii (m, "a\uFF61b", "a.b", 2);
// umm... does it reject anything larger than U+FFFF ??