diff --git a/src/main/java/org/clojars/kyleannen/javaserver/ConfigRoutes.java b/src/main/java/org/clojars/kyleannen/javaserver/ConfigRoutes.java index 793b662..caff9d4 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/ConfigRoutes.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/ConfigRoutes.java @@ -8,20 +8,20 @@ public class ConfigRoutes { this.initialize(); } - void initialize() { + private void initialize() { this.initializeGetRoutes(); this.initializePostRoutes(); //custom routes go here: } - void initializeGetRoutes() { + private void initializeGetRoutes() { ControllerForm controllerForm = new ControllerForm(); ControllerFile controllerFile = new ControllerFile(); router.addRoute("GET","/resources/form/index.html", controllerFile); router.addRoute("GET", "/form", controllerForm); } - void initializePostRoutes() { + private void initializePostRoutes() { ControllerPost controllerPost = new ControllerPost(); router.addRoute("POST", "/resources/form", controllerPost); } diff --git a/src/main/java/org/clojars/kyleannen/javaserver/ControllerDirectory.java b/src/main/java/org/clojars/kyleannen/javaserver/ControllerDirectory.java index 08f6284..072bbca 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/ControllerDirectory.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/ControllerDirectory.java @@ -19,7 +19,7 @@ public ResponseParameters getResponse(RequestParameters requestParameters) throw .build(); } - String getDirectoryListing(String filePath, String relativePath) { + protected String getDirectoryListing(String filePath, String relativePath) { ArrayList directoryContents = filesList(filePath); ArrayList formattedDirectory = formatDirectoryHtml(directoryContents, relativePath); StringBuilder directoryListing = new StringBuilder(); @@ -29,7 +29,7 @@ String getDirectoryListing(String filePath, String relativePath) { return directoryListing.toString(); } - ArrayList filesList(String filePath) { + protected ArrayList filesList(String filePath) { File fullFilePath = new File(filePath); try { return new ArrayList<>(Arrays.asList(fullFilePath.list())); @@ -38,7 +38,7 @@ ArrayList filesList(String filePath) { } } - ArrayList formatDirectoryHtml(ArrayList directoryList, String relativePath) { + protected ArrayList formatDirectoryHtml(ArrayList directoryList, String relativePath) { ArrayList directoryResponseMessage = new ArrayList<>(); directoryResponseMessage.add("\n"); diff --git a/src/main/java/org/clojars/kyleannen/javaserver/RequestHandler.java b/src/main/java/org/clojars/kyleannen/javaserver/RequestHandler.java index 12d60fd..f9a4c76 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/RequestHandler.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/RequestHandler.java @@ -13,7 +13,7 @@ public class RequestHandler implements Runnable { RequestHandler(String directoryPath, Socket socket, - Logger logger, + LoggerInterface logger, RouterInterface router, SendInterface sendInterface, ReadInterface readInterface) { diff --git a/src/main/java/org/clojars/kyleannen/javaserver/RequestParameters.java b/src/main/java/org/clojars/kyleannen/javaserver/RequestParameters.java index 156eee1..813680d 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/RequestParameters.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/RequestParameters.java @@ -24,21 +24,21 @@ private RequestParameters(RequestBuilder builder) { this.params = builder.params; } - String getDirectoryPath() { return directoryPath; } + public String getDirectoryPath() { return directoryPath; } - String getHttpVerb() { return httpVerb; } + public String getHttpVerb() { return httpVerb; } - String getRequestPath() { return requestPath; } + public String getRequestPath() { return requestPath; } - String getHost() { return host; } + public String getHost() { return host; } - String getUserAgent() { return userAgent; } + public String getUserAgent() { return userAgent; } - String[] getAccept() { return accept; } + public String[] getAccept() { return accept; } - String getBodyContent() { return bodyContent; } + public String getBodyContent() { return bodyContent; } - String getParams() { return params; } + public String getParams() { return params; } public static class RequestBuilder { private final String directoryPath; @@ -78,7 +78,7 @@ public RequestBuilder setHost(ArrayList httpMessage) { String host = null; for(String line: httpMessage) { String headerField = line.split(" ")[0]; - if(headerField.equals("Host:")) { + if("Host:".equals(headerField)) { host = line.split(" ")[1].trim(); } } diff --git a/src/main/java/org/clojars/kyleannen/javaserver/Routes.java b/src/main/java/org/clojars/kyleannen/javaserver/Routes.java index 071e90b..d12d945 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/Routes.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/Routes.java @@ -21,7 +21,7 @@ Set getRoutePaths() { } } - Boolean routeExists(String route) { return this.routes.keySet().contains(route); } + protected Boolean routeExists(String route) { return this.routes.keySet().contains(route); } public ResponseParameters getResponse(RequestParameters requestParameters) throws IOException { String path = requestParameters.getRequestPath(); diff --git a/src/main/java/org/clojars/kyleannen/javaserver/Server.java b/src/main/java/org/clojars/kyleannen/javaserver/Server.java index 8cd45b6..d8e63a7 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/Server.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/Server.java @@ -5,7 +5,7 @@ import java.util.concurrent.ExecutorService; public class Server implements Runnable{ - private Logger logger; + private LoggerInterface logger; private int portNumber = 3300; private Boolean serverRunning = true; private String directoryPath = System.getProperty("user.dir"); @@ -21,22 +21,18 @@ public class Server implements Runnable{ SendInterface sendInterface, Router router, LoggerInterface logger) { - this.logger = new Logger(); - portNumber = this.setPortNumber(portNumber, args); - directoryPath = this.setDirectoryPath(directoryPath, args, logger); - //logger.log("Serving directory: " + directoryPath); - //this.announceServer(portNumber,this.logger); - - this.requestExecutor = requestExecutor; + this.logger = logger; this.router = router; this.readInterface = readInterface; this.sendInterface = sendInterface; + this.requestExecutor = requestExecutor; + portNumber = this.setPortNumber(portNumber, args); + directoryPath = this.setDirectoryPath(directoryPath, args); new ConfigRoutes(this.router); } @Override public void run() { - this.announceServer(portNumber, logger); ServerSocket serverSocket; try { serverSocket = new ServerSocket(portNumber); @@ -54,19 +50,24 @@ public void run() { } } - private void announceServer(int portNumber, Logger logger) { - String outputMessage = "com.github.kyleannen.javaserver.Server started at: http://localhost:" + - Integer.toString(portNumber); - //logger.log(outputMessage); + void stop() { + serverRunning = false; + } + + String getDirectoryPath() { + return this.directoryPath; } - private String setDirectoryPath(String directPath, String[] args, LoggerInterface logger) { + int getPortNumber() { + return this.portNumber; + } + + private String setDirectoryPath(String directPath, String[] args) { for(int i = 0; i < args.length; i++) { if(args[i].equals("-d") && new File(args[i + 1]).isDirectory()) { return args[i + 1]; } } -// logger.log("No valid directory path provided."); return directPath; } @@ -78,16 +79,4 @@ private int setPortNumber(int portNum, String[] args) { } return portNum; } - - int getPortNumber() { - return this.portNumber; - } - - String getDirectoryPath() { - return this.directoryPath; - } - - void stop() { - serverRunning = false; - } } diff --git a/src/main/java/org/clojars/kyleannen/javaserver/ShutdownHook.java b/src/main/java/org/clojars/kyleannen/javaserver/ShutdownHook.java index 312378d..4d6a626 100644 --- a/src/main/java/org/clojars/kyleannen/javaserver/ShutdownHook.java +++ b/src/main/java/org/clojars/kyleannen/javaserver/ShutdownHook.java @@ -3,8 +3,8 @@ import java.util.concurrent.ExecutorService; public class ShutdownHook extends Thread{ - Server httpServer; - ExecutorService requestExecutor; + private Server httpServer; + private ExecutorService requestExecutor; ShutdownHook(Server httpServer, ExecutorService requestExecutor) { this.httpServer = httpServer; diff --git a/src/test/java/org/clojars/kyleannen/javaserver/ConfigFileDownloadsTest.java b/src/test/java/org/clojars/kyleannen/javaserver/ConfigFileDownloadsTest.java index 6be4f55..2169e13 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/ConfigFileDownloadsTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/ConfigFileDownloadsTest.java @@ -8,10 +8,6 @@ import java.util.ArrayList; public class ConfigFileDownloadsTest { - @Test - void configFileDownloadsCanBeInitialized() { - ConfigFileDownloads configFileDownloads = new ConfigFileDownloads(); - } @Test void configFileIsDownloadableReturnsCorrectBoolean() { diff --git a/src/test/java/org/clojars/kyleannen/javaserver/ConfigureServerTest.java b/src/test/java/org/clojars/kyleannen/javaserver/ConfigureServerTest.java index e20c53f..197bce2 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/ConfigureServerTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/ConfigureServerTest.java @@ -7,7 +7,7 @@ public class ConfigureServerTest { @Test - void configureServerReturnsAServerWithPortConfiguredWhenPortPassed() { + public void configureServerReturnsAServerWithPortConfiguredWhenPortPassed() { String testPort = "3333"; String[] args = new String[]{"-p", testPort}; Router testRouter = new Router(); @@ -16,7 +16,7 @@ void configureServerReturnsAServerWithPortConfiguredWhenPortPassed() { } @Test - void configureServerReturnsAServerWithDirectoryConfiguredWhenDirectoryPassed() { + public void configureServerReturnsAServerWithDirectoryConfiguredWhenDirectoryPassed() { String testDirectory = System.getProperty("user.dir") + "/resources"; String[] args = new String[]{"-d", testDirectory}; Router router = new Router(); diff --git a/src/test/java/org/clojars/kyleannen/javaserver/ControllerPostTest.java b/src/test/java/org/clojars/kyleannen/javaserver/ControllerPostTest.java index b6663f0..41f96c5 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/ControllerPostTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/ControllerPostTest.java @@ -32,12 +32,6 @@ class ControllerPostTest { .build(); } - - @Test - void postClassExists(){ - ControllerPost post = new ControllerPost(); - } - @Test void postWillReturnAResponse() throws IOException { ControllerPost post = new ControllerPost(); @@ -55,12 +49,4 @@ void parseFormDataParsesFormData() throws UnsupportedEncodingException { assertEquals("annen", parsedData.get("last_name")); assertEquals("kannen@gmail.com", parsedData.get("email")); } - - @Test - void saveFormDataSavesFormData() throws IOException { - String filePath = System.getProperty("user.dir") + "/resources/form/form-result.html"; - ControllerPost post = new ControllerPost(); - HashMap parsedData = post.parseFormData(testRequestParams.getBodyContent()); - assertEquals(true, new File(filePath).exists()); - } } \ No newline at end of file diff --git a/src/test/java/org/clojars/kyleannen/javaserver/LoggerTest.java b/src/test/java/org/clojars/kyleannen/javaserver/LoggerTest.java index 86fb7e1..9b51143 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/LoggerTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/LoggerTest.java @@ -4,15 +4,6 @@ public class LoggerTest { - @Test - void loggerCanBeInitialized() { - try { - Logger logger = new Logger(); - } catch (Exception e) { - assert(false); - } - } - @Test void loggerLogCanBeCalled() { Logger logger = new Logger(); diff --git a/src/test/java/org/clojars/kyleannen/javaserver/RequestHandlerTest.java b/src/test/java/org/clojars/kyleannen/javaserver/RequestHandlerTest.java index 9abafa5..7fb68e0 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/RequestHandlerTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/RequestHandlerTest.java @@ -10,10 +10,10 @@ class RequestHandlerTest extends TestDirectorySetup { private Integer startPort1 = 2020; - LoggerInterface logger = new LoggerInterface() { @Override public void log(String string) { + //empty as a mock } }; diff --git a/src/test/java/org/clojars/kyleannen/javaserver/ResponseParametersTest.java b/src/test/java/org/clojars/kyleannen/javaserver/ResponseParametersTest.java index fbd6a5e..898484d 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/ResponseParametersTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/ResponseParametersTest.java @@ -18,7 +18,8 @@ void responseParameterContainsCorrectResponseStatus() { ResponseParameters responseParameters = new ResponseParameters.ResponseBuilder(200) .build(); String expectedStatus = "HTTP/1.1 200 OK\r\n"; - String actaulStatus = responseParameters.getResponseStatus(); + String actualStatus = responseParameters.getResponseStatus(); + assertEquals(expectedStatus, actualStatus); } @Test diff --git a/src/test/java/org/clojars/kyleannen/javaserver/RouterTest.java b/src/test/java/org/clojars/kyleannen/javaserver/RouterTest.java index 7852112..fb012de 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/RouterTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/RouterTest.java @@ -15,12 +15,6 @@ public ResponseParameters getResponse(RequestParameters requestParameters) { } } - - @Test - void RouterCanBeInstantiated() { - Router router = new Router(); - } - @Test void routerCanAddRouter() { Router router = new Router(); diff --git a/src/test/java/org/clojars/kyleannen/javaserver/RoutesTest.java b/src/test/java/org/clojars/kyleannen/javaserver/RoutesTest.java index 3821844..cd8bfdb 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/RoutesTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/RoutesTest.java @@ -17,16 +17,6 @@ public ResponseParameters getResponse(RequestParameters requestParameters) { } } - @Test - void routeCanBeInitialized() { - try { - Routes testRoutes = new Routes(); - assert(true); - } catch (Exception e){ - assert(false); - } - } - @Test void routeCanBeAddedToRoutes() { Routes testRoutes = new Routes(); diff --git a/src/test/java/org/clojars/kyleannen/javaserver/SendResponseTest.java b/src/test/java/org/clojars/kyleannen/javaserver/SendResponseTest.java index 14854aa..37dde52 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/SendResponseTest.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/SendResponseTest.java @@ -13,9 +13,13 @@ public class SendResponseTest { Server server; class MockLogger implements LoggerInterface { - + String string; @Override public void log(String string) { + this.string = string; + } + public String getLog() { + return this.string; } } diff --git a/src/test/java/org/clojars/kyleannen/javaserver/TestDirectorySetup.java b/src/test/java/org/clojars/kyleannen/javaserver/TestDirectorySetup.java index 2254c14..20de6c8 100644 --- a/src/test/java/org/clojars/kyleannen/javaserver/TestDirectorySetup.java +++ b/src/test/java/org/clojars/kyleannen/javaserver/TestDirectorySetup.java @@ -18,7 +18,6 @@ public class TestDirectorySetup { @BeforeAll static void generateTestFileStructure() throws IOException { - ArrayList files = new ArrayList<>(); List lines = Arrays.asList("test\r\n\r\ntest","test\n"); File dir = new File("./TestDirectory"); File dir2 = new File("./TestEmpty");