blob: 851263b79e55f7670315b32fb9f771b3de88dcfb [file] [log] [blame]
/* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.portals.pluto.demo.integration.test;
import org.junit.Test;
import static org.apache.portals.pluto.demo.integration.test.Util.*;
/**
*
* @author Kyle Stiemann
*/
public class URLDemoPortletIT extends ParameterPortletsDemoBase {
@Test
public void testURLDemoPortlet() {
navigateToPage("V3.0 URL Tests");
// Test copying no params.
testCustomParameters(1);
clickElement(driver, waitingAsserter, "//a[contains(text(),'1 Copy no params, 0 new')]");
assertNoRenderParametersSet(1);
// Test copying only PRPs.
Parameter publicRenderParameter = new Parameter("Bild", "Bild1");
Parameter renderParameter = new Parameter("test1", "test1");
testParameters(1, publicRenderParameter, renderParameter);
clickElement(driver, waitingAsserter, "//a[contains(text(),'2 Copy public params, 0 new')]");
assertParametersSet(1, publicRenderParameter);
assertParametersNotSet(1, renderParameter);
// Clear parameters.
clickElement(driver, waitingAsserter, "//a[contains(text(),'1 Copy no params, 0 new')]");
assertNoRenderParametersSet(1);
// Test copying all render parameters.
testParameters(1, publicRenderParameter, renderParameter);
clickElement(driver, waitingAsserter, "//a[contains(text(),'3 Copy all params, 0 new')]");
assertParametersSet(1, publicRenderParameter, renderParameter);
// Test copying no params and adding 2 params.
testCustomParameters(1);
clickElement(driver, waitingAsserter, "//a[contains(text(),'4 Copy no params, 2 new')]");
Parameter addedParameter1 = new Parameter("1", "1");
Parameter addedParameter2 = new Parameter("2", "2");
assertParametersSet(1, addedParameter1, addedParameter2);
// Clear parameters.
clickElement(driver, waitingAsserter, "//a[contains(text(),'1 Copy no params, 0 new')]");
assertNoRenderParametersSet(1);
// Test copying only PRPs and adding 2 params.
testParameters(1, publicRenderParameter, renderParameter);
clickElement(driver, waitingAsserter, "//a[contains(text(),'5 Copy public params, 2 new')]");
assertParametersSet(1, publicRenderParameter, addedParameter1, addedParameter2);
assertParametersNotSet(1, renderParameter);
// Clear parameters.
clickElement(driver, waitingAsserter, "//a[contains(text(),'1 Copy no params, 0 new')]");
assertNoRenderParametersSet(1);
// Test copying all render parameters and adding 2 params.
testParameters(1, publicRenderParameter, renderParameter);
clickElement(driver, waitingAsserter, "//a[contains(text(),'6 Copy all params, 2 new')]");
assertParametersSet(1, publicRenderParameter, renderParameter, addedParameter1, addedParameter2);
// Test Resource URL cachablility PAGE.
testParameters(1, publicRenderParameter, renderParameter);
clickElement(driver, waitingAsserter, "//a[contains(text(),'0 ca=PAGE, 0 res params')]");
assertParametersSet(1, publicRenderParameter, renderParameter);
assertNoResourceParametersSet(1);
// Test Resource URL cachablility PORTLET.
driver.navigate().back();
clickElement(driver, waitingAsserter, "//a[contains(text(),'1 ca=PORTLET, 0 res params')]");
assertParametersSet(1, publicRenderParameter, renderParameter);
assertNoResourceParametersSet(1);
// Test Resource URL cachablility FULL.
driver.navigate().back();
clickElement(driver, waitingAsserter, "//a[contains(text(),'2 ca=FULL, 0 res params')]");
assertNoRenderParametersSet(1);
assertNoResourceParametersSet(1);
// Test Resource URL cachablility PAGE with 2 resource params.
driver.navigate().back();
clickElement(driver, waitingAsserter, "//a[contains(text(),'3 ca=PAGE, 2 res params')]");
Parameter addedResourceParameter1 = new Parameter("UrlParm-Resource2", Parameter.Type.RESOURCE, "2");
Parameter addedResourceParameter2 = new Parameter("UrlParm2", Parameter.Type.RESOURCE, "2");
assertParametersSet(1, publicRenderParameter, renderParameter, addedResourceParameter1,
addedResourceParameter2);
// Test Resource URL cachablility PORTLET with 2 resource params.
driver.navigate().back();
clickElement(driver, waitingAsserter, "//a[contains(text(),'4 ca=PORTLET, 2 res params')]");
assertParametersSet(1, publicRenderParameter, renderParameter, addedResourceParameter1,
addedResourceParameter2);
// Test Resource URL cachablility FULL with 2 resource params.
driver.navigate().back();
clickElement(driver, waitingAsserter, "//a[contains(text(),'5 ca=FULL, 2 res params')]");
assertNoRenderParametersSet(1);
assertParametersSet(1, addedResourceParameter1, addedResourceParameter2);
// Test Action URL Parameters copying all Render Parameters.
navigateToPage("V3.0 URL Tests");
testParameters(1, renderParameter);
assertParametersSet(1,
new Parameter("acopy", Parameter.Type.ACTION, "acopy_all"),
new Parameter("pName", Parameter.Type.ACTION, renderParameter.name),
new Parameter("pValues", Parameter.Type.ACTION, renderParameter.firstValue()),
new Parameter("setType", Parameter.Type.ACTION, "setVals"));
assertParametersNotSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"),
renderParameter);
clickElement(driver, waitingAsserter, getXpath(SEND_BUTTON_XPATH, 1));
assertParametersSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"),
renderParameter);
assertParametersNotSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"),
publicRenderParameter);
// Test Action URL Parameters copying public Render Parameters.
clickElement(driver, waitingAsserter, "//input[@name='acopy'][@value='acopy_public'][@type='radio']");
testParameters(1, publicRenderParameter);
assertParametersSet(1,
new Parameter("acopy", Parameter.Type.ACTION, "acopy_public"),
new Parameter("pName", Parameter.Type.ACTION, publicRenderParameter.name),
new Parameter("pValues", Parameter.Type.ACTION, publicRenderParameter.firstValue()));
clickElement(driver, waitingAsserter, getXpath(SEND_BUTTON_XPATH, 1));
assertParametersNotSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"),
renderParameter);
assertParametersSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"),
publicRenderParameter);
// Test Action URL Parameters not copying Render Parameters.
clickElement(driver, waitingAsserter, "//input[@name='acopy'][@value='acopy_none'][@type='radio']");
testParameters(1, addedParameter1);
assertParametersSet(1,
new Parameter("acopy", Parameter.Type.ACTION, "acopy_none"),
new Parameter("pName", Parameter.Type.ACTION, addedParameter1.name),
new Parameter("pValues", Parameter.Type.ACTION, addedParameter1.firstValue()));
clickElement(driver, waitingAsserter, getXpath(SEND_BUTTON_XPATH, 1));
assertNoParametersSet(1, Util.unmodifiableList("Render parameters for the last ActionRequest:"));
}
}