コード例 #1
0
        public void GetWxeFunctionPermanentUrlWithMappedFunctionTypeAndAdditionalUrlParameters()
        {
            string resource = "~/Test.wxe";

            UrlMappingConfiguration.Current.Mappings.Add(new UrlMappingEntry(_functionType, resource));
            string parameter1 = "Value1";

            NameValueCollection additionalUrlParameters = new NameValueCollection();

            additionalUrlParameters.Add("Parameter2", "Value2");

            string expectedUrl = resource.TrimStart('~');
            NameValueCollection expectedQueryString = new NameValueCollection();

            expectedQueryString.Add("Parameter1", parameter1);
            expectedQueryString.Add(WxeHandler.Parameters.WxeReturnToSelf, true.ToString());
            expectedQueryString.Add(additionalUrlParameters);
            expectedUrl += UrlUtility.FormatQueryString(expectedQueryString);

            NavigationCommand command = new NavigationCommand();

            command.Type = CommandType.WxeFunction;
            command.WxeFunctionCommand.TypeName   = _functionTypeName;
            command.WxeFunctionCommand.Parameters = "\"" + parameter1 + "\"";
            string url = command.GetWxeFunctionPermanentUrl(additionalUrlParameters);

            Assert.That(url, Is.Not.Null);
            Assert.That(url, Is.EqualTo(expectedUrl));
        }
コード例 #2
0
        public void GetWxeFunctionPermanentUrlWithDefaultWxeHandlerAndAdditionalUrlParameters()
        {
            WebConfigurationMock.Current = WebConfigurationFactory.GetExecutionEngineWithDefaultWxeHandler();

            string wxeHandler = Remotion.Web.Configuration.WebConfiguration.Current.ExecutionEngine.DefaultWxeHandler;

            NameValueCollection additionalUrlParameters = new NameValueCollection();

            additionalUrlParameters.Add("Parameter2", "Value2");

            string expectedUrl = wxeHandler.TrimStart('~');
            NameValueCollection expectedQueryString = new NameValueCollection();

            expectedQueryString.Add("Parameter1", _wxeFunctionParameter1Value);
            expectedQueryString.Add(WxeHandler.Parameters.WxeReturnToSelf, true.ToString());
            expectedQueryString.Add(additionalUrlParameters);
            expectedQueryString.Add(WxeHandler.Parameters.WxeFunctionType, _functionTypeName);
            expectedUrl += UrlUtility.FormatQueryString(expectedQueryString);

            NavigationCommand command = new NavigationCommand();

            command.Type = CommandType.WxeFunction;
            command.WxeFunctionCommand.TypeName   = _functionTypeName;
            command.WxeFunctionCommand.Parameters = _wxeFunctionParameters;
            string url = command.GetWxeFunctionPermanentUrl(additionalUrlParameters);

            Assert.That(url, Is.Not.Null);
            Assert.That(url, Is.EqualTo(expectedUrl));
        }
コード例 #3
0
        public void RenderWxeFunctionCommand()
        {
            WebConfigurationMock.Current = WebConfigurationFactory.GetExecutionEngineWithDefaultWxeHandler();

            NameValueCollection additionalUrlParameters = new NameValueCollection();

            additionalUrlParameters.Add("Parameter2", "Value2");

            string expectedHref    = _wxeFunctionCommand.GetWxeFunctionPermanentUrl(additionalUrlParameters);
            string expectedOnClick = _onClick;

            _wxeFunctionCommand.RenderBegin(_writer, RenderingFeatures.Default, _postBackEvent, new string[0], _onClick, null, additionalUrlParameters, false, new Style());

            Assert.IsNotNull(_writer.Tag, "Missing Tag");
            Assert.AreEqual(HtmlTextWriterTag.A, _writer.Tag, "Wrong Tag");

            Assert.IsNotNull(_writer.Attributes[HtmlTextWriterAttribute.Href], "Missing Href");
            Assert.AreEqual(expectedHref, _writer.Attributes[HtmlTextWriterAttribute.Href], "Wrong Href");

            Assert.IsNotNull(_writer.Attributes[HtmlTextWriterAttribute.Onclick], "Missing OnClick");
            Assert.AreEqual(expectedOnClick, _writer.Attributes[HtmlTextWriterAttribute.Onclick], "Wrong OnClick");

            Assert.IsNotNull(_writer.Attributes[HtmlTextWriterAttribute.Title], "Missing Title");
            Assert.AreEqual(_toolTip, _writer.Attributes[HtmlTextWriterAttribute.Title], "Wrong Title");

            Assert.IsNotNull(_writer.Attributes[HtmlTextWriterAttribute.Target], "Missing Target");
            Assert.AreEqual(_target, _writer.Attributes[HtmlTextWriterAttribute.Target], "Wrong Target");
        }
コード例 #4
0
        public void GetWxeFunctionPermanentUrlWithoutDefaultWxeHandler()
        {
            WebConfigurationMock.Current = null;
            string parameter1 = "Hello World!";

            NavigationCommand command = new NavigationCommand();

            command.Type = CommandType.WxeFunction;
            command.WxeFunctionCommand.TypeName   = _functionTypeName;
            command.WxeFunctionCommand.Parameters = "\"" + parameter1 + "\"";
            command.GetWxeFunctionPermanentUrl();
        }
コード例 #5
0
        public void GetWxeFunctionPermanentUrlWithMappedFunctionTypeAndInvalidTypeNameMappingIDCombination()
        {
            string mappingID = "Test";
            string resource  = "~/Test.wxe";
            Type   functionWithNestingType = typeof(TestFunctionWithNesting);

            UrlMappingConfiguration.Current.Mappings.Add(new UrlMappingEntry(mappingID, functionWithNestingType, resource));
            string parameter1 = "Value1";

            NavigationCommand command = new NavigationCommand();

            command.Type = CommandType.WxeFunction;
            command.WxeFunctionCommand.MappingID  = mappingID;
            command.WxeFunctionCommand.TypeName   = _functionTypeName;
            command.WxeFunctionCommand.Parameters = "\"" + parameter1 + "\"";
            command.GetWxeFunctionPermanentUrl();
        }