package com.pugh.sockso; import com.pugh.sockso.gui.AppFrame; import com.pugh.sockso.web.HttpServer; import com.pugh.sockso.tests.SocksoTestCase; import joptsimple.OptionParser; import joptsimple.OptionSet; public class MainTest extends SocksoTestCase { public void testGetLocale() throws Exception { final OptionParser parser = Options.getParser(); final OptionSet stdOptions = parser.parse( new String[] {} ); final OptionSet nbOptions = parser.parse( new String[] { "--locale=nb" } ); assertEquals( "en", Main.getLocale(stdOptions) ); // default assertEquals( "nb", Main.getLocale(nbOptions) ); } public void testGetUseGui() throws Exception { final OptionParser parser = Options.getParser(); final OptionSet guiOptions = parser.parse( new String[] {} ); final OptionSet noGuiOptions = parser.parse( new String[] { "--nogui" } ); assertTrue( Main.getUseGui(guiOptions) ); assertFalse( Main.getUseGui(noGuiOptions) ); } public void testGettingSavedPort() { final Properties p = new StringProperties(); p.set( Constants.SERVER_PORT, 1234 ); assertEquals( 1234, Main.getSavedPort(p) ); } public void testDefaultPortReturnedWhenPortIsInvalid() { final Properties p = new StringProperties(); p.set( Constants.SERVER_PORT, "INVALID PORT" ); assertEquals( HttpServer.DEFAULT_PORT, Main.getSavedPort(p) ); } public void testGettingProtocolWhenSslSpecified() { final OptionParser parser = Options.getParser(); final OptionSet sslOptions = parser.parse( new String[] { "--ssl" } ); assertEquals( Main.getProtocol(sslOptions), "https" ); } public void testGettingProtocolDefaultsToHttp() { final OptionParser parser = Options.getParser(); final OptionSet stdOptions = parser.parse( new String[] {} ); assertEquals( Main.getProtocol(stdOptions), "http" ); } }