//
// Author:
// Chris Toshok <toshok@novell.com>
+// Gonzalo Paniagua Javier (gonzalo@novell.com)
//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2005,2006 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
using System;
using System.Web;
+using VPU = System.Web.VirtualPathUtility;
using NUnit.Framework;
[Test]
public void AppendTrailingSlash ()
{
- Assert.AreEqual ("/hithere/", VirtualPathUtility.AppendTrailingSlash ("/hithere"), "A1");
- Assert.AreEqual ("/hithere/", VirtualPathUtility.AppendTrailingSlash ("/hithere/"), "A2");
- Assert.AreEqual ("/", VirtualPathUtility.AppendTrailingSlash ("/"), "A3");
- Assert.AreEqual ("", VirtualPathUtility.AppendTrailingSlash (""), "A4");
- Assert.AreEqual (null, VirtualPathUtility.AppendTrailingSlash (null), "A5");
+ Assert.AreEqual ("/hithere/", VPU.AppendTrailingSlash ("/hithere"), "A1");
+ Assert.AreEqual ("/hithere/", VPU.AppendTrailingSlash ("/hithere/"), "A2");
+ Assert.AreEqual ("/", VPU.AppendTrailingSlash ("/"), "A3");
+ Assert.AreEqual ("", VPU.AppendTrailingSlash (""), "A4");
+ Assert.AreEqual (null, VPU.AppendTrailingSlash (null), "A5");
}
[Test]
public void Combine ()
{
- Assert.AreEqual ("/there", VirtualPathUtility.Combine ("/hi", "there"), "A1");
- Assert.AreEqual ("/hi/you", VirtualPathUtility.Combine ("/hi/there", "you"), "A2");
- Assert.AreEqual ("/hi/there/you", VirtualPathUtility.Combine ("/hi/there/", "you"), "A3");
+ Assert.AreEqual ("/there", VPU.Combine ("/hi", "there"), "A1");
+ Assert.AreEqual ("/hi/you", VPU.Combine ("/hi/there", "you"), "A2");
+ Assert.AreEqual ("/hi/there/you", VPU.Combine ("/hi/there/", "you"), "A3");
}
[Test]
[ExpectedException (typeof (ArgumentException))]
public void Combine_ArgException1 ()
{
- Assert.AreEqual ("hi/there/you", VirtualPathUtility.Combine ("hi/there", "you"), "A1");
+ Assert.AreEqual ("hi/there/you", VPU.Combine ("hi/there", "you"), "A1");
}
[Test]
- [ExpectedException (typeof (ArgumentException))]
+ [ExpectedException (typeof (ArgumentNullException))]
public void Combine_ArgException2 ()
{
- Assert.AreEqual ("hi/there", VirtualPathUtility.Combine ("hi/there", null), "A1");
+ Assert.AreEqual ("hi/there", VPU.Combine ("hi/there", null), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void Combine_ArgException3 ()
{
- Assert.AreEqual ("hi/there", VirtualPathUtility.Combine (null, "there"), "A1");
+ Assert.AreEqual ("hi/there", VPU.Combine (null, "there"), "A1");
}
[Test]
*/
public void Combine_ArgException4 ()
{
- Assert.AreEqual ("/you", VirtualPathUtility.Combine ("", "you"), "A1");
+ Assert.AreEqual ("/you", VPU.Combine ("", "you"), "A1");
}
[Test]
*/
public void Combine_ArgException5 ()
{
- Assert.AreEqual ("/hi", VirtualPathUtility.Combine ("/hi", ""), "A1");
+ Assert.AreEqual ("/hi", VPU.Combine ("/hi", ""), "A1");
}
[Test]
public void GetDirectory ()
{
- Assert.AreEqual ("/hi/", VirtualPathUtility.GetDirectory ("/hi/there"), "A1");
- Assert.AreEqual ("/hi/", VirtualPathUtility.GetDirectory ("/hi/there/"), "A2");
- Assert.AreEqual (null, VirtualPathUtility.GetDirectory ("/"), "A3");
+ Assert.AreEqual ("/hi/", VPU.GetDirectory ("/hi/there"), "A1");
+ Assert.AreEqual ("/hi/", VPU.GetDirectory ("/hi/there/"), "A2");
+ Assert.AreEqual (null, VPU.GetDirectory ("/"), "A3");
}
[Test]
*/
public void GetDirectory_ArgException1 ()
{
- Assert.AreEqual ("", VirtualPathUtility.GetDirectory (""), "A1");
+ Assert.AreEqual ("", VPU.GetDirectory (""), "A1");
}
[Test]
public void GetExtension ()
{
- Assert.AreEqual (".aspx", VirtualPathUtility.GetExtension ("/hi/index.aspx"), "A1");
- Assert.AreEqual (".aspx", VirtualPathUtility.GetExtension ("index.aspx"), "A2");
- Assert.AreEqual ("", VirtualPathUtility.GetExtension ("/hi/index"), "A3");
+ Assert.AreEqual (".aspx", VPU.GetExtension ("/hi/index.aspx"), "A1");
+ Assert.AreEqual (".aspx", VPU.GetExtension ("index.aspx"), "A2");
+ Assert.AreEqual ("", VPU.GetExtension ("/hi/index"), "A3");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void GetExtension_ArgException1 ()
{
- Assert.AreEqual (null, VirtualPathUtility.GetExtension (null), "A1");
+ Assert.AreEqual (null, VPU.GetExtension (null), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void GetExtension_ArgException2 ()
{
- Assert.AreEqual ("", VirtualPathUtility.GetExtension (""), "A1");
+ Assert.AreEqual ("", VPU.GetExtension (""), "A1");
}
[Test]
public void GetFileName ()
{
- Assert.AreEqual ("index.aspx", VirtualPathUtility.GetFileName ("/hi/index.aspx"), "A1");
- Assert.AreEqual ("hi", VirtualPathUtility.GetFileName ("/hi/"), "A2");
+ Assert.AreEqual ("index.aspx", VPU.GetFileName ("/hi/index.aspx"), "A1");
+ Assert.AreEqual ("hi", VPU.GetFileName ("/hi/"), "A2");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void GetFileName_ArgException1 ()
{
- Assert.AreEqual (null, VirtualPathUtility.GetFileName (null), "A1");
+ Assert.AreEqual (null, VPU.GetFileName (null), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void GetFileName_ArgException2 ()
{
- Assert.AreEqual ("", VirtualPathUtility.GetFileName (""), "A1");
+ Assert.AreEqual ("", VPU.GetFileName (""), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentException))]
public void GetFileName_ArgException3 ()
{
- Assert.AreEqual ("index.aspx", VirtualPathUtility.GetFileName ("index.aspx"), "A1");
+ Assert.AreEqual ("index.aspx", VPU.GetFileName ("index.aspx"), "A1");
}
[Test]
public void IsAbsolute ()
{
- Assert.IsTrue (VirtualPathUtility.IsAbsolute ("/"), "A1");
- Assert.IsTrue (VirtualPathUtility.IsAbsolute ("/hi/there"), "A2");
- Assert.IsFalse (VirtualPathUtility.IsAbsolute ("hi/there"), "A3");
- Assert.IsFalse (VirtualPathUtility.IsAbsolute ("./hi"), "A4");
+ Assert.IsTrue (VPU.IsAbsolute ("/"), "A1");
+ Assert.IsTrue (VPU.IsAbsolute ("/hi/there"), "A2");
+ Assert.IsFalse (VPU.IsAbsolute ("hi/there"), "A3");
+ Assert.IsFalse (VPU.IsAbsolute ("./hi"), "A4");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void IsAbsolute_ArgException1 ()
{
- Assert.IsFalse (VirtualPathUtility.IsAbsolute (""), "A1");
+ Assert.IsFalse (VPU.IsAbsolute (""), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void IsAbsolute_ArgException2 ()
{
- Assert.IsFalse (VirtualPathUtility.IsAbsolute (null), "A1");
+ Assert.IsFalse (VPU.IsAbsolute (null), "A1");
}
[Test]
public void IsAppRelative ()
{
- Assert.IsTrue (VirtualPathUtility.IsAppRelative ("~/Stuff"), "A1");
- Assert.IsFalse (VirtualPathUtility.IsAppRelative ("./Stuff"), "A2");
- Assert.IsFalse (VirtualPathUtility.IsAppRelative ("/Stuff"), "A3");
- Assert.IsFalse (VirtualPathUtility.IsAppRelative ("/"), "A4");
+ Assert.IsTrue (VPU.IsAppRelative ("~/Stuff"), "A1");
+ Assert.IsFalse (VPU.IsAppRelative ("./Stuff"), "A2");
+ Assert.IsFalse (VPU.IsAppRelative ("/Stuff"), "A3");
+ Assert.IsFalse (VPU.IsAppRelative ("/"), "A4");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void IsAppRelative_ArgException1 ()
{
- Assert.IsFalse (VirtualPathUtility.IsAppRelative (""), "A1");
+ Assert.IsFalse (VPU.IsAppRelative (""), "A1");
}
[Test]
[ExpectedException (typeof (ArgumentNullException))]
public void IsAppRelative_ArgException2 ()
{
- Assert.IsFalse (VirtualPathUtility.IsAppRelative (null), "A1");
+ Assert.IsFalse (VPU.IsAppRelative (null), "A1");
}
#if false
*/
public void MakeRelative ()
{
- Assert.AreEqual ("../bar", VirtualPathUtility.MakeRelative ("~/foo/hi", "~/foo/bar"), "A1");
+ Assert.AreEqual ("../bar", VPU.MakeRelative ("~/foo/hi", "~/foo/bar"), "A1");
}
#endif
[Test]
public void RemoveTrailingSlash ()
{
- Assert.AreEqual ("/hi/there", VirtualPathUtility.RemoveTrailingSlash ("/hi/there/"), "A1");
- Assert.AreEqual ("/hi/there", VirtualPathUtility.RemoveTrailingSlash ("/hi/there"), "A2");
- Assert.AreEqual ("/", VirtualPathUtility.RemoveTrailingSlash ("/"), "A3");
- Assert.AreEqual (null, VirtualPathUtility.RemoveTrailingSlash (""), "A4");
- Assert.AreEqual (null, VirtualPathUtility.RemoveTrailingSlash (null), "A5");
+ Assert.AreEqual ("/hi/there", VPU.RemoveTrailingSlash ("/hi/there/"), "A1");
+ Assert.AreEqual ("/hi/there", VPU.RemoveTrailingSlash ("/hi/there"), "A2");
+ Assert.AreEqual ("/", VPU.RemoveTrailingSlash ("/"), "A3");
+ Assert.AreEqual (null, VPU.RemoveTrailingSlash (""), "A4");
+ Assert.AreEqual (null, VPU.RemoveTrailingSlash (null), "A5");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void Combine1 ()
+ {
+ VPU.Combine (null, "something");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void Combine2 ()
+ {
+ VPU.Combine ("something", null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetDirectory1 ()
+ {
+ VPU.GetDirectory (null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentException))]
+ public void GetDirectory2 ()
+ {
+ VPU.GetDirectory ("");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetDirectory3 ()
+ {
+ VPU.GetDirectory ("hola");
+ }
+
+ [Test]
+ public void GetDirectory4 ()
+ {
+ Assert.AreEqual ("/direc/", VPU.GetDirectory ("/direc/somefilenoextension"));
+ Assert.AreEqual ("/direc/", VPU.GetDirectory ("/direc/somefile.aspx"));
+ Assert.AreEqual ("/direc/", VPU.GetDirectory ("/////direc///somefile.aspx"));
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetExtension1 ()
+ {
+ VPU.GetExtension (null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetExtension2 ()
+ {
+ // Amazing.
+ VPU.GetExtension ("");
+ }
+
+ [Test]
+ public void GetExtension3 ()
+ {
+ Assert.AreEqual ("", VPU.GetExtension ("/direc/somefilenoextension"));
+ Assert.AreEqual ("", VPU.GetExtension ("/"));
+ Assert.AreEqual (".aspx", VPU.GetDirectory ("/////direc///somefile.aspx"));
+ }
+
+ [Test]
+ public void GetFileName1 ()
+ {
+ Assert.AreEqual ("", VPU.GetFileName ("/"));
+ Assert.AreEqual ("hola", VPU.GetFileName ("/hola"));
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetFileName2 ()
+ {
+ VPU.GetFileName (null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void GetFileName3 ()
+ {
+ VPU.GetFileName ("");
+ }
+
+ [Test]
+ [ExpectedException (typeof (NullReferenceException))]
+ public void MakeRelative1 ()
+ {
+ VPU.MakeRelative (null, "");
+ }
+
+ [Test]
+ [ExpectedException (typeof (NullReferenceException))]
+ public void MakeRelative2 ()
+ {
+ VPU.MakeRelative ("", null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentOutOfRangeException))]
+ public void MakeRelative3 ()
+ {
+ VPU.MakeRelative ("/", "i");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentOutOfRangeException))]
+ public void MakeRelative4 ()
+ {
+ VPU.MakeRelative ("aa", "/i");
+ }
+
+ [Test]
+ public void MakeRelative5 ()
+ {
+ Assert.AreEqual ("", VPU.MakeRelative ("", ""));
+ Assert.AreEqual ("", VPU.MakeRelative ("/something", ""));
+ Assert.AreEqual ("./", VPU.MakeRelative ("/", "/"));
+ }
+
+ [Test]
+ public void RemoveTrailingSlash2 ()
+ {
+ Assert.AreEqual (null, VPU.RemoveTrailingSlash (null));
+ Assert.AreEqual (null, VPU.RemoveTrailingSlash (""));
+ Assert.AreEqual ("/", VPU.RemoveTrailingSlash ("/"));
+ Assert.AreEqual ("////", VPU.RemoveTrailingSlash ("/////"));
+ Assert.AreEqual ("/pepe", VPU.RemoveTrailingSlash ("/pepe"));
+ Assert.AreEqual ("/pepe", VPU.RemoveTrailingSlash ("/pepe/"));
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void ToAbsolute1 ()
+ {
+ VPU.ToAbsolute (null);
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentNullException))]
+ public void ToAbsolute2 ()
+ {
+ VPU.ToAbsolute ("");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentException))]
+ public void ToAbsolute3 ()
+ {
+ VPU.ToAbsolute ("..");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentException))]
+ public void ToAbsolute4 ()
+ {
+ VPU.ToAbsolute ("...");
+ }
+
+ [Test]
+ [ExpectedException (typeof (ArgumentException))]
+ public void ToAbsolute5 ()
+ {
+ VPU.ToAbsolute ("../blah");
+ }
+
+ [Test]
+ [ExpectedException (typeof (HttpException))]
+ public void ToAbsolute6 ()
+ {
+ VPU.ToAbsolute ("~/");
+ }
+
+ [Test]
+ [ExpectedException (typeof (HttpException))]
+ public void ToAbsolute7 ()
+ {
+ Assert.AreEqual ("/", VPU.ToAbsolute ("/"));
}
}
}
#endif
+