mirror of
https://github.com/bbasaran/kessel-run.git
synced 2026-10-15 10:59:19 -04:00
Fix failing unit tests. Start Converter Class
This commit is contained in:
@@ -3,15 +3,36 @@ package org.misoenergy.hackday.kessel_run;
|
||||
import org.misoenergy.hackday.kessel_run.class_definitions.CharacterClass;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
public class PCGenConverter {
|
||||
|
||||
public static File convertToPCGen(List<CharacterClass> classes) {
|
||||
public File convertToPCGen(List<CharacterClass> classes) {
|
||||
File pcGenOutput = new File("sw5eClasses.lst");
|
||||
FileWriter writer = setupFileWriter(pcGenOutput);
|
||||
|
||||
PCGenExporter exporter = new PCGenExporter();
|
||||
exporter.export(pcGenOutput);
|
||||
return pcGenOutput;
|
||||
}
|
||||
|
||||
protected FileWriter setupFileWriter(File file) {
|
||||
FileWriter writer = null;
|
||||
|
||||
try {
|
||||
writer = new FileWriter(file);
|
||||
} catch (IOException e) {
|
||||
handleFailedFileWriter(e);
|
||||
}
|
||||
|
||||
return writer;
|
||||
}
|
||||
|
||||
private void handleFailedFileWriter(Exception e) {
|
||||
System.out.println("Unable to Write to File");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,8 +4,9 @@ import org.junit.jupiter.api.Test;
|
||||
import org.misoenergy.hackday.kessel_run.class_definitions.CharacterClass;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static junit.framework.TestCase.assertTrue;
|
||||
@@ -17,9 +18,41 @@ public class PCGenConverterTests {
|
||||
void convertToPCGen() {
|
||||
File pcGenOutput = new File("sw5eClasses.lst");
|
||||
List<CharacterClass> classes = new ArrayList<CharacterClass>();
|
||||
File pcgenFile = PCGenConverter.convertToPCGen(classes);
|
||||
|
||||
PCGenConverter converter = new PCGenConverter();
|
||||
File pcgenFile = converter.convertToPCGen(classes);
|
||||
|
||||
assertTrue(pcgenFile.isFile());
|
||||
}
|
||||
|
||||
@Test
|
||||
void converterWritesCharacterClassesToFile() throws IOException {
|
||||
File pcGenOutput = new File("sw5eClasses.lst");
|
||||
List<CharacterClass> classes = createTestCharacterClasses();
|
||||
|
||||
PCGenConverter converter = new PCGenConverter();
|
||||
File pcgenFile = converter.convertToPCGen(classes);
|
||||
|
||||
BufferedReader reader = new BufferedReader(new FileReader(pcgenFile));
|
||||
assertTrue(reader.readLine().contains("Test Class"));
|
||||
reader.close();
|
||||
}
|
||||
|
||||
List<CharacterClass> createTestCharacterClasses() {
|
||||
List<CharacterClass> characterClasses = new ArrayList<CharacterClass>();
|
||||
|
||||
CharacterClass testClass = new CharacterClass();
|
||||
testClass.setArchetypes("Archetype1");
|
||||
testClass.setName("Test Class");
|
||||
testClass.setSummary("This is a test class");
|
||||
|
||||
|
||||
characterClasses.add(testClass);
|
||||
return characterClasses;
|
||||
}
|
||||
|
||||
FileReader readPCGenFile(File file) throws FileNotFoundException {
|
||||
return new FileReader(file);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -24,7 +24,9 @@ public class PCGenExporterTest {
|
||||
void exporterCreatesFileWhenNoneExists() {
|
||||
exporter = new PCGenExporter();
|
||||
File file = new File("sw5eClasses.lst");
|
||||
|
||||
deleteFileIfExists(file);
|
||||
|
||||
exporter.export(file);
|
||||
assertTrue(file.isFile());
|
||||
}
|
||||
@@ -42,11 +44,20 @@ public class PCGenExporterTest {
|
||||
|
||||
assertTrue(reader.readLine() == null);
|
||||
|
||||
reader.close();
|
||||
}
|
||||
|
||||
void deleteFileIfExists(File file) {
|
||||
if(!file.exists()) {
|
||||
file.delete();
|
||||
boolean isDeleted = true;
|
||||
|
||||
if(file.exists()) {
|
||||
isDeleted = file.delete();
|
||||
}
|
||||
|
||||
if (isDeleted) {
|
||||
System.out.println("File Deleted");
|
||||
} else {
|
||||
System.out.println("Unable to Delete File");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user