package com.ui4j.test; import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; import com.ui4j.api.browser.BrowserEngine; import com.ui4j.api.browser.BrowserFactory; import com.ui4j.api.browser.BrowserType; import com.ui4j.api.browser.Page; import com.ui4j.api.browser.PageConfiguration; public class JavaScriptEngineTest { private static Page page; @BeforeClass public static void beforeTest() { String url = ElementTest.class.getResource("/TestPage.html").toExternalForm(); BrowserEngine browser = BrowserFactory.getBrowser(BrowserType.WebKit); PageConfiguration config = new PageConfiguration(); config.setUserAgent("foo bar"); page = browser.navigate(url, config); } @Test public void testBoolean() { Object executeScript = page.executeScript("1 === 1"); Assert.assertEquals(Boolean.class, executeScript.getClass()); } @Test public void testString() { Object result = page.executeScript("'test string'"); Assert.assertEquals(String.class, result.getClass()); } @Test public void testLong() { Object result = page.executeScript("'20'"); Assert.assertEquals(Long.class, result.getClass()); } @Test public void testDouble() { Object result = page.executeScript("'20.20'"); Assert.assertEquals(Double.class, result.getClass()); } @Test public void testNull() { Object result = page.executeScript("null"); Assert.assertNull(result); } @Test public void testUndefined() { Object result = page.executeScript("undefined"); Assert.assertEquals("undefined", result); } @Test public void testUserAgent() { Assert.assertEquals("foo bar", page.executeScript("navigator.userAgent")); } }