PrivateBankTest.java De-/Serialize Tests

This commit is contained in:
2024-12-05 15:14:43 +01:00
parent b5c736c0ba
commit 58c1396606
2 changed files with 27 additions and 48 deletions

View File

@@ -26,20 +26,21 @@ public class PrivateBankTest {
public static void init() throws AccountAlreadyExistsException, IOException, TransactionAlreadyExistException,
AccountDoesNotExistException, TransactionAttributeException {
final File folder = new File("data/junit5");
String path = "accountdata";
final File folder = new File(path);
if (folder.exists()) {
final File[] listOfFiles = folder.listFiles();
assert listOfFiles != null;
for (File file : listOfFiles)
file.delete();
Files.deleteIfExists(Path.of("data/junit5"));
if (file.delete()) System.out.println(file.getName() + " deleted");
}
privateBank = new PrivateBank(
"Testbank",
0,
0,
"data/test"
path
);
privateBank.createAccount("Konto_1");
@@ -65,16 +66,16 @@ public class PrivateBankTest {
)
);
copyPrivateBank = new PrivateBank(privateBank);
}
@DisplayName("Testing constructor")
@Test
@Order(0)
public void constructorTest() {
assertAll("PrivateBank",
() -> assertEquals("Testbank", privateBank.getName()),
() -> assertEquals("data/test", privateBank.getDirectoryName()),
() -> assertEquals("accountdata", privateBank.getDirectoryName()),
() -> assertEquals(0, privateBank.getIncomingInterest()),
() -> assertEquals(0, privateBank.getOutgoingInterest()));
}
@@ -411,4 +412,24 @@ public class PrivateBankTest {
)
);
}
@DisplayName("Serialize Accounts")
@Order(18)
@ParameterizedTest
@ValueSource(strings = {"Konto_1", "Konto_2", "Konto_3", "Konto_4", "Konto_5", "Konto_6", "Konto_7", "Konto_8"})
public void serializeAccountsTest(String account) {
assertDoesNotThrow(
() -> privateBank.writeAccount(account)
);
System.out.println("SerializeAccountsTest in <" + account + "> is correct.");
}
@DisplayName("Deserialize Accounts")
@Order(19)
@Test
public void DeserializeAccountsTest() {
assertThrows(
AccountAlreadyExistsException.class, () -> privateBank.readAccounts()
);
}
}