Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package logger.tests;
- import static org.junit.Assert.*;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.io.UnsupportedEncodingException;
- import java.util.ArrayList;
- import javax.swing.JCheckBox;
- import javax.swing.JFrame;
- import javax.swing.JTextArea;
- import org.junit.After;
- import org.junit.AfterClass;
- import org.junit.Before;
- import org.junit.FixMethodOrder;
- import org.junit.Rule;
- import org.junit.Test;
- import org.junit.rules.TemporaryFolder;
- import org.junit.runners.MethodSorters;
- import org.mockito.Mockito;
- import logger.server.ClientHandler;
- import logger.server.ClientWrapper;
- import logger.server.ServerFrame;
- import logger.server.ServerUtilities;
- import logger.server.SimpleServerFrame;
- public class TestServerUtilities {
- private ClientHandler client;
- @Rule
- public TemporaryFolder folder = new TemporaryFolder();
- @Before
- public void initialiseClientHandler() {
- client = new ClientHandler(null, 0, null);
- JCheckBox box = new JCheckBox();
- client.setBox(box);
- JTextArea ignored = Mockito.mock(JTextArea.class);
- ServerUtilities.setOutput(ignored);
- ServerUtilities.setServerFrame(Mockito.mock(ServerFrame.class));
- }
- @Test
- public void testEnableFileSaving() throws IOException {
- ServerUtilities.setDirPath(folder.newFolder("TEST").getPath());
- ServerUtilities.enableFileSaving();
- assertTrue(ServerUtilities.getFullLogFile().exists());
- File tmpDir = new File(ServerUtilities.getDirPath());
- File[] files = tmpDir.listFiles();
- assertEquals(1, files.length);
- assertEquals(ServerUtilities.getFullLogFile(), files[0]);
- ServerUtilities.getFileWriter().close();
- ServerUtilities.getFullLogFile().delete();
- ServerUtilities.deleteFilesFromDirectory(ServerUtilities.getDirPath());
- }
- @Test
- public void testSetName() {
- client.setName("test");
- assertEquals("test", client.getName());
- }
- @Test
- public void testAddToList() {
- ArrayList<ClientHandler> testList = ServerUtilities.getClientList();
- ServerUtilities.addToList(client);
- assertEquals(1, testList.size());
- }
- @Test
- public void testDeleteClientLogFile() {
- client.createLogFile("test");
- File testFile = client.getLogFile();
- assertTrue(testFile.exists());
- ServerUtilities.deleteClientLogFile(client);
- assertFalse(testFile.exists());
- }
- @Test
- public void testParseLogs() throws IOException {
- File test1 = folder.newFile("test2.txt");
- PrintWriter writer = new PrintWriter(test1, "UTF-8");
- writer.println("test");
- writer.println("test2");
- writer.println("hello");
- writer.println("end");
- writer.close();
- BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(test1), "UTF-8"));
- ServerUtilities.parseLogs(br, client);
- test1.delete();
- }
- @Test
- public void testDeleteFilesFromDirectory() throws IOException {
- File test1 = folder.newFile("test1.txt");
- File test2 = folder.newFile("test2.txt");
- assertTrue(test1.exists());
- assertTrue(test2.exists());
- ServerUtilities.deleteFilesFromDirectory(folder.getRoot().toString());
- assertFalse(test1.exists());
- assertFalse(test2.exists());
- }
- @Test
- public void testSetVisibility() {
- assertTrue(client.isVisible());
- ServerUtilities.setVisibility(client, false);
- assertFalse(client.isVisible());
- ServerUtilities.setVisibility(client, true);
- assertTrue(client.isVisible());
- }
- @Test
- public void testCopyFile() throws IOException {
- File test1 = folder.newFile("test1.txt");
- assertTrue(test1.exists());
- PrintWriter writer = new PrintWriter(test1);
- writer.println("Hello World");
- writer.close();
- File test2 = folder.newFile("test2.txt");
- ServerUtilities.deleteFilesFromDirectory("test");
- assertTrue(test2.exists());
- ServerUtilities.copyFile(test1, test2);
- assertTrue(test2.exists());
- BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(test2)));
- String hello = reader.readLine();
- assertEquals("Hello World", hello);
- reader.close();
- test2.delete();
- test1.delete();
- }
- @Test
- public void testSaveLogs() throws IOException {
- File test1 = folder.newFile();
- assertTrue(ServerUtilities.getNotAllowedList().isEmpty());
- ServerUtilities.enableFileSaving();
- File fullLogFile = ServerUtilities.getFullLogFile();
- PrintWriter writer = new PrintWriter(fullLogFile);
- writer.println("TEST");
- writer.close();
- ServerUtilities.saveLogs(test1);
- BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(test1)));
- String test = reader.readLine();
- reader.close();
- assertEquals("TEST", test);
- fullLogFile.delete();
- test1.delete();
- }
- @Test
- public void testLoadLogs() throws IOException {
- File test = folder.newFile();
- assertTrue(ServerUtilities.loadLogs(test));
- }
- @Test
- public void testChangeWindowOutput() throws IOException {
- ServerUtilities.enableFileSaving();
- File testFile = ServerUtilities.getFullLogFile();
- PrintWriter writer = new PrintWriter(testFile, "UTF-8");
- writer.println("test1 : ABRAKADABRA");
- writer.println("test2 : ABECADŁO");
- writer.println("test3 : XYZ");
- writer.println("test1 : XZY");
- writer.println("test2 : ABRAKADABRA");
- writer.println("test1 : ABAB");
- writer.close();
- ServerUtilities.getNotAllowedList().add("test1");
- ServerUtilities.changeWindowOutput();
- File finalTestFile = new File(ServerUtilities.getDirPath() + "/current.txt");
- BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(finalTestFile), "UTF-8"));
- assertEquals("test2 : ABECADŁO", reader.readLine());
- assertEquals("test3 : XYZ", reader.readLine());
- assertEquals("test2 : ABRAKADABRA", reader.readLine());
- reader.close();
- finalTestFile.delete();
- testFile.delete();
- ServerUtilities.getFileWriter().close();
- ServerUtilities.getFullLogFile().delete();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement