// Copyright (C) 2003-2009 by Object Mentor, Inc. All rights reserved. // Released under the terms of the CPL Common Public License version 1.0. package fitnesse.slim; import java.io.IOException; import fitnesse.slim.fixtureInteraction.InteractionDemo; import org.junit.Test; import static org.junit.Assert.*; public class SlimServiceTest extends SlimServiceTestBase { @Override protected String getImport() { return "fitnesse.slim.test"; } @Override protected void startSlimService() throws IOException { SlimService.Options options = SlimService.parseCommandLine(new String[]{"8099"}); startWithFactoryAsync(JavaSlimFactory.createJavaSlimFactory(options), options); } @Override protected void closeSlimService() throws InterruptedException { waitForServiceToStopAsync(); assertFalse(service.isAlive()); } @Override protected String expectedExceptionMessage() { return "java.lang.Exception: This is my exception"; } @Override protected String expectedStopTestExceptionMessage() { return "ABORT_SLIM_TEST:fitnesse.slim.test.TestSlim$StopTestException: This is a stop test exception"; } @Test public void nullInteractionService_returnsDefaultClass() { String defaultInteractionName = JavaSlimFactory.createInteraction(null).getClass().getName(); SlimService.Options options = SlimService.parseCommandLine(new String[]{"8099"}); assertEquals(defaultInteractionName, options.interaction.getClass().getName()); } @Test public void definedInteractionService_returnsCorrectClass() { String interactionClassName = InteractionDemo.class.getName(); SlimService.Options options = SlimService.parseCommandLine(new String[]{"-i", interactionClassName, "8099"}); assertEquals(interactionClassName, options.interaction.getClass().getName()); } @Test public void undefinedStatementTimeout() { SlimService.Options options = SlimService.parseCommandLine(new String[]{"8099"}); assertNull(options.statementTimeout); } @Test public void definedStatementTimeout_returnsTimeout() { SlimService.Options options = SlimService.parseCommandLine(new String[]{"-s", "1000", "8099"}); assertEquals(1000, (int) options.statementTimeout); } }