From: Sebastien Pouliot Date: Sun, 22 May 2005 00:34:04 +0000 (-0000) Subject: In Test/System.Web.Security: X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=36f5ada03438fb0c6bd46c47c1e2cb2e4d411a77;p=mono.git In Test/System.Web.Security: 2005-05-21 Sebastien Pouliot * FormsAuthenticationTest.cs: New. Unit tests for FormsAuthentication. In .: 2005-05-21 Sebastien Pouliot * System.Web_test.dll.sources: Added tests for FormsAuthentication. svn path=/trunk/mcs/; revision=44879 --- diff --git a/mcs/class/System.Web/ChangeLog b/mcs/class/System.Web/ChangeLog index 45ff241abd9..85cddbcc6f1 100644 --- a/mcs/class/System.Web/ChangeLog +++ b/mcs/class/System.Web/ChangeLog @@ -1,3 +1,7 @@ +2005-05-21 Sebastien Pouliot + + * System.Web_test.dll.sources: Added tests for FormsAuthentication. + 2005-05-13 Lluis Sanchez Gual * System.Web.dll.sources: Added new file: diff --git a/mcs/class/System.Web/System.Web_test.dll.sources b/mcs/class/System.Web/System.Web_test.dll.sources index 5d78bf30ceb..c297d5054b3 100644 --- a/mcs/class/System.Web/System.Web_test.dll.sources +++ b/mcs/class/System.Web/System.Web_test.dll.sources @@ -1,5 +1,6 @@ System.Web/HttpRequestTest.cs System.Web/HttpServerUtilityTest.cs System.Web/HttpUtilityTest.cs +System.Web.Security/FormsAuthenticationTest.cs System.Web.UI/TestUrlPropertyAttribute.cs System.Web.UI.WebControls/TestControlIDConverter.cs diff --git a/mcs/class/System.Web/Test/System.Web.Security/ChangeLog b/mcs/class/System.Web/Test/System.Web.Security/ChangeLog new file mode 100644 index 00000000000..8a82400d3af --- /dev/null +++ b/mcs/class/System.Web/Test/System.Web.Security/ChangeLog @@ -0,0 +1,3 @@ +2005-05-21 Sebastien Pouliot + + * FormsAuthenticationTest.cs: New. Unit tests for FormsAuthentication. diff --git a/mcs/class/System.Web/Test/System.Web.Security/FormsAuthenticationTest.cs b/mcs/class/System.Web/Test/System.Web.Security/FormsAuthenticationTest.cs new file mode 100644 index 00000000000..0b353db6c37 --- /dev/null +++ b/mcs/class/System.Web/Test/System.Web.Security/FormsAuthenticationTest.cs @@ -0,0 +1,67 @@ +// +// FormsAuthenticationTest.cs - NUnit Test Cases for FormsAuthentication +// +// Author: +// Sebastien Pouliot (sebastien@ximian.com) +// +// Copyright (C) 2005 Novell, Inc (http://www.novell.com) +// + +using System; +using System.Security.Cryptography; +using System.Text; +using System.Web.Security; + +using NUnit.Framework; + +namespace MonoTests.System.Web.Security { + + [TestFixture] + public class FormsAuthenticationTest { + + [Test] + [ExpectedException (typeof (ArgumentNullException))] + public void HashPasswordForStoringInConfigFile_NullPassword () + { + FormsAuthentication.HashPasswordForStoringInConfigFile (null, "MD5"); + } + + [Test] + [ExpectedException (typeof (ArgumentNullException))] + public void HashPasswordForStoringInConfigFile_NullPasswordFormat () + { + FormsAuthentication.HashPasswordForStoringInConfigFile ("Mono", null); + } + + [Test] + public void HashPasswordForStoringInConfigFile_MD5 () + { + // § (C2-A7) + string s = Encoding.UTF8.GetString (new byte [2] { 0xC2, 0xA7 }); + Assert.AreEqual ("BD9A4C255DEEC8944D99E01A64C1E322", FormsAuthentication.HashPasswordForStoringInConfigFile (s, "MD5")); + + // ä (C3-A4) + s = Encoding.UTF8.GetString (new byte [2] { 0xC3, 0xA4 }); + Assert.AreEqual ("8419B71C87A225A2C70B50486FBEE545", FormsAuthentication.HashPasswordForStoringInConfigFile (s, "MD5")); + } + + [Test] + public void HashPasswordForStoringInConfigFile_SHA1 () + { + // § (C2-A7) + string s = Encoding.UTF8.GetString (new byte [2] { 0xC2, 0xA7 }); + Assert.AreEqual ("EB2CB244889599F736B6CDD633C5E324F521D1BB", FormsAuthentication.HashPasswordForStoringInConfigFile (s, "SHA1")); + + // ä (C3-A4) + s = Encoding.UTF8.GetString (new byte [2] { 0xC3, 0xA4 }); + Assert.AreEqual ("961FA22F61A56E19F3F5F8867901AC8CF5E6D11F", FormsAuthentication.HashPasswordForStoringInConfigFile (s, "SHA1")); + } + + [Test] + [ExpectedException (typeof (ArgumentException))] + public void HashPasswordForStoringInConfigFile_SHA256 () + { + FormsAuthentication.HashPasswordForStoringInConfigFile ("mono", "SHA256"); + } + } +}