public void Validate_Route_String() { var attribute = new ValidateUmbracoFormRouteStringAttribute(); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(null, null, null, null)); const string ControllerName = "Test"; const string ControllerAction = "Index"; const string Area = "MyArea"; var validUfprt = UrlHelperRenderExtensions.CreateEncryptedRouteString(ControllerName, ControllerAction, Area); var invalidUfprt = validUfprt + "z"; Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(invalidUfprt, null, null, null)); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, ControllerName, ControllerAction, "doesntMatch")); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, ControllerName, ControllerAction, null)); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, ControllerName, "doesntMatch", Area)); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, ControllerName, null, Area)); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, "doesntMatch", ControllerAction, Area)); Assert.Throws <HttpUmbracoFormRouteStringException>(() => attribute.ValidateRouteString(validUfprt, null, ControllerAction, Area)); Assert.DoesNotThrow(() => attribute.ValidateRouteString(validUfprt, ControllerName, ControllerAction, Area)); Assert.DoesNotThrow(() => attribute.ValidateRouteString(validUfprt, ControllerName.ToLowerInvariant(), ControllerAction.ToLowerInvariant(), Area.ToLowerInvariant())); }
public static void Create_Encrypted_RouteString_From_Dictionary() { var additionalRouteValues = new Dictionary <string, object>() { { "key1", "value1" }, { "key2", "value2" }, { "Key3", "Value3" }, { "keY4", "valuE4" } }; var encryptedRouteString = UrlHelperRenderExtensions.CreateEncryptedRouteString( "FormController", "FormAction", "", additionalRouteValues ); var result = encryptedRouteString.DecryptWithMachineKey(); const string expectedResult = "c=FormController&a=FormAction&ar=&key1=value1&key2=value2&Key3=Value3&keY4=valuE4"; Assert.AreEqual(expectedResult, result); }
public static void Create_Encrypted_RouteString_From_Anonymous_Object() { var additionalRouteValues = new { key1 = "value1", key2 = "value2", Key3 = "Value3", keY4 = "valuE4" }; var encryptedRouteString = UrlHelperRenderExtensions.CreateEncryptedRouteString( "FormController", "FormAction", "", additionalRouteValues ); var result = encryptedRouteString.DecryptWithMachineKey(); const string expectedResult = "c=FormController&a=FormAction&ar=&key1=value1&key2=value2&Key3=Value3&keY4=valuE4"; Assert.AreEqual(expectedResult, result); }