Dispose of temporary files when doing test compilation

This commit is contained in:
Brendan Robert 2015-08-08 15:05:43 -05:00
parent 0abc87675b
commit df6101ddc5
4 changed files with 17 additions and 2 deletions

View File

@ -65,5 +65,8 @@ public class ApplesoftHandler implements LanguageHandler<ApplesoftProgram> {
public void execute(CompileResult<ApplesoftProgram> lastResult) {
lastResult.getCompiledAsset().run();
}
@Override
public void clean(CompileResult<ApplesoftProgram> lastResult) {
}
}

View File

@ -48,6 +48,11 @@ public class AssemblyHandler implements LanguageHandler<File> {
Logger.getLogger(AssemblyHandler.class.getName()).log(Level.SEVERE, null, ex);
}
}
clean(lastResult);
}
@Override
public void clean(CompileResult<File> lastResult) {
lastResult.getCompiledAsset().delete();
}
}

View File

@ -219,12 +219,15 @@ public class Program {
manageCompileResult(lastResult);
if (lastResult.isSuccessful()) {
getHandler().execute(lastResult);
} else {
getHandler().clean(lastResult);
}
}
public void test() {
lastResult = getHandler().compile(this);
manageCompileResult(lastResult);
getHandler().clean(lastResult);
}
private void manageCompileResult(CompileResult lastResult) {

View File

@ -9,7 +9,7 @@ import java.util.Map;
*
* @author blurry
*/
class TextHandler implements LanguageHandler<String> {
public class TextHandler implements LanguageHandler<String> {
public TextHandler() {
}
@ -57,4 +57,8 @@ class TextHandler implements LanguageHandler<String> {
public void execute(CompileResult<String> lastResult) {
Keyboard.pasteFromString(lastResult.getCompiledAsset());
}
@Override
public void clean(CompileResult<String> lastResult) {
}
}