diff --git a/DNN Platform/Tests/App.config b/DNN Platform/Tests/App.config index 3757a08e605..7ad6cf31c0e 100644 --- a/DNN Platform/Tests/App.config +++ b/DNN Platform/Tests/App.config @@ -221,7 +221,7 @@ - + @@ -247,6 +247,10 @@ + + + + diff --git a/DNN Platform/Tests/DNN.Integration.Test.Framework/DNN.Integration.Test.Framework.csproj b/DNN Platform/Tests/DNN.Integration.Test.Framework/DNN.Integration.Test.Framework.csproj index 7e531cacb6a..96061284955 100644 --- a/DNN Platform/Tests/DNN.Integration.Test.Framework/DNN.Integration.Test.Framework.csproj +++ b/DNN Platform/Tests/DNN.Integration.Test.Framework/DNN.Integration.Test.Framework.csproj @@ -1,10 +1,10 @@  + + - - Debug @@ -56,21 +56,37 @@ ..\..\..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + ..\..\..\packages\Microsoft.AspNet.WebApi.Client.5.2.9\lib\net45\System.Net.Http.Formatting.dll + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + ..\..\..\packages\Microsoft.AspNet.WebApi.Core.5.2.9\lib\net45\System.Web.Http.dll @@ -137,6 +153,7 @@ + @@ -145,14 +162,14 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + diff --git a/DNN Platform/Tests/DNN.Integration.Test.Framework/Helpers/WebApiTestHelper.cs b/DNN Platform/Tests/DNN.Integration.Test.Framework/Helpers/WebApiTestHelper.cs index 1e967d021ee..03c4163a4b4 100644 --- a/DNN Platform/Tests/DNN.Integration.Test.Framework/Helpers/WebApiTestHelper.cs +++ b/DNN Platform/Tests/DNN.Integration.Test.Framework/Helpers/WebApiTestHelper.cs @@ -131,7 +131,7 @@ public static IWebApiConnector LoginRegisteredUser(string firstName = Integratio if (!connector.IsLoggedIn) { var loggedIn = connector.Login(AppConfigHelper.HostPassword); - Assert.IsTrue(loggedIn); + Assert.That(loggedIn, Is.True); } return connector; @@ -159,7 +159,7 @@ public static IWebApiConnector LoginAdministrator(string firstName = Integration if (!connector.IsLoggedIn) { var loggedIn = connector.Login(AppConfigHelper.HostPassword); - Assert.IsTrue(loggedIn); + Assert.That(loggedIn, Is.True); } return connector; @@ -188,7 +188,7 @@ public static IWebApiConnector LoginUser(string username, string url = null) if (!connector.IsLoggedIn) { var loggedIn = connector.Login(AppConfigHelper.HostPassword); - Assert.IsTrue(loggedIn); + Assert.That(loggedIn, Is.True); } return connector; diff --git a/DNN Platform/Tests/DNN.Integration.Test.Framework/packages.config b/DNN Platform/Tests/DNN.Integration.Test.Framework/packages.config index cd0a5c42111..ba852732364 100644 --- a/DNN Platform/Tests/DNN.Integration.Test.Framework/packages.config +++ b/DNN Platform/Tests/DNN.Integration.Test.Framework/packages.config @@ -8,9 +8,14 @@ - - + + + + + + + \ No newline at end of file diff --git a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/App.config b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/App.config index 9bd1f3aaa66..0451cc9add5 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/App.config +++ b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/App.config @@ -18,6 +18,10 @@ + + + + \ No newline at end of file diff --git a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/AspNetClientCapabilityTest.cs b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/AspNetClientCapabilityTest.cs index b4c57078e83..2576f4ec96f 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/AspNetClientCapabilityTest.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/AspNetClientCapabilityTest.cs @@ -63,7 +63,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_BlackBerry9105V1() var bIsMobile = clientCapability.IsMobile; // Assert - Assert.IsTrue(bIsMobile); + Assert.That(bIsMobile, Is.True); } [Test] @@ -76,7 +76,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_IPhone() var bIsMobile = clientCapability.IsMobile; // Assert - Assert.IsTrue(bIsMobile); + Assert.That(bIsMobile, Is.True); } [Test] @@ -89,7 +89,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_WP7() var bIsMobile = clientCapability.IsMobile; // Assert - Assert.IsTrue(bIsMobile); + Assert.That(bIsMobile, Is.True); } [Test] @@ -102,7 +102,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_IPad() var bIsMobile = clientCapability.IsMobile; // Assert - Assert.IsTrue(bIsMobile); + Assert.That(bIsMobile, Is.True); } [Test] @@ -120,7 +120,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_SamsungGalaxyGTP100 var isMobile = clientCapability.IsMobile; // Assert - Assert.IsTrue(isMobile); + Assert.That(isMobile, Is.True); } [Test] @@ -133,7 +133,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_EmptyUserAgent() var bIsMmobile = clientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMmobile); + Assert.That(bIsMmobile, Is.False); } [Test] @@ -147,7 +147,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_NullUserAgent() var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMobile); + Assert.That(bIsMobile, Is.False); } [Test] @@ -160,7 +160,7 @@ public void AspNetClientCapability_IsMobile_Returns_True_For_HTCDesireVer1Sub22( var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsTrue(bIsMobile); + Assert.That(bIsMobile, Is.True); } [Test] @@ -173,7 +173,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_InternetExplorer8( var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMobile); + Assert.That(bIsMobile, Is.False); } [Test] @@ -186,7 +186,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_InternetExplorer9( var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMobile); + Assert.That(bIsMobile, Is.False); } [Test] @@ -199,7 +199,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_InternetExplorer10 var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMobile); + Assert.That(bIsMobile, Is.False); } [Test] @@ -212,7 +212,7 @@ public void AspNetClientCapability_IsMobile_Returns_False_For_FireFox() var bIsMobile = AspNetClientCapability.IsMobile; // Assert - Assert.IsFalse(bIsMobile); + Assert.That(bIsMobile, Is.False); } [Test] @@ -225,7 +225,7 @@ public void AspNetClientCapability_IsTablet_Returns_False_For_IPhone() var bIsTablet = clientCapability.IsTablet; // Assert - Assert.IsFalse(bIsTablet); + Assert.That(bIsTablet, Is.False); } [Test] @@ -238,7 +238,7 @@ public void AspNetClientCapability_IsTablet_Returns_True_For_PCTablet() var bIsTablet = clientCapability.IsTablet; // Assert - Assert.IsTrue(bIsTablet); + Assert.That(bIsTablet, Is.True); } [Test] @@ -251,7 +251,7 @@ public void AspNetClientCapability_SupportsFlash_Returns_True_For_HTCDesireVer1S var bSupportsFlash = clientCapability.SupportsFlash; // Assert - Assert.IsFalse(bSupportsFlash); + Assert.That(bSupportsFlash, Is.False); } [Test] @@ -264,7 +264,7 @@ public void AspNetClientCapability_SupportsFlash_Returns_False_For_WindowsPhone7 var bIsTablet = clientCapability.IsTablet; // Assert - Assert.IsFalse(bIsTablet); + Assert.That(bIsTablet, Is.False); } } } diff --git a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/DotNetNuke.Tests.AspNetCCP.csproj b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/DotNetNuke.Tests.AspNetCCP.csproj index 0e900b28927..ce169bde160 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/DotNetNuke.Tests.AspNetCCP.csproj +++ b/DNN Platform/Tests/DotNetNuke.Tests.AspNetCCP/DotNetNuke.Tests.AspNetCCP.csproj @@ -1,7 +1,7 @@  - - + + Debug AnyCPU @@ -53,19 +53,35 @@ ..\..\..\packages\Moq.4.20.70\lib\net462\Moq.dll - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + @@ -109,6 +125,7 @@ + @@ -119,8 +136,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + {0}<---", mapping ?? "{NULL}"); - - var o = ReflectionHelper.GetPrivateInstanceFieldValue("_configMapPath", environment); - Console.WriteLine("_configMapPath: {0}", o ?? "{null}"); - - var mappedPath = ReflectionHelper.InvokeNonPublicMethod(environment, "MapPathActual", vpath, false); - Console.WriteLine("MAPPED: " + mappedPath); - Assert.AreEqual(expectedMapPath, HttpContext.Current.Request.MapPath(virtualPath)); - } - - // [Test] - public void CanInstantiateVirtualPath() - { - var virtualPathType = Type.GetType("System.Web.VirtualPath, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", true); - var constructor = virtualPathType.GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new[] { typeof(string) }, null); - Assert.IsNotNull(constructor); - } - - // [Test] - public void CanGetHostingEnvironment() - { - var environment = HttpSimulatorTester.CallGetEnvironment(); - Assert.IsNotNull(environment); - environment = HttpSimulatorTester.CallGetEnvironment(); - Assert.IsNotNull(environment); - } - - // [RowTest] - ////[Row("/", "/")] - ////[Row("", "/")] - ////[Row("/test", "/test")] - ////[Row("test/", "/test")] - ////[Row("/test/", "/test")] - ////[Row("/test/////", "/test")] - ////[Row("////test/", "/test")] - ////[Row("/test/test////", "/test/test")] - ////[Row("/////test/test////", "/test/test")] - ////[Row("/////test///test////", "/test/test")] - public void CanNormalizeSlashes(string s, string expected) - { - Assert.AreEqual(expected, HttpSimulatorTester.CallNormalizeSlashes(s)); - } - - // [Test] - public void CanStripTrailing() - { - Assert.AreEqual(@"c:\blah\blah2", HttpSimulatorTester.CallStripTrailingBackSlashes(@"c:\blah\blah2\")); - } - - internal class TestHttpHandler : IHttpHandler - { - public bool IsReusable - { - get { return true; } - } - - public void ProcessRequest(HttpContext context) - { - var physicalPath = context.Request.MapPath("/MyHandler.ashx"); - var username = context.Request.Form["username"]; - var id = context.Request.QueryString["id"]; - if (context.Request.UrlReferrer == null) - { - return; - } - - var referer = context.Request.UrlReferrer.ToString(); - - // Imagine, if you will, a bunch of complex interesting - // and fascinating logic here. - context.Response.Write(physicalPath + ":" + username + ":" + id + ":" + referer); - } - } - } - - internal class HttpSimulatorTester : HttpSimulator - { - public static string CallNormalizeSlashes(string s) - { - return NormalizeSlashes(s); - } - - public static string CallStripTrailingBackSlashes(string s) - { - return StripTrailingBackSlashes(s); - } - - public static HostingEnvironment CallGetEnvironment() - { - return GetHostingEnvironment(); - } - } -} +namespace UnitTests.Subtext +{ + using System; + using System.Collections.Specialized; + using System.Reflection; + using System.Web; + using System.Web.Hosting; + + using DotNetNuke.Tests.Instance.Utilities.HttpSimulator; + using NUnit.Framework; + + ////[TestFixture] + public class HttpSimulatorTests + { + ////[Test] + public void CanGetSetSession() + { + using (new HttpSimulator("/", @"c:\inetpub\").SimulateRequest()) + { + HttpContext.Current.Session["Test"] = "Success"; + Assert.That(HttpContext.Current.Session["Test"], Is.EqualTo("Success"), "Was not able to retrieve session variable."); + } + } + + ////[Test] + public void CanGetSetApplicationVariables() + { + using (new HttpSimulator("/", @"c:\inetpub\").SimulateRequest()) + { + HttpContext.Current.Application["Test"] = "Success"; + Assert.That(HttpContext.Current.Application["Test"], Is.EqualTo("Success"), "Was not able to retrieve application variable."); + } + } + + ////[Test] + public void TestHttpHandlerWritesCorrectResponse() + { + using (var simulator = new HttpSimulator("/", @"c:\inetpub\")) + { + simulator.SetFormVariable("username", "phil") + .SetReferer(new Uri("http://example.com/1/")) + .SimulateRequest(new Uri("http://localhost/MyHandler.ashx?id=1234")); + + var handler = new TestHttpHandler(); + handler.ProcessRequest(HttpContext.Current); + HttpContext.Current.Response.Flush(); + + const string expected = @"c:\inetpub\MyHandler.ashx:phil:1234:http://example.com/1/"; + Assert.That(simulator.ResponseText, Is.EqualTo(expected), "The Expected Response is all wrong."); + } // HttpContext.Current is set to null again. + } + + ////[Test] + public void CanDispose() + { + using (var simulator = new HttpSimulator()) + { + simulator.SimulateRequest(); + Assert.That(HttpContext.Current, Is.Not.Null); + } + + Assert.That(HttpContext.Current, Is.Null); + } + + /*//[RowTest] + ////[Row("http://localhost/Test/Default.aspx", "/Test", "/Test")] + ////[Row("http://localhost/Test/Default.aspx", "/Test/", "/Test")] + ////[Row("http://localhost/Test/Default.aspx", "//Test//", "/Test")] + ////[Row("http://localhost/Test/Subtest/Default.aspx", "/Test", "/Test")] + ////[Row("http://localhost/Test/Subtest/Default.aspx", "/Test/", "/Test")] + ////[Row("http://localhost/Test/Subtest/Default.aspx", "//Test//", "/Test")] + ////[Row("http://localhost/Test/Default.aspx", "", "/")] + ////[Row("http://localhost/Test/Default.aspx", "/", "/")] + ////[Row("http://localhost/Test/Default.aspx", null, "/")]*/ + public void CanSetApplicationPathCorrectly(string url, string appPath, string expectedAppPath) + { + var simulator = new HttpSimulator(appPath, @"c:\inetpub\wwwroot\site1\test"); + Assert.That(simulator.ApplicationPath, Is.EqualTo(expectedAppPath)); + simulator.SimulateRequest(new Uri(url)); + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.ApplicationPath, Is.EqualTo(expectedAppPath)); + Assert.That(HttpRuntime.AppDomainAppVirtualPath, Is.EqualTo(expectedAppPath)); + Assert.That(HostingEnvironment.ApplicationVirtualPath, Is.EqualTo(expectedAppPath)); + }); + } + + /*//[RowTest] + ////[Row("http://localhost/Test/default.aspx", "/Test", @"c:\projects\test", @"c:\projects\test\", @"c:\projects\test\default.aspx")] + ////[Row("http://localhost/Test/Subtest/default.aspx", "/Test", @"c:\projects\test", @"c:\projects\test\", @"c:\projects\test\Subtest\default.aspx")] + ////[Row("http://localhost/test/default.aspx", "/", @"c:\inetpub\wwwroot\", @"c:\inetpub\wwwroot\", @"c:\inetpub\wwwroot\test\default.aspx")] + ////[Row("http://localhost/test/default.aspx", "/", @"c:\inetpub\wwwroot", @"c:\inetpub\wwwroot\", @"c:\inetpub\wwwroot\test\default.aspx")]*/ + public void CanSetAppPhysicalPathCorrectly(string url, string appPath, string appPhysicalPath, string expectedPhysicalAppPath, string expectedPhysicalPath) + { + var simulator = new HttpSimulator(appPath, appPhysicalPath); + Assert.That(simulator.PhysicalApplicationPath, Is.EqualTo(expectedPhysicalAppPath)); + simulator.SimulateRequest(new Uri(url), HttpVerb.GET); + + Assert.Multiple(() => + { + Assert.That(simulator.PhysicalPath, Is.EqualTo(expectedPhysicalPath)); + Assert.That(HttpRuntime.AppDomainAppPath, Is.EqualTo(expectedPhysicalAppPath)); + Assert.That(HostingEnvironment.ApplicationPhysicalPath, Is.EqualTo(expectedPhysicalAppPath)); + Assert.That(HttpContext.Current.Request.PhysicalPath, Is.EqualTo(expectedPhysicalPath)); + }); + } + + ////[Test] + public void CanGetQueryString() + { + var simulator = new HttpSimulator(); + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx?param1=value1¶m2=value2¶m3=value3")); + for (var i = 1; i <= 3; i++) + { + Assert.That(HttpContext.Current.Request.QueryString["param" + i], Is.EqualTo("value" + i), $"Could not find query string field 'param{i}'"); + } + + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx?param1=new-value1¶m2=new-value2¶m3=new-value3¶m4=new-value4")); + for (var i = 1; i <= 4; i++) + { + Assert.That(HttpContext.Current.Request.QueryString["param" + i], Is.EqualTo("new-value" + i), $"Could not find query string field 'param{i}'"); + } + + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx?")); + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.QueryString.ToString(), Is.EqualTo(string.Empty)); + Assert.That(HttpContext.Current.Request.QueryString, Is.Empty); + }); + + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx")); + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.QueryString.ToString(), Is.EqualTo(string.Empty)); + Assert.That(HttpContext.Current.Request.QueryString, Is.Empty); + }); + + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx?param-name")); + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.QueryString.ToString(), Is.EqualTo("param-name")); + Assert.That(HttpContext.Current.Request.QueryString, Has.Count.EqualTo(1)); + }); + Assert.That(HttpContext.Current.Request.QueryString["param-name"], Is.Null); + } + + // //[Test] + public void CanSimulateFormPost() + { + using (var simulator = new HttpSimulator()) + { + var form = new NameValueCollection { { "Test1", "Value1" }, { "Test2", "Value2" } }; + simulator.SimulateRequest(new Uri("http://localhost/Test.aspx"), form); + + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.Form["Test1"], Is.EqualTo("Value1")); + Assert.That(HttpContext.Current.Request.Form["Test2"], Is.EqualTo("Value2")); + }); + } + + using (var simulator = new HttpSimulator()) + { + simulator.SetFormVariable("Test1", "Value1") + .SetFormVariable("Test2", "Value2") + .SimulateRequest(new Uri("http://localhost/Test.aspx")); + + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.Form["Test1"], Is.EqualTo("Value1")); + Assert.That(HttpContext.Current.Request.Form["Test2"], Is.EqualTo("Value2")); + }); + } + } + + // //[Test] + public void CanGetResponse() + { + var simulator = new HttpSimulator(); + simulator.SimulateRequest(); + HttpContext.Current.Response.Write("Hello World!"); + HttpContext.Current.Response.Flush(); + Assert.That(simulator.ResponseText, Is.EqualTo("Hello World!")); + } + + // //[Test] + public void CanGetReferer() + { + var simulator = new HttpSimulator(); + simulator.SetReferer(new Uri("http://example.com/Blah.aspx")).SimulateRequest(); + Assert.That(HttpContext.Current.Request.UrlReferrer, Is.EqualTo(new Uri("http://example.com/Blah.aspx"))); + + simulator = new HttpSimulator(); + simulator.SimulateRequest().SetReferer(new Uri("http://x.example.com/Blah.aspx")); + Assert.That(HttpContext.Current.Request.UrlReferrer, Is.EqualTo(new Uri("http://x.example.com/Blah.aspx"))); + } + + /*//[RowTest] + ////[Row("http://localhost:60653/Test.aspx", null, null, "localhost", 60653, "/", "/Test.aspx", @"c:\InetPub\wwwRoot\")] + ////[Row("http://localhost:60653/Test.aspx?test=true", null, null, "localhost", 60653, "/", "/Test.aspx", @"c:\InetPub\wwwRoot\")] + ////[Row("http://localhost:60653/Test.aspx", "/", @"c:\InetPub\wwwRoot\", "localhost", 60653, "/", "/Test.aspx", @"c:\InetPub\wwwRoot\")] + ////[Row("http://localhost:60653/Test/Test.aspx", "/", @"c:\InetPub\wwwRoot\", "localhost", 60653, "/", "/Test/Test.aspx", @"c:\InetPub\wwwRoot\")] + ////[Row("http://localhost:60653/AppPath/Test.aspx", "/AppPath", @"c:\InetPub\wwwRoot\AppPath\", "localhost", 60653, "/AppPath", "/AppPath/Test.aspx", @"c:\InetPub\wwwRoot\AppPath\")] + ////[Row("http://localhost:60653/AppPath/Test.aspx", "/AppPath/", @"c:\InetPub\wwwRoot\AppPath\", "localhost", 60653, "/AppPath", "/AppPath/Test.aspx", @"c:\InetPub\wwwRoot\AppPath\")]*/ + public void CanParseRequestUrl(string url, string appPath, string physicalPath, string expectedHost, int expectedPort, string expectedAppPath, string expectedPage, string expectedAppDomainAppPath) + { + var simulator = new HttpSimulator(appPath, physicalPath); + Assert.Multiple(() => + { + Assert.That(simulator.ApplicationPath, Is.EqualTo(expectedAppPath)); + Assert.That(simulator.PhysicalApplicationPath, Is.EqualTo(expectedAppDomainAppPath)); + }); + } + + // [RowTest] + ////[Row("http://localhost/AppPath/default.aspx", "/AppPath", "/AppPath/default.aspx")] + ////[Row("http://localhost/AppPath/default.aspx", "/", "/AppPath/default.aspx")] + public void CanGetLocalPathCorrectly(string url, string appPath, string expectedLocalPath) + { + var simulator = new HttpSimulator(appPath, @"c:\inetpub\wwwroot\AppPath\"); + simulator.SimulateRequest(new Uri(url)); + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.Path, Is.EqualTo(expectedLocalPath)); + Assert.That(HttpContext.Current.Request.Url.LocalPath, Is.EqualTo(expectedLocalPath)); + }); + } + + // [RowTest] + //////[Row("http://localhost:60653/Test.aspx", null, null, "localhost", 60653, "/", "/Test.aspx", @"c:\InetPub\wwwRoot\")] + //////[Row("http://localhost:60653/Test.aspx", "/", @"c:\InetPub\wwwRoot\", "localhost", 60653, "/", "/Test.aspx", @"c:\InetPub\wwwRoot\")] + //////[Row("http://localhost:60653/Test/Test.aspx", "/", @"c:\InetPub\wwwRoot\", "localhost", 60653, "/", "/Test/Test.aspx", @"c:\InetPub\wwwRoot\")] + //////[Row("http://localhost:60653/AppPath/Test.aspx", "/AppPath", @"c:\InetPub\wwwRoot\AppPath\", "localhost", 60653, "/AppPath", "/AppPath/Test.aspx", @"c:\InetPub\wwwRoot\AppPath\")] + //////[Row("http://localhost:60653/AppPath/Test.aspx", "/AppPath/", @"c:\InetPub\wwwRoot\AppPath\", "localhost", 60653, "/AppPath", "/AppPath/Test.aspx", @"c:\InetPub\wwwRoot\AppPath\")] + public void CanSimulateRequest(string url, string appPath, string physicalPath, string expectedHost, int expectedPort, string expectedAppPath, string expectedLocalPath, string expectedPhysicalPath) + { + var simulator = new HttpSimulator(appPath, physicalPath); + simulator.SimulateRequest(new Uri(url)); + + Assert.Multiple(() => + { + Assert.That(HttpContext.Current.Request.Url.Host, Is.EqualTo(expectedHost)); + Assert.That(HttpContext.Current.Request.Url.Port, Is.EqualTo(expectedPort)); + Assert.That(HttpContext.Current.Request.ApplicationPath, Is.EqualTo(expectedAppPath)); + Assert.That(HttpContext.Current.Request.PhysicalApplicationPath, Is.EqualTo(expectedPhysicalPath)); + Assert.That(HttpContext.Current.Request.Url.LocalPath, Is.EqualTo(expectedLocalPath)); + }); + } + + // [RowTest] + ////[Row("/", "/", @"c:\inetpub\wwwroot\")] + ////[Row("/Test/Test.aspx", "/", @"c:\inetpub\wwwroot\Test\Test.aspx")] + ////[Row("/Test/Blah/Test.aspx", "/", @"c:\inetpub\wwwroot\Test\Blah\Test.aspx")] + ////[Row("/Test", "/Test", @"c:\inetpub\wwwroot")] + ////[Row("/Test/", "/Test", @"c:\inetpub\wwwroot\")] + public void CanMapPath(string virtualPath, string appPath, string expectedMapPath) + { + var url = new Uri("http://localhost/Test/Test.aspx"); + var simulator = new HttpSimulator(appPath, @"c:\inetpub\wwwroot\"); + simulator.SimulateRequest(url); + + // Create a virtual path object. + var vpath = ReflectionHelper.Instantiate("System.Web.VirtualPath, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", new[] { typeof(string) }, virtualPath); + Assert.That(vpath, Is.Not.Null); + + var environment = HttpSimulatorTester.CallGetEnvironment(); + + var vpathString = ReflectionHelper.InvokeProperty(vpath, "VirtualPathString"); + var appVirtPath = ReflectionHelper.GetPrivateInstanceFieldValue("_appVirtualPath", environment); + Assert.That(appVirtPath, Is.Not.Null); + Console.WriteLine("VPATH: " + vpath); + Console.WriteLine("App-VPATH: " + appVirtPath); + + Console.WriteLine("vpath.VirtualPathString == '{0}'", vpathString); + + var mapping = ReflectionHelper.InvokeNonPublicMethod(typeof(HostingEnvironment), "GetVirtualPathToFileMapping", vpath); + Console.WriteLine("GetVirtualPathToFileMapping: --->{0}<---", mapping ?? "{NULL}"); + + var o = ReflectionHelper.GetPrivateInstanceFieldValue("_configMapPath", environment); + Console.WriteLine("_configMapPath: {0}", o ?? "{null}"); + + var mappedPath = ReflectionHelper.InvokeNonPublicMethod(environment, "MapPathActual", vpath, false); + Console.WriteLine("MAPPED: " + mappedPath); + Assert.That(HttpContext.Current.Request.MapPath(virtualPath), Is.EqualTo(expectedMapPath)); + } + + // [Test] + public void CanInstantiateVirtualPath() + { + var virtualPathType = Type.GetType("System.Web.VirtualPath, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", true); + var constructor = virtualPathType.GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new[] { typeof(string) }, null); + Assert.That(constructor, Is.Not.Null); + } + + // [Test] + public void CanGetHostingEnvironment() + { + var environment = HttpSimulatorTester.CallGetEnvironment(); + Assert.That(environment, Is.Not.Null); + environment = HttpSimulatorTester.CallGetEnvironment(); + Assert.That(environment, Is.Not.Null); + } + + // [RowTest] + ////[Row("/", "/")] + ////[Row("", "/")] + ////[Row("/test", "/test")] + ////[Row("test/", "/test")] + ////[Row("/test/", "/test")] + ////[Row("/test/////", "/test")] + ////[Row("////test/", "/test")] + ////[Row("/test/test////", "/test/test")] + ////[Row("/////test/test////", "/test/test")] + ////[Row("/////test///test////", "/test/test")] + public void CanNormalizeSlashes(string s, string expected) + { + Assert.That(HttpSimulatorTester.CallNormalizeSlashes(s), Is.EqualTo(expected)); + } + + // [Test] + public void CanStripTrailing() + { + Assert.That(HttpSimulatorTester.CallStripTrailingBackSlashes(@"c:\blah\blah2\"), Is.EqualTo(@"c:\blah\blah2")); + } + + internal class TestHttpHandler : IHttpHandler + { + public bool IsReusable + { + get { return true; } + } + + public void ProcessRequest(HttpContext context) + { + var physicalPath = context.Request.MapPath("/MyHandler.ashx"); + var username = context.Request.Form["username"]; + var id = context.Request.QueryString["id"]; + if (context.Request.UrlReferrer == null) + { + return; + } + + var referer = context.Request.UrlReferrer.ToString(); + + // Imagine, if you will, a bunch of complex interesting + // and fascinating logic here. + context.Response.Write(physicalPath + ":" + username + ":" + id + ":" + referer); + } + } + } + + internal class HttpSimulatorTester : HttpSimulator + { + public static string CallNormalizeSlashes(string s) + { + return NormalizeSlashes(s); + } + + public static string CallStripTrailingBackSlashes(string s) + { + return StripTrailingBackSlashes(s); + } + + public static HostingEnvironment CallGetEnvironment() + { + return GetHostingEnvironment(); + } + } +} diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Utilities/MailAssert.cs b/DNN Platform/Tests/DotNetNuke.Tests.Utilities/MailAssert.cs index 2adcc933c46..09fb94c9241 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Utilities/MailAssert.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Utilities/MailAssert.cs @@ -17,21 +17,21 @@ public static void Base64EncodedContentLineContains(string expectedValue, string { var contentLine = ConvertEmailContentFromBase64ToUnicode(GetEmailFileName(toAddress, findByText)); - Assert.IsTrue(contentLine.Contains(expectedValue)); + Assert.That(contentLine.Contains(expectedValue), Is.True); } public static void ContentLineContains(string expectedValue, string toAddress, string findByText) { var contentLine = FindContentUsingRegex(expectedValue, GetEmailFileName(toAddress, findByText)); - Assert.IsFalse(string.IsNullOrEmpty(contentLine)); + Assert.That(string.IsNullOrEmpty(contentLine), Is.False); } public static void FromLineContains(string expectedValue, string toAddress, string findByText) { string fromLine = FindEmailLineUsingRegex("From", GetEmailFileName(toAddress, findByText)); - Assert.IsTrue(fromLine.Contains(expectedValue)); + Assert.That(fromLine.Contains(expectedValue), Is.True); } public static void MessageSent(string expectedValue, string toAddress, string message) @@ -43,21 +43,21 @@ public static void ReplyToLineContains(string expectedValue, string toAddress, s { string replyToLine = FindEmailLineUsingRegex("Reply-To", GetEmailFileName(toAddress, findByText)); - Assert.IsTrue(replyToLine.Contains(expectedValue)); + Assert.That(replyToLine.Contains(expectedValue), Is.True); } public static void SubjectLineContains(string expectedValue, string toAddress, string findByText) { string subjectLine = FindEmailLineUsingRegex("Subject", GetEmailFileName(toAddress, findByText)); - Assert.IsTrue(subjectLine.Contains(expectedValue)); + Assert.That(subjectLine.Contains(expectedValue), Is.True); } public static void ToLineContains(string expectedValue, string toAddress, string findByText) { string toLine = FindEmailLineUsingRegex("To", GetEmailFileName(toAddress, findByText)); - Assert.IsTrue(toLine.Contains(expectedValue)); + Assert.That(toLine.Contains(expectedValue), Is.True); } private static string ConvertEmailContentFromBase64ToUnicode(string emailFileName) @@ -67,7 +67,7 @@ private static string ConvertEmailContentFromBase64ToUnicode(string emailFileNam // Separate the content from the EmailAddress information const string contentLineRegex = "(base64)(.*(\n)+)+"; Match match = Regex.Match(@emailContent, contentLineRegex, RegexOptions.Singleline); - Assert.IsTrue(match.Success, "Could not find content Line! Looking in file: " + emailFileName); + Assert.That(match.Success, Is.True, "Could not find content Line! Looking in file: " + emailFileName); // Convert the EmailAddress content emailContent = match.Groups[2].Value.Replace("\r\n", string.Empty); @@ -82,7 +82,7 @@ private static string FindContentUsingRegex(string content, string emailFileName string emailContent = File.ReadAllText(emailFileName); string contentLineRegex = @content + ".*"; Match match = Regex.Match(@emailContent, @contentLineRegex); - Assert.IsTrue(match.Success, "Could not find content Line! Looking in file: " + emailFileName); + Assert.That(match.Success, Is.True, "Could not find content Line! Looking in file: " + emailFileName); string contentLine = match.Value; return contentLine; } @@ -92,7 +92,7 @@ private static string FindEmailLineUsingRegex(string linePrefix, string emailFil string emailContent = File.ReadAllText(emailFileName); string lineRegex = @"^(" + linePrefix + @"): (.+)"; Match match = Regex.Match(@emailContent, @lineRegex, RegexOptions.Multiline); - Assert.IsTrue(match.Success, "Could not find " + linePrefix + " Line! Looking in file: " + emailFileName); + Assert.That(match.Success, Is.True, "Could not find " + linePrefix + " Line! Looking in file: " + emailFileName); string line = match.Value; return line; } @@ -102,7 +102,7 @@ private static string FindLineUsingRegex(string linePrefix, string emailFileName string emailContent = File.ReadAllText(emailFileName); string lineRegex = linePrefix + @": .*"; Match match = Regex.Match(@emailContent, @lineRegex); - Assert.IsTrue(match.Success, "Could not find " + linePrefix + " Line! Looking in file: " + emailFileName); + Assert.That(match.Success, Is.True, "Could not find " + linePrefix + " Line! Looking in file: " + emailFileName); string line = match.Value; return line; } @@ -129,7 +129,7 @@ private static string GetEmailFileName(string toAddress, string findByText, stri } } - Assert.IsTrue(emailFileName != null, message + " The test was searching in: " + emailPath); + Assert.That(emailFileName != null, Is.True, message + " The test was searching in: " + emailPath); return emailFileName; } diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Utilities/packages.config b/DNN Platform/Tests/DotNetNuke.Tests.Utilities/packages.config index f977d816747..901b91fb777 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Utilities/packages.config +++ b/DNN Platform/Tests/DotNetNuke.Tests.Utilities/packages.config @@ -9,10 +9,15 @@ - - + + + + + + + \ No newline at end of file diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DictionaryAssert.cs b/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DictionaryAssert.cs index 08e3bd01b96..f72239c96bc 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DictionaryAssert.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DictionaryAssert.cs @@ -19,9 +19,12 @@ public static void ContainsEntries(object expected, IDictionary public static void ContainsEntries(IDictionary expected, IDictionary actual) { foreach (KeyValuePair pair in expected) - { - Assert.IsTrue(actual.ContainsKey(pair.Key)); - Assert.AreEqual(pair.Value, actual[pair.Key]); + { + Assert.Multiple(() => + { + Assert.That(actual.ContainsKey(pair.Key), Is.True); + Assert.That(actual[pair.Key], Is.EqualTo(pair.Value)); + }); } } } diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DotNetNuke.Tests.Web.Mvc.csproj b/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DotNetNuke.Tests.Web.Mvc.csproj index 017d833bc19..efd7fcf9cbb 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DotNetNuke.Tests.Web.Mvc.csproj +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web.Mvc/DotNetNuke.Tests.Web.Mvc.csproj @@ -1,7 +1,7 @@  - - + + Debug @@ -62,18 +62,34 @@ ..\..\..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + ..\..\..\packages\Microsoft.AspNet.WebPages.3.2.9\lib\net45\System.Web.Helpers.dll @@ -159,6 +175,7 @@ + @@ -169,8 +186,8 @@ This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/FileUploadControllerTests.cs b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/FileUploadControllerTests.cs index acd74de9683..5d086d0834a 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/FileUploadControllerTests.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/FileUploadControllerTests.cs @@ -48,6 +48,12 @@ public void SetUp() this.SetupSynchronizationContext(); } + [TearDown] + public void TearDown() + { + this._testInstance?.Dispose(); + } + [Test] [SetCulture("tr-TR")] @@ -61,7 +67,7 @@ public async Task UploadFromLocal_ShouldUploadFile_WithTrCultureAsync() this._testInstance.Request = request; await this._testInstance.UploadFromLocal(-1); - Assert.IsTrue(_synchronizationContext.IsUploadFileCalled()); + Assert.That(_synchronizationContext.IsUploadFileCalled(), Is.True); } private void SetupPortalSettings() diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/SearchServiceControllerTests.cs b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/SearchServiceControllerTests.cs index bc783dd52fd..978733312ff 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/SearchServiceControllerTests.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/SearchServiceControllerTests.cs @@ -152,6 +152,7 @@ public void TearDown() { Globals.DependencyProvider = null; this.luceneController.Dispose(); + this.searchServiceController?.Dispose(); this.DeleteIndexFolder(); CBO.ClearInstance(); TabController.ClearInstance(); @@ -202,17 +203,20 @@ public void GetSearchResultsDetailed() // Assert var groupedDetailViews = search as List ?? search.ToList(); - // Overall 3 groups - tab1, tab2 and user - Assert.AreEqual(3, groupedDetailViews.Count()); + Assert.Multiple(() => + { + // Overall 3 groups - tab1, tab2 and user + Assert.That(groupedDetailViews.Count(), Is.EqualTo(3)); - // Tab 1 has 2 DetailViews - Assert.AreEqual(2, groupedDetailViews.Single(x => x.DocumentUrl == tabUrl1).Results.Count()); + // Tab 1 has 2 DetailViews + Assert.That(groupedDetailViews.Single(x => x.DocumentUrl == tabUrl1).Results.Count(), Is.EqualTo(2)); - // Tab 2 has 1 DetailViews - Assert.AreEqual(1, groupedDetailViews.Single(x => x.DocumentUrl == tabUrl2).Results.Count()); + // Tab 2 has 1 DetailViews + Assert.That(groupedDetailViews.Single(x => x.DocumentUrl == tabUrl2).Results.Count(), Is.EqualTo(1)); - // UserUrl has 1 DetailViews - Assert.AreEqual(1, groupedDetailViews.Single(x => x.DocumentUrl == userUrl).Results.Count()); + // UserUrl has 1 DetailViews + Assert.That(groupedDetailViews.Single(x => x.DocumentUrl == userUrl).Results.Count(), Is.EqualTo(1)); + }); } [Test] @@ -254,16 +258,19 @@ public void GetSearchResultsBasic() // Assert - overall 2 groups: tabs and users var groupedBasicViews = search as List ?? search.ToList(); - Assert.AreEqual(2, groupedBasicViews.Count()); + Assert.Multiple(() => + { + Assert.That(groupedBasicViews.Count(), Is.EqualTo(2)); - // 1 User results - Assert.AreEqual(1, groupedBasicViews.Single(x => x.DocumentTypeName == "user").Results.Count()); + // 1 User results + Assert.That(groupedBasicViews.Single(x => x.DocumentTypeName == "user").Results.Count(), Is.EqualTo(1)); - // User result should have 1 attribute(avatar) - Assert.AreEqual(1, groupedBasicViews.Single(x => x.DocumentTypeName == "user").Results.ElementAt(0).Attributes.Count()); + // User result should have 1 attribute(avatar) + Assert.That(groupedBasicViews.Single(x => x.DocumentTypeName == "user").Results.ElementAt(0).Attributes.Count(), Is.EqualTo(1)); - // 2 Tabs results - Assert.AreEqual(2, groupedBasicViews.Single(x => x.DocumentTypeName == "tab").Results.Count()); + // 2 Tabs results + Assert.That(groupedBasicViews.Single(x => x.DocumentTypeName == "tab").Results.Count(), Is.EqualTo(2)); + }); } [Test] @@ -332,11 +339,17 @@ public void ModifyingDocumentsDoesNotCreateDuplicates() // Run var searchResults = this.GetGroupedDetailViewResults(query).ToList(); - // Assert - Assert.AreEqual(1, searchResults.Count()); - Assert.AreEqual(1, searchResults.First().Results.Count); - Assert.AreEqual(tabUrl, searchResults.First().Results.First().DocumentUrl); - Assert.AreEqual(titleModified, searchResults.First().Results.First().Title); + Assert.Multiple(() => + { + // Assert + Assert.That(searchResults.Count(), Is.EqualTo(1)); + Assert.That(searchResults.First().Results, Has.Count.EqualTo(1)); + }); + Assert.Multiple(() => + { + Assert.That(searchResults.First().Results.First().DocumentUrl, Is.EqualTo(tabUrl)); + Assert.That(searchResults.First().Results.First().Title, Is.EqualTo(titleModified)); + }); } private void CreateNewLuceneControllerInstance() diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/TabVersionControllerTests.cs b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/TabVersionControllerTests.cs index c97ca1f9301..9b80e25b86e 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/TabVersionControllerTests.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web/InternalServices/TabVersionControllerTests.cs @@ -67,7 +67,7 @@ public void GetTabVersions_Verify_User_Preferred_TimeZone(string userPreferredTi var localizedDate = TimeZoneInfo.ConvertTime(tabVersion.CreatedOnDate, DateUtilsTestable.GetDatabaseDateTimeOffset(), userTimeZone); // Assert - Assert.AreEqual(localizedDate, expectedDateTime); + Assert.That(expectedDateTime, Is.EqualTo(localizedDate)); } private void SetupCBO() diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web/Mvp/ModuleSettingsPresenterTests.cs b/DNN Platform/Tests/DotNetNuke.Tests.Web/Mvp/ModuleSettingsPresenterTests.cs index 08290561f95..20852c03e8d 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web/Mvp/ModuleSettingsPresenterTests.cs +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web/Mvp/ModuleSettingsPresenterTests.cs @@ -39,11 +39,14 @@ public void ModuleSettingsPresenter_Load_Initialises_Both_Dictionaries_On_PostBa view.Raise(v => v.Load += null, EventArgs.Empty); // Assert - Assert.IsInstanceOf>(view.Object.Model.ModuleSettings); - Assert.AreEqual(0, view.Object.Model.ModuleSettings.Count); - - Assert.IsInstanceOf>(view.Object.Model.TabModuleSettings); - Assert.AreEqual(0, view.Object.Model.TabModuleSettings.Count); + Assert.That(view.Object.Model.ModuleSettings, Is.InstanceOf>()); + Assert.Multiple(() => + { + Assert.That(view.Object.Model.ModuleSettings, Is.Empty); + + Assert.That(view.Object.Model.TabModuleSettings, Is.InstanceOf>()); + }); + Assert.That(view.Object.Model.TabModuleSettings, Is.Empty); } [Test] @@ -58,11 +61,14 @@ public void ModuleSettingsPresenter_Load_Does_Not_Initialise_Dictionaries_If_Not presenter.IsPostBack = false; // Act - view.Raise(v => v.Load += null, EventArgs.Empty); - - // Assert - Assert.IsNull(view.Object.Model.ModuleSettings); - Assert.IsNull(view.Object.Model.TabModuleSettings); + view.Raise(v => v.Load += null, EventArgs.Empty); + + Assert.Multiple(() => + { + // Assert + Assert.That(view.Object.Model.ModuleSettings, Is.Null); + Assert.That(view.Object.Model.TabModuleSettings, Is.Null); + }); } [Test] @@ -82,11 +88,14 @@ public void ModuleSettingsPresenter_LoadSettings_Loads_Both_Dictionaries() view.Raise(v => v.OnLoadSettings += null, EventArgs.Empty); // Assert - Assert.IsInstanceOf>(view.Object.Model.ModuleSettings); - Assert.AreEqual(_moduleSettingCount, view.Object.Model.ModuleSettings.Count); - - Assert.IsInstanceOf>(view.Object.Model.TabModuleSettings); - Assert.AreEqual(_tabModuleSettingCount, view.Object.Model.TabModuleSettings.Count); + Assert.That(view.Object.Model.ModuleSettings, Is.InstanceOf>()); + Assert.Multiple(() => + { + Assert.That(view.Object.Model.ModuleSettings, Has.Count.EqualTo(_moduleSettingCount)); + + Assert.That(view.Object.Model.TabModuleSettings, Is.InstanceOf>()); + }); + Assert.That(view.Object.Model.TabModuleSettings, Has.Count.EqualTo(_tabModuleSettingCount)); } [Test] diff --git a/DNN Platform/Tests/DotNetNuke.Tests.Web/packages.config b/DNN Platform/Tests/DotNetNuke.Tests.Web/packages.config index dcf14c2dd02..9115bb6a60e 100644 --- a/DNN Platform/Tests/DotNetNuke.Tests.Web/packages.config +++ b/DNN Platform/Tests/DotNetNuke.Tests.Web/packages.config @@ -9,10 +9,15 @@ - - + + + + + + + \ No newline at end of file diff --git a/DNN_Platform.sln.DotSettings b/DNN_Platform.sln.DotSettings index 5bf3af7b796..99ebc02f3f1 100644 --- a/DNN_Platform.sln.DotSettings +++ b/DNN_Platform.sln.DotSettings @@ -157,6 +157,7 @@ See the LICENSE file in the project root for more information True True True + True True True True diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/ConfigConsoleControllerTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/ConfigConsoleControllerTests.cs index 67bde78293a..10bc8738c16 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/ConfigConsoleControllerTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/ConfigConsoleControllerTests.cs @@ -73,9 +73,12 @@ public void ValidateConfigFile(string fileName, string fileContent, int expected exception = ex; } - // assert - Assert.AreEqual(shouldThrow, exception != null); - Assert.AreEqual(expectedErrorCount, errors.Count()); + Assert.Multiple(() => + { + // assert + Assert.That(exception != null, Is.EqualTo(shouldThrow)); + Assert.That(errors.Count(), Is.EqualTo(expectedErrorCount)); + }); } } } diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/Dnn.PersonaBar.ConfigConsole.Tests.csproj b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/Dnn.PersonaBar.ConfigConsole.Tests.csproj index bcd5cd41737..8e7134863ad 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/Dnn.PersonaBar.ConfigConsole.Tests.csproj +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/Dnn.PersonaBar.ConfigConsole.Tests.csproj @@ -1,7 +1,7 @@  - - + + Debug @@ -57,15 +57,31 @@ ..\..\..\packages\Moq.4.20.70\lib\net462\Moq.dll True - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + @@ -107,6 +123,7 @@ + @@ -114,8 +131,8 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/packages.config b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/packages.config index 64025b29336..9d9aca0210f 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/packages.config +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.ConfigConsole.Tests/packages.config @@ -5,9 +5,14 @@ - - + + + + + + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/Dnn.PersonaBar.Pages.Tests.csproj b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/Dnn.PersonaBar.Pages.Tests.csproj index a88596359e8..f7034c7c410 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/Dnn.PersonaBar.Pages.Tests.csproj +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/Dnn.PersonaBar.Pages.Tests.csproj @@ -1,7 +1,7 @@  - - + + Debug @@ -48,18 +48,34 @@ ..\..\..\packages\Moq.4.20.70\lib\net462\Moq.dll True - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + @@ -106,6 +122,7 @@ + @@ -114,7 +131,7 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/GetPageUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/GetPageUnitTests.cs index 90a88cd4985..e9e7e9f069c 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/GetPageUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/GetPageUnitTests.cs @@ -56,13 +56,16 @@ public void Run_GetPageWithValidCommand_ShouldSuccessResponse() this.SetupCommand(); // Act - var result = this._getCommand.Run(); - - // Assert - Assert.IsFalse(result.IsError); - Assert.IsNotNull(result.Data); - Assert.AreEqual(1, result.Records); - Assert.IsFalse(result is ConsoleErrorResultModel); + var result = this._getCommand.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.False); + Assert.That(result.Data, Is.Not.Null); + Assert.That(result.Records, Is.EqualTo(1)); + Assert.That(result is ConsoleErrorResultModel, Is.False); + }); } [Test] @@ -77,11 +80,14 @@ public void Run_GetPageWithValidCommandForNonExistingTab_ShouldErrorResponse() this.SetupCommand(); // Act - var result = this._getCommand.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._getCommand.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } [Test] @@ -94,11 +100,14 @@ public void Run_GetPageWithValidCommandForRequestedPortalNotAllowed_ShouldErrorR this.SetupCommand(); // Act - var result = this._getCommand.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._getCommand.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } [Test] @@ -111,11 +120,14 @@ public void Run_GetPageWithValidCommandForPortalNotAllowed_ShouldErrorResponse() this.SetupCommand(); // Act - var result = this._getCommand.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._getCommand.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } private void SetupCommand() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PagesControllerUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PagesControllerUnitTests.cs index 5418b388b99..fed9efb1298 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PagesControllerUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PagesControllerUnitTests.cs @@ -75,7 +75,7 @@ public void ValidatePageUrlSettings_CleanNameForUrl_URLArgumentShouldBeLocalPath bool result = this._pagesController.ValidatePageUrlSettings(portalSettings, pageSettings, tab, ref inValidField, ref errorMessage); // Assert - Assert.IsTrue(result); + Assert.That(result, Is.True); this._urlRewriterUtilsWrapperMock.VerifyAll(); this._friendlyUrlWrapperMock.Verify(d => d.CleanNameForUrl(expected, friendlyOptions, out modified), Times.Once()); } diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PurgePageUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PurgePageUnitTests.cs index af9a201dc6f..7014fac4951 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PurgePageUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/PurgePageUnitTests.cs @@ -55,7 +55,7 @@ public void Call_PurgePage_WithValidCommand_ShouldReturnSuccessResponse() var result = purgeCommand.Run(); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [Test] @@ -83,7 +83,7 @@ public void Call_PurgePage_WithValidCommandAndPageContentNotAllowed_ShouldReturn var result = purgeCommand.Run(); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -103,7 +103,7 @@ public void Call_PurgePage_PageDoesNotExist_ShouldReturnErrorResponse() var result = purgeCommand.Run(); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); this._tabControllerMock.Verify(t => t.GetTab(tabId, portalSettings.PortalId)); } } diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/RestorePageUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/RestorePageUnitTests.cs index 99ed99bf02f..9ef7a1b919c 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/RestorePageUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/RestorePageUnitTests.cs @@ -58,12 +58,15 @@ public void Run_RestorePage_WithValidCommand_ShouldReturnSuccessResponse() this.SetupCommand(); // Act - var result = this._restorePage.Run(); - - // Assert - Assert.IsFalse(result.IsError); - Assert.AreEqual(1, result.Records); - Assert.IsFalse(result is ConsoleErrorResultModel); + var result = this._restorePage.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.False); + Assert.That(result.Records, Is.EqualTo(1)); + Assert.That(result is ConsoleErrorResultModel, Is.False); + }); } [Test] @@ -78,11 +81,14 @@ public void Run_RestorePage_WithValidCommandForNonExistingTab_ShouldReturnErrorR this.SetupCommand(); // Act - var result = this._restorePage.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._restorePage.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } [Test] @@ -95,11 +101,14 @@ public void Run_RestorePage_WithValidCommandForRequestedPortalNotAllowed_ShouldR this.SetupCommand(); // Act - var result = this._restorePage.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._restorePage.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } [Test] @@ -114,11 +123,14 @@ public void Run_RestorePage_WithValidCommandForNotRestoreTab_ShouldReturnErrorRe this.SetupCommand(); // Act - var result = this._restorePage.Run(); - - // Assert - Assert.IsTrue(result.IsError); - Assert.IsTrue(result is ConsoleErrorResultModel); + var result = this._restorePage.Run(); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.True); + Assert.That(result is ConsoleErrorResultModel, Is.True); + }); } private void SetupCommand() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/packages.config b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/packages.config index 097dba9884d..febde3029b8 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/packages.config +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Pages.Tests/packages.config @@ -2,9 +2,14 @@ - - + + + + + + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckTelerikPresenceTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckTelerikPresenceTests.cs index 1c7343bcf32..04479b3ad38 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckTelerikPresenceTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckTelerikPresenceTests.cs @@ -28,10 +28,13 @@ public void Execute_WhenError_ReturnsUnverified() // act var result = sut.Execute(); - // assert - Assert.AreEqual(SeverityEnum.Unverified, result.Severity); - Assert.AreEqual(1, result.Notes.Count()); - Assert.IsTrue(result.Notes.First() == "An internal error occurred. See logs for details."); + Assert.Multiple(() => + { + // assert + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Unverified)); + Assert.That(result.Notes.Count(), Is.EqualTo(1)); + Assert.That(result.Notes.First() == "An internal error occurred. See logs for details.", Is.True); + }); } [Test] @@ -57,10 +60,13 @@ public void Execute_WhenInstalledAndUsed_ReturnsInstalledAndUsed() // act var result = sut.Execute(); - // assert - Assert.AreEqual(SeverityEnum.Failure, result.Severity); - Assert.AreEqual(1, result.Notes.Count()); - Assert.IsTrue(result.Notes.First().Contains("* DotNetNuke.Modules.Mod3.dll")); + Assert.Multiple(() => + { + // assert + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Failure)); + Assert.That(result.Notes.Count(), Is.EqualTo(1)); + Assert.That(result.Notes.First().Contains("* DotNetNuke.Modules.Mod3.dll"), Is.True); + }); } [Test] @@ -82,9 +88,12 @@ public void Execute_WhenInstalledButNotUsed_ReturnsInstalledButNotUsed() // act var result = sut.Execute(); - // assert - Assert.AreEqual(SeverityEnum.Failure, result.Severity); - Assert.AreEqual(1, result.Notes.Count()); + Assert.Multiple(() => + { + // assert + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Failure)); + Assert.That(result.Notes.Count(), Is.EqualTo(1)); + }); } [Test] @@ -102,9 +111,12 @@ public void Execute_WhenNotInstalled_ReturnsNotInstalled() // act var result = sut.Execute(); - // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); - Assert.AreEqual(0, result.Notes.Count()); + Assert.Multiple(() => + { + // assert + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); + Assert.That(result.Notes.Count(), Is.EqualTo(0)); + }); } } } diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckUserProfilePageTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckUserProfilePageTests.cs index e82aaf53000..a46c2ff9b34 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckUserProfilePageTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Checks/CheckUserProfilePageTests.cs @@ -51,10 +51,13 @@ public void Constructor_WhenArgumentIsNull_ThrowsArgumentNullException(string nu unexpectedException = ex; } - // assert - Assert.IsNull(unexpectedException); - Assert.IsNotNull(argumentNullException); - Assert.AreEqual(nullParamName, argumentNullException.ParamName); + Assert.Multiple(() => + { + // assert + Assert.That(unexpectedException, Is.Null); + Assert.That(argumentNullException, Is.Not.Null); + }); + Assert.That(argumentNullException.ParamName, Is.EqualTo(nullParamName)); } [Test] @@ -74,7 +77,7 @@ public void Execute_WhenNotFound_ReturnsPass() var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); } [Test] @@ -96,7 +99,7 @@ public void Execute_WhenDeleted_ReturnsPass() var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); } [Test] @@ -120,7 +123,7 @@ public void Execute_WhenPublic_ReturnsWarning() var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Warning, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Warning)); } [Test] @@ -144,7 +147,7 @@ public void Execute_WhenNeitherPublicNorActivityFeed_ReturnsPass() var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); } [Test] @@ -168,7 +171,7 @@ public void Execute_WhenNotPublicAndActivityFeedAndMyProfileNotFound_ReturnsPass var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); } [Test] @@ -193,7 +196,7 @@ public void Execute_WhenNotPublicAndActivityFeedAndMyProfileDeleted_ReturnsPass( var result = sut.Execute(); // assert - Assert.AreEqual(SeverityEnum.Pass, result.Severity); + Assert.That(result.Severity, Is.EqualTo(SeverityEnum.Pass)); } [Test] @@ -221,7 +224,7 @@ public void Execute_WhenNotPublicAndActivityFeedAndMyProfileValid_ReturnsCorrect var result = sut.Execute(); // assert - Assert.AreEqual(expectedSeverity, result.Severity); + Assert.That(result.Severity, Is.EqualTo(expectedSeverity)); } private static TabInfo BuildActivityFeedTabInfo(bool deleted = false) => new TabInfo diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Dnn.PersonaBar.Security.Tests.csproj b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Dnn.PersonaBar.Security.Tests.csproj index 4bafd482692..ca18dc3d11f 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Dnn.PersonaBar.Security.Tests.csproj +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Dnn.PersonaBar.Security.Tests.csproj @@ -1,7 +1,7 @@  - - + + Debug @@ -51,22 +51,38 @@ ..\..\..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + ..\..\..\packages\Microsoft.AspNet.WebApi.Client.5.2.9\lib\net45\System.Net.Http.Formatting.dll + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + ..\..\..\packages\Microsoft.AspNet.WebApi.Core.5.2.9\lib\net45\System.Web.Http.dll @@ -121,6 +137,7 @@ + @@ -129,7 +146,7 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Services/SecurityControllerTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Services/SecurityControllerTests.cs index df7c2c743ac..58c0287d253 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Services/SecurityControllerTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/Services/SecurityControllerTests.cs @@ -31,7 +31,7 @@ public void Services_Controller_AddPortalAlias_TrimsProtocolAndSlash() var alias = sut.AddPortalAlias(SslUrl, PortalId); // assert - Assert.AreEqual(SomeAlias, alias); + Assert.That(alias, Is.EqualTo(SomeAlias)); } [Test] diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/packages.config b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/packages.config index 06f4cb0160d..d7372bd0325 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/packages.config +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Security.Tests/packages.config @@ -5,9 +5,14 @@ - - + + + + + + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/AddRolesUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/AddRolesUnitTests.cs index 73be1189e1f..3d124ae6db4 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/AddRolesUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/AddRolesUnitTests.cs @@ -75,7 +75,7 @@ public void Run_AddRolesWithValidArguments_ReturnSuccessResponse() var result = this.RunCommand(userId.ToString(), "--roles", "Tester"); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [TestCase] @@ -96,7 +96,7 @@ public void Run_AddRolesWhenUserNotValid_ReturnErrorResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [TestCase] diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/DeleteUserUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/DeleteUserUnitTests.cs index 7f6f4606551..6aacbeca2dd 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/DeleteUserUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/DeleteUserUnitTests.cs @@ -47,7 +47,7 @@ public void Run_DeleteValidUserId_ReturnSuccessResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [Test] @@ -67,7 +67,7 @@ public void Run_DeleteAlreadyDeletedUser_ReturnErrorResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -94,7 +94,7 @@ public void Run_DeleteUserFailed_ReturnErrorResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -112,7 +112,7 @@ public void Run_DeleteNullUserId_ReturnErrorResponse() var result = this.RunCommand(); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } protected override DeleteUser CreateCommand() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/Dnn.PersonaBar.Users.Tests.csproj b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/Dnn.PersonaBar.Users.Tests.csproj index 971353ec9d3..6686f905ff6 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/Dnn.PersonaBar.Users.Tests.csproj +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/Dnn.PersonaBar.Users.Tests.csproj @@ -1,7 +1,7 @@  - - + + Debug @@ -49,18 +49,34 @@ ..\..\..\packages\Moq.4.20.70\lib\net462\Moq.dll True - - ..\..\..\packages\NUnit.3.13.3\lib\net45\nunit.framework.dll + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.dll + + + ..\..\..\packages\NUnit.4.2.2\lib\net462\nunit.framework.legacy.dll + + ..\..\..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\..\..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\..\..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + ..\..\..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll ..\..\..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + ..\..\..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + @@ -115,6 +131,7 @@ + @@ -123,7 +140,7 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - + + \ No newline at end of file diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/GetUserUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/GetUserUnitTests.cs index 593f6543def..586a0e7990c 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/GetUserUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/GetUserUnitTests.cs @@ -52,7 +52,7 @@ public void Run_GetUserByEmailWithValidCommand_ShouldSuccessResponse() var result = this.RunCommand("--email", "user1@g.com"); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [TestCase] @@ -81,7 +81,7 @@ public void Run_GetUserByUserNameWithValidCommand_ShouldSuccessResponse() var result = this.RunCommand("--username", "user1"); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [Test] @@ -97,7 +97,7 @@ public void Run_GetUserWithValidCommand_ShouldSuccessResponse() var result = this.RunCommand(this._userId.ToString()); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [Test] @@ -115,7 +115,7 @@ public void Run_GetUserWithValidCommand_ShouldErrorResponse() var result = this.RunCommand(this._userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } protected override void ChildSetup() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/RestoreUserUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/RestoreUserUnitTests.cs index 579793d46cc..6c779126c30 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/RestoreUserUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/RestoreUserUnitTests.cs @@ -41,7 +41,7 @@ public void Run_RestoreValidUserId_ReturnSuccessResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsFalse(result.IsError); + Assert.That(result.IsError, Is.False); } [Test] @@ -61,7 +61,7 @@ public void Run_RecycleBinControllerRestoringError_ReturnErrorResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -79,7 +79,7 @@ public void Run_RestoreNotDeletedUser_ReturnErrorResponse() var result = this.RunCommand(userId.ToString()); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -98,7 +98,7 @@ public void Run_RestoreNullUserId_ReturnErrorResponse() var result = this.RunCommand(); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } protected override RestoreUser CreateCommand() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SearchUsersBySearchTermTest.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SearchUsersBySearchTermTest.cs index d9b8a194a39..0cfcfd111e0 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SearchUsersBySearchTermTest.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SearchUsersBySearchTermTest.cs @@ -60,7 +60,7 @@ public void FilteredSearchTest(string searchText, string expectedFilteredText) this.usersContract.SearchText = searchText; this.usersCtrl.GetUsers(this.usersContract, true, out totalRecords); - Assert.AreEqual(expectedFilteredText, this.usersCtrl.LastSearch); + Assert.That(this.usersCtrl.LastSearch, Is.EqualTo(expectedFilteredText)); } private class UsersControllerTestable : UsersController diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SetUserUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SetUserUnitTests.cs index bc493c0ec9d..919f306ae08 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SetUserUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/SetUserUnitTests.cs @@ -36,7 +36,7 @@ public void Run_UserIdNull_ReturnErrorResponse() var result = this.RunCommand("--username", "testusername", "--firstname", "testfirstname", "--lastname", "testlastname"); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [TestCase("--email", "user@gm.com")] @@ -62,11 +62,14 @@ public void Run_ValidCommand_ReturnSuccessResponse(string attributeName, string .Returns(userInfo); // Act - var result = this.RunCommand(userId.ToString(), "--firstname", "user4", "--lastname", "user4", attributeName, attributeValue); - - // Assert - Assert.IsFalse(result.IsError); - Assert.AreEqual(1, result.Records); + var result = this.RunCommand(userId.ToString(), "--firstname", "user4", "--lastname", "user4", attributeName, attributeValue); + + Assert.Multiple(() => + { + // Assert + Assert.That(result.IsError, Is.False); + Assert.That(result.Records, Is.EqualTo(1)); + }); } protected override void ChildSetup() diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/UserValidatorUnitTests.cs b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/UserValidatorUnitTests.cs index 1aa616b6436..f099168809a 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/UserValidatorUnitTests.cs +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/UserValidatorUnitTests.cs @@ -50,7 +50,7 @@ public void ValidateUser_IfUserIdWithValidValue_ThenSuccessResponse() var result = this._userValidator.ValidateUser(userId, null, null, out userInfo); // Assert - Assert.IsNull(result); + Assert.That(result, Is.Null); } [Test] @@ -66,7 +66,7 @@ public void ValidateUser_IfUserAllowedInSiteGroup_ThenSuccessResponse() var result = this._userValidator.ValidateUser(userId, null, null, out userInfo); // Assert - Assert.IsNull(result); + Assert.That(result, Is.Null); } [Test] @@ -82,7 +82,7 @@ public void ValidateUser_IfUserNotAllowedInSiteGroup_ThenErrorResponse() var result = this._userValidator.ValidateUser(userId, null, null, out userInfo); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -101,7 +101,7 @@ public void ValidateUser_IfUserIdNotFound_ThenErrorResponse() var result = this._userValidator.ValidateUser(userId, null, null, out userInfo); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } [Test] @@ -116,7 +116,7 @@ public void ValidateUser_IfUserIdWithoutValue_ThenErrorResponse() var result = this._userValidator.ValidateUser(userId, null, null, out userInfo); // Assert - Assert.IsTrue(result.IsError); + Assert.That(result.IsError, Is.True); } private void SetupUserControllerWrapperMock(UserInfo userInfo) diff --git a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/packages.config b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/packages.config index 097dba9884d..febde3029b8 100644 --- a/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/packages.config +++ b/Dnn.AdminExperience/Tests/Dnn.PersonaBar.Users.Tests/packages.config @@ -2,9 +2,14 @@ - - + + + + + + + \ No newline at end of file