From ae1b208b06f4217001c278c10986bd42e2e39c10 Mon Sep 17 00:00:00 2001 From: Atsushi Eno Date: Wed, 2 Apr 2008 06:55:00 +0000 Subject: [PATCH] 2008-04-02 Atsushi Enomoto * SortKey.cs : check null arguments. Fixed bug #376171. * SortKeyTest.cs : new test, for bug #376171. * corlib_test.dll.sources : added SortKeyTest.cs. svn path=/trunk/mcs/; revision=99609 --- mcs/class/corlib/ChangeLog | 4 ++ .../Mono.Globalization.Unicode/ChangeLog | 4 ++ .../Mono.Globalization.Unicode/SortKey.cs | 5 +++ .../Test/System.Globalization/ChangeLog | 4 ++ .../Test/System.Globalization/SortKeyTest.cs | 40 +++++++++++++++++++ mcs/class/corlib/corlib_test.dll.sources | 1 + 6 files changed, 58 insertions(+) create mode 100644 mcs/class/corlib/Test/System.Globalization/SortKeyTest.cs diff --git a/mcs/class/corlib/ChangeLog b/mcs/class/corlib/ChangeLog index aef33522fc4..94b5e77dc34 100644 --- a/mcs/class/corlib/ChangeLog +++ b/mcs/class/corlib/ChangeLog @@ -1,3 +1,7 @@ +2008-04-02 Atsushi Enomoto + + * corlib_test.dll.sources : added SortKeyTest.cs. + 2008-03-21 Sebastien Pouliot * corlib_test.dll.sources: Add unit tests for EqualityComparer diff --git a/mcs/class/corlib/Mono.Globalization.Unicode/ChangeLog b/mcs/class/corlib/Mono.Globalization.Unicode/ChangeLog index 52809a14213..9ae9de9d7d5 100644 --- a/mcs/class/corlib/Mono.Globalization.Unicode/ChangeLog +++ b/mcs/class/corlib/Mono.Globalization.Unicode/ChangeLog @@ -1,3 +1,7 @@ +2008-04-02 Atsushi Enomoto + + * SortKey.cs : check null arguments. Fixed bug #376171. + 2007-07-20 Atsushi Enomoto * create-mscompat-collation-table.cs : I wonder how long its build diff --git a/mcs/class/corlib/Mono.Globalization.Unicode/SortKey.cs b/mcs/class/corlib/Mono.Globalization.Unicode/SortKey.cs index f6b86f774aa..bcccf13fe35 100644 --- a/mcs/class/corlib/Mono.Globalization.Unicode/SortKey.cs +++ b/mcs/class/corlib/Mono.Globalization.Unicode/SortKey.cs @@ -42,6 +42,11 @@ namespace System.Globalization #region Static members public static int Compare (SortKey sk1, SortKey sk2) { + if (sk1 == null) + throw new ArgumentNullException ("sk1"); + if (sk2 == null) + throw new ArgumentNullException ("sk2"); + if (Object.ReferenceEquals (sk1, sk2) || Object.ReferenceEquals (sk1.OriginalString, sk2.OriginalString)) diff --git a/mcs/class/corlib/Test/System.Globalization/ChangeLog b/mcs/class/corlib/Test/System.Globalization/ChangeLog index 61021c7a99a..70f271236a3 100644 --- a/mcs/class/corlib/Test/System.Globalization/ChangeLog +++ b/mcs/class/corlib/Test/System.Globalization/ChangeLog @@ -1,3 +1,7 @@ +2008-04-02 Atsushi Enomoto + + * SortKeyTest.cs : new test, for bug #376171. + 2007-11-03 Atsushi Enomoto * DateTimeFormatInfoTest.cs : enabled test for bug #332553. diff --git a/mcs/class/corlib/Test/System.Globalization/SortKeyTest.cs b/mcs/class/corlib/Test/System.Globalization/SortKeyTest.cs new file mode 100644 index 00000000000..9f67353d5cb --- /dev/null +++ b/mcs/class/corlib/Test/System.Globalization/SortKeyTest.cs @@ -0,0 +1,40 @@ +// +// SortKeyTest.cs +// +// Author: +// Atsushi Enomoto +// +// Copyright (C) 2007 Novell, Inc (http://www.novell.com) +// + +using NUnit.Framework; +using System; +using System.Globalization; +using System.IO; +using System.Runtime.Serialization; +using System.Runtime.Serialization.Formatters.Binary; + +namespace MonoTests.System.Globalization +{ + + [TestFixture] + public class SortKeyTest + { + [Test] + [ExpectedException (typeof (ArgumentNullException))] + public void CompareNull () + { + // bug #376171 + SortKey.Compare (null, null); + } + + [Test] + [ExpectedException (typeof (ArgumentNullException))] + public void CompareNull2 () + { + // bug #376171 + SortKey.Compare (CultureInfo.InvariantCulture.CompareInfo.GetSortKey ("A"), null); + } + } + +} diff --git a/mcs/class/corlib/corlib_test.dll.sources b/mcs/class/corlib/corlib_test.dll.sources index 9cbb7a1c4d2..79f584e973c 100644 --- a/mcs/class/corlib/corlib_test.dll.sources +++ b/mcs/class/corlib/corlib_test.dll.sources @@ -68,6 +68,7 @@ System.Globalization/DaylightTimeTest.cs System.Globalization/EastAsianLunisolarCalendarTest.cs System.Globalization/IdnMappingTest.cs System.Globalization/RegionInfoTest.cs +System.Globalization/SortKeyTest.cs System.Globalization/StringInfoTest.cs System.Globalization/TextInfoTest.cs System/GuidTest.cs -- 2.25.1