// 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; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static util.RegexTestCase.assertNotSubString; import static util.RegexTestCase.assertSubString; import fitnesse.http.ResponseParser; import org.junit.Before; import org.junit.Test; public class ShutdownTest { private Shutdown shutdown; @Before public void setUp() throws Exception { shutdown = new Shutdown(); } @Test public void testArgs() throws Exception { assertTrue(shutdown.parseArgs(new String[]{})); assertEquals("localhost", shutdown.hostname); assertEquals(80, shutdown.port); assertEquals(null, shutdown.username); assertEquals(null, shutdown.password); assertTrue(shutdown.parseArgs(new String[]{"-h", "host.com", "-p", "1234", "-c", "user", "pass"})); assertEquals("host.com", shutdown.hostname); assertEquals(1234, shutdown.port); assertEquals("user", shutdown.username); assertEquals("pass", shutdown.password); } @Test public void testBuildRequest() throws Exception { String request = shutdown.buildRequest().getText(); assertSubString("GET /?responder=shutdown", request); assertNotSubString("Authorization: ", request); shutdown.username = "user"; shutdown.password = "pass"; request = shutdown.buildRequest().getText(); assertSubString("Authorization: ", request); } @Test public void testBadServer() throws Exception { try { shutdown.hostname = "http://google.com"; ResponseParser response = shutdown.buildAndSendRequest(); String status = shutdown.checkResponse(response); assertEquals("Not a FitNesse server", status); } catch (Exception e) { } } }