package com.googlecode.jmeter.plugins.webdriver.config.gui; import com.googlecode.jmeter.plugins.webdriver.config.FirefoxDriverConfig; import kg.apc.emulators.TestJMeterUtils; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import static org.hamcrest.CoreMatchers.*; import static org.junit.Assert.assertThat; public class FirefoxDriverConfigGuiTest { private FirefoxDriverConfigGui gui; @BeforeClass public static void setupJMeterEnv() { TestJMeterUtils.createJmeterEnv(); } @Before public void createConfig() { gui = new FirefoxDriverConfigGui(); } @Test public void shouldReturnStaticLabel() { assertThat(gui.getStaticLabel(), containsString("Firefox Driver Config")); } @Test public void shouldReturnWikiPage() { assertThat(gui.getWikiPage(), is("FirefoxDriverConfig")); } @Test public void shouldReturnCanonicalClassNameAsLabelResource() { assertThat(gui.getLabelResource(), is(gui.getClass().getCanonicalName())); } @Test public void shouldReturnFirefoxDriverConfig() { assertThat(gui.createTestElement(), is(instanceOf(FirefoxDriverConfig.class))); } @Test public void shouldOverrideUserAgent() { gui.userAgentOverrideCheckbox.setSelected(true); gui.userAgentOverrideText.setText("some user agent"); final FirefoxDriverConfig testElement = (FirefoxDriverConfig) gui.createTestElement(); assertThat(testElement.getUserAgentOverride(), is("some user agent")); } @Test public void shouldNotOverrideUserAgent() { gui.userAgentOverrideCheckbox.setSelected(false); gui.userAgentOverrideText.setText("some user agent"); final FirefoxDriverConfig testElement = (FirefoxDriverConfig) gui.createTestElement(); assertThat(testElement.getUserAgentOverride(), is(not("some user agent"))); } @Test public void shouldResetValuesOnClearGui() { gui.userAgentOverrideText.setText("user agent"); gui.userAgentOverrideCheckbox.setSelected(true); gui.clearGui(); assertThat(gui.userAgentOverrideText.getText(), is("")); assertThat(gui.userAgentOverrideCheckbox.isSelected(), is(false)); } @Test public void shouldSetFirefoxDriverConfigOnConfigure() { FirefoxDriverConfig config = new FirefoxDriverConfig(); config.setUserAgentOverride("user-agent"); config.setUserAgentOverridden(true); gui.configure(config); assertThat(gui.userAgentOverrideText.getText(), is(config.getUserAgentOverride())); assertThat(gui.userAgentOverrideCheckbox.isSelected(), is(config.isUserAgentOverridden())); } @Test public void shouldEnableProxyAndExperimental() throws Exception { assertThat(gui.isExperimentalEnabled(), is(true)); assertThat(gui.isProxyEnabled(), is(true)); } }