/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * (c) 2001 - 2013 OpenPlans * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.script.web; import static org.junit.Assert.*; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.apache.wicket.markup.repeater.data.DataView; import org.geoserver.platform.GeoServerExtensions; import org.geoserver.script.ScriptManager; import org.geoserver.script.ScriptType; import org.geoserver.web.GeoServerWicketTestSupport; import org.junit.Before; import org.junit.Test; public class ScriptPageTest extends GeoServerWicketTestSupport { private ScriptManager scriptManager; @Before public void init() throws IOException { // Add a few scripts scriptManager = GeoServerExtensions.bean(ScriptManager.class); File appDir = scriptManager.script("apps/app1").dir(); FileUtils.writeStringToFile(new File(appDir, "main.py"), "print 'foo'"); File wpsDir = scriptManager.script("wps").dir(); FileUtils.writeStringToFile(new File(wpsDir, "buffer.groovy"), "buffer"); // Login and load the page login(); tester.startPage(ScriptPage.class); } @Test public void testLoad() { tester.assertRenderedPage(ScriptPage.class); tester.assertNoErrorMessage(); DataView dv = (DataView) tester.getComponentFromLastRenderedPage("table:listContainer:items"); assertEquals(dv.size(), 2); Script script = (Script) dv.getDataProvider().iterator(0, 1).next(); assertEquals("buffer", script.getName()); assertEquals(ScriptType.WPS, ScriptType.getByLabel(script.getType())); } }