All unit tests have been moved to a separated source root
Reasoning:
(1) This practice allows testing protected classes and methods, even in separated roots, they share the same package name, thus the same visibility, and
(2) allows easier separation between production code and test classes, avoiding complex build or unnecessary dependencies.
Added unit tests for all protocol-related code
Even though the Tigerbeetle protocol does not require any serialization, we must assert the correct order of all fields written or read from the stream
Removed non-ergonomic enums AccountFlags and TransactionFlags in favor of a simple integer constant.
Maybe implementing a helper to combine the flags would be a better solution
Wrong byte order when reading/writing a UUID
Java is essentially bid-endian in its API, just swapped the order of the parameters on UUID's constructor.
All unit tests have been moved to a separated source root Reasoning: (1) This practice allows testing protected classes and methods, even in separated roots, they share the same package name, thus the same visibility, and (2) allows easier separation between production code and test classes, avoiding complex build or unnecessary dependencies.
Added unit tests for all protocol-related code Even though the Tigerbeetle protocol does not require any serialization, we must assert the correct order of all fields written or read from the stream
Removed non-ergonomic enums AccountFlags and TransactionFlags in favor of a simple integer constant. Maybe implementing a helper to combine the flags would be a better solution
Wrong byte order when reading/writing a UUID Java is essentially bid-endian in its API, just swapped the order of the parameters on UUID's constructor.