From 6cfc0fde089ea08c808d9cc75e56396fef792db2 Mon Sep 17 00:00:00 2001 From: a2geek Date: Wed, 7 Oct 2026 12:08:42 -0500 Subject: [PATCH] More unit tests for GameDOS. It not sets the filename when a new file entry is created. --- .../exception/FileExistsException.java | 18 +++++++ .../os/gamedos/GamedosDirectory.java | 9 +++- .../org/applecommander/os/GamedosTest.java | 54 +++++++++++++------ 3 files changed, 64 insertions(+), 17 deletions(-) create mode 100644 lib/ac-api/src/main/java/org/applecommander/exception/FileExistsException.java diff --git a/lib/ac-api/src/main/java/org/applecommander/exception/FileExistsException.java b/lib/ac-api/src/main/java/org/applecommander/exception/FileExistsException.java new file mode 100644 index 00000000..f56e638b --- /dev/null +++ b/lib/ac-api/src/main/java/org/applecommander/exception/FileExistsException.java @@ -0,0 +1,18 @@ +package org.applecommander.exception; + +public class FileExistsException extends RuntimeException { + public FileExistsException() { + } + + public FileExistsException(String fmt, Object ...args) { + super(String.format(fmt, args)); + } + + public FileExistsException(String message, Throwable cause) { + super(message, cause); + } + + public FileExistsException(Throwable cause) { + super(cause); + } +} diff --git a/lib/ac-api/src/main/java/org/applecommander/os/gamedos/GamedosDirectory.java b/lib/ac-api/src/main/java/org/applecommander/os/gamedos/GamedosDirectory.java index d99ae462..8a80b6f6 100644 --- a/lib/ac-api/src/main/java/org/applecommander/os/gamedos/GamedosDirectory.java +++ b/lib/ac-api/src/main/java/org/applecommander/os/gamedos/GamedosDirectory.java @@ -22,9 +22,11 @@ package org.applecommander.os.gamedos; import org.applecommander.capability.Capability; import org.applecommander.device.TrackSectorDevice; import org.applecommander.exception.DirectoryFullException; +import org.applecommander.exception.FileExistsException; import org.applecommander.filestore.*; import org.applecommander.util.DataBuffer; +import java.nio.file.FileAlreadyExistsException; import java.util.ArrayList; import java.util.List; import java.util.Optional; @@ -78,8 +80,13 @@ public class GamedosDirectory implements WritableDirectory, GamedosConstants { for (int i=0; i