On Fri, May 14, 2010 at 13:44, Alex Busenius <[email protected]>wrote:
> 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. > Yes, Eclipse does not manage API constraints very well. I'm using real 1.5 JVM inside Eclipse (i'm using 6 for Eclipse itself but setting putting a 1.5 java install as default JRE in Preferences->Java->Installed JREs). > > 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 > -- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

