Is it possible to warn if Java API 6 is used if I only have 1.6 installed? Setting 1.5 compliance in Eclipse didn't help.
Alex On 05/14/2010 01:18 PM, Thomas Mortagne wrote: > On Thu, May 13, 2010 at 22:51, sdumitriu <[email protected] >> wrote: > >> Author: sdumitriu >> Date: 2010-05-13 22:51:35 +0200 (Thu, 13 May 2010) >> New Revision: 28862 >> >> Added: >> >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/TemplateTest.java >> >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/elements/WikiEditPage.java >> Log: >> XWIKI-2580: Improve file access sandboxing >> Added some more tests. >> Patch from Alex Busenius applied with minor changes. >> >> Added: >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/TemplateTest.java >> =================================================================== >> --- >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/TemplateTest.java >> (rev 0) >> +++ >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/TemplateTest.java >> 2010-05-13 20:51:35 UTC (rev 28862) >> @@ -0,0 +1,135 @@ >> +/* >> + * See the NOTICE file distributed with this work for additional >> + * information regarding copyright ownership. >> + * >> + * This is free software; you can redistribute it and/or modify it >> + * under the terms of the GNU Lesser General Public License as >> + * published by the Free Software Foundation; either version 2.1 of >> + * the License, or (at your option) any later version. >> + * >> + * This software is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> + * Lesser General Public License for more details. >> + * >> + * You should have received a copy of the GNU Lesser General Public >> + * License along with this software; if not, write to the Free >> + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA >> + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. >> + */ >> +package org.xwiki.it.ui; >> + >> +import junit.framework.Assert; >> + >> +import org.junit.Before; >> +import org.junit.Test; >> +import org.openqa.selenium.By; >> +import org.xwiki.it.ui.elements.WikiEditPage; >> +import org.xwiki.it.ui.framework.AbstractAdminAuthenticatedTest; >> + >> + >> +/** >> + * Test template handling >> + * >> + * @version $Id$ >> + * @since 2.4M1 >> + */ >> +public class TemplateTest extends AbstractAdminAuthenticatedTest >> +{ >> + /** Page used for testing: Main.TemplateTest */ >> + private WikiEditPage editPage; >> + >> + >> + @Before >> + @Override >> + public void setUp() >> + { >> + super.setUp(); >> + >> + editPage = new WikiEditPage(getDriver()); >> + } >> + >> + /** >> + * Test that velocity is rendered >> + */ >> + @Test >> + public void testHelloVelocity() >> + { >> + String hello = "Hello Velocity Test Test Test"; >> + saveVelocity(hello); >> + >> >> Assert.assertTrue(getDriver().findElement(By.id("xwikicontent")).getText().contains(hello)); >> + } >> + >> + /** >> + * Test that an included existing template is displayed correctly >> + */ >> + @Test >> + public void testCorrectTemplate() >> + { >> + saveVelocity(includeTemplate("code.vm"), true); >> + Assert.assertNotNull(getDriver().findElement( >> + >> By.xpath("//d...@id='xwikicontent']//textar...@class='wiki-code']"))); >> + } >> + >> + /** >> + * See XWIKI-2580 >> + */ >> + @Test >> + public void testWrongTemplate() >> + { >> + saveVelocity(includeTemplate("../../")); >> + Assert.assertTrue("root directory", >> + >> getDriver().findElement(By.id("xwikicontent")).getText().isEmpty()); >> > > String#isEmpty is JAVA 6 API so that will fail to build with our maven > configuration. > > >> + >> + saveVelocity(includeTemplate("asdfasdf")); >> + Assert.assertTrue("not existing template", >> + >> getDriver().findElement(By.id("xwikicontent")).getText().isEmpty()); >> + >> + saveVelocity(includeTemplate("../redirect")); >> + Assert.assertTrue("file in the parent directory", >> + >> getDriver().findElement(By.id("xwikicontent")).getText().isEmpty()); >> + >> + saveVelocity(includeTemplate("../WEB-INF/version.properties")); >> + Assert.assertTrue("file in the wrong directory", >> + >> getDriver().findElement(By.id("xwikicontent")).getText().isEmpty()); >> + >> + >> >> saveVelocity(includeTemplate("/chw/../../WEB-INF/../WEB-INF/lib/../version.properties")); >> + Assert.assertTrue("file in the wrong directory, not normalized >> path", >> + >> getDriver().findElement(By.id("xwikicontent")).getText().isEmpty()); >> + } >> + >> + /** >> + * @see #saveVelocity(String, boolean) >> + */ >> + private void saveVelocity(String code) >> + { >> + saveVelocity(code, false); >> + } >> + >> + /** >> + * Save a page with given velocity code and switch to view. Encloses >> <code>code</code> >> + * into the {{velocity}} macro and optionally also {{html}} macro. >> + * >> + * @param code velocity code to save >> + * @param html additionally enclose <code>code</code> in {{html}} if >> true >> + */ >> + private void saveVelocity(String code, boolean html) >> + { >> + editPage.switchToEdit("Main", "TemplateTest"); >> + if (html) { >> + code = "{{html wiki=\"false\"}}\n" + code + "\n{{/html}}"; >> + } >> + editPage.setContent("{{velocity filter=\"none\"}}\n" + code + >> "\n{{/velocity}}\n"); >> + editPage.clickSaveAndView(); >> + } >> + >> + /** >> + * Return velocity code to include a velocity template >> <code>name</code> >> + * >> + * @param name template to use >> + */ >> + private String includeTemplate(String name) >> + { >> + return "#template(\"" + name + "\")\n"; >> + } >> +} >> >> >> Property changes on: >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/TemplateTest.java >> ___________________________________________________________________ >> Name: svn:keywords >> + Author Id Revision HeadURL >> Name: svn:eol-style >> + native >> >> Added: >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/elements/WikiEditPage.java >> =================================================================== >> --- >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/elements/WikiEditPage.java >> (rev 0) >> +++ >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/elements/WikiEditPage.java >> 2010-05-13 20:51:35 UTC (rev 28862) >> @@ -0,0 +1,108 @@ >> +/* >> + * See the NOTICE file distributed with this work for additional >> + * information regarding copyright ownership. >> + * >> + * This is free software; you can redistribute it and/or modify it >> + * under the terms of the GNU Lesser General Public License as >> + * published by the Free Software Foundation; either version 2.1 of >> + * the License, or (at your option) any later version. >> + * >> + * This software is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> + * Lesser General Public License for more details. >> + * >> + * You should have received a copy of the GNU Lesser General Public >> + * License along with this software; if not, write to the Free >> + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA >> + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. >> + */ >> +package org.xwiki.it.ui.elements; >> + >> +import org.openqa.selenium.WebDriver; >> +import org.openqa.selenium.WebElement; >> +import org.openqa.selenium.support.FindBy; >> +import org.xwiki.it.ui.framework.TestUtils; >> + >> +/** >> + * Represents the common actions possible on all Pages when using the >> "edit" action with "wiki" >> + * editor >> + * >> + * @version $Id$ >> + * @since 2.4M1 >> + */ >> +public class WikiEditPage extends EditPage >> +{ >> + @FindBy(id = "xwikidoctitleinput") >> + private WebElement titleInput; >> + >> + @FindBy(id = "content") >> + private WebElement contentText; >> + >> + @FindBy(name = "minorEdit") >> + private WebElement minorEditCheckBox; >> + >> + @FindBy(name = "comment") >> + private WebElement commentInput; >> + >> + >> + public WikiEditPage(WebDriver driver) >> + { >> + super(driver); >> + } >> + >> + /** >> + * Set the <code>title</code> of the page >> + * >> + * @param title >> + */ >> + public void setTitle(String title) >> + { >> + titleInput.clear(); >> + titleInput.sendKeys(title); >> + } >> + >> + /** >> + * Set the <code>content</code> of the page >> + * >> + * @param content >> + */ >> + public void setContent(String content) >> + { >> + contentText.clear(); >> + contentText.sendKeys(content); >> + } >> + >> + /** >> + * Set the minor edit check box value >> + * >> + * @param value >> + */ >> + public void setMinorEdit(boolean value) >> + { >> + if (minorEditCheckBox.isSelected() != value) >> + minorEditCheckBox.toggle(); >> + } >> + >> + /** >> + * Set <code>comment</code> for this change >> + * >> + * @param comment >> + */ >> + public void setEditComment(String comment) >> + { >> + commentInput.clear(); >> + commentInput.sendKeys(comment); >> + } >> + >> + /** >> + * Start editing page, create first if needed >> + * >> + * @param space >> + * @param page >> + */ >> + public void switchToEdit(String space, String page) >> + { >> + TestUtils.gotoPage(space, page, "edit", "editor=wiki", >> getDriver()); >> + } >> +} >> >> >> Property changes on: >> enterprise/trunk/distribution-test/ui-tests/src/test/it/org/xwiki/it/ui/elements/WikiEditPage.java >> ___________________________________________________________________ >> Name: svn:keywords >> + Author Id Revision HeadURL >> Name: svn:eol-style >> + native >> >> _______________________________________________ >> notifications mailing list >> [email protected] >> http://lists.xwiki.org/mailman/listinfo/notifications >> > > > _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

