Last updated: 2017-08-04
Potentially, c64unit test framework allows you to test your code within any cross-assembler of your choice. The package itself is a compiled binary, which can be accessed by any other cross-assembler. And with few handy macros in a toolbox, testing your code is just simple!
You can find the package here: https://bitbucket.org/Commocore/c64unit
Currently c64unit is in alpha version.
To see c64unit in action, please visit examples repository: https://bitbucket.org/Commocore/c64unit-examples.
- uses macros so writing tests requires only few lines of test code, and hides internal framework's mechanisms
- no variables used on zero-page, so code can be tested freely
- most common cross-assemblers supported so far, and opened to extension
- you can examine your function against different conditions - use Data Sets to initialize any number of conditions on fly like zero page addresses, other memory locations or just by passing A, X, Y registers
- forget about writing assertions over and over again for each case, Data Sets allows not only to initialize, but also to assert multiple set of data dynamically, up to 256 byte values per table, or 128 word values per table
- you can mock methods, which means you can test your code in isolation, create stubs, skip loading data from disk and much more
- you can assert not only values or memory addresses, but also flag statuses like carry flag, negative flag and so on