diff options
Diffstat (limited to 'lichen.test.c')
| -rw-r--r-- | lichen.test.c | 36 | 
1 files changed, 36 insertions, 0 deletions
| diff --git a/lichen.test.c b/lichen.test.c new file mode 100644 index 0000000..77ff067 --- /dev/null +++ b/lichen.test.c @@ -0,0 +1,36 @@ +#define LILY_IMPLEMENTATION +#include "lichen.h" +#include "lily-test.h" + + +LILY_FILE_BEGIN(lichen_suite) + +LILY_TEST("xorshift output") { +  struct li_xorshift32_t xor; +  li_xorshift32_seed(&xor, 0); +  CHECK_EQ(xor.generator.state, &(xor.state), "%p"); +  CHECK_NEQ(xor.state, 0, "%d"); +  uint16_t start = xor.state; +  INFO("%p, %p", &(xor.state), xor.generator.state); +  INFO("%d", xor.generator.rand(xor.generator.state)); +  INFO("%d, %d", xor.state, *((uint64_t*)xor.generator.state)); +  INFO("%d", xor.generator.rand(xor.generator.state)); +  INFO("%d, %d", xor.state, *((uint64_t*)xor.generator.state)); +  INFO("%d", xor.generator.rand(xor.generator.state)); +  INFO("%d, %d", xor.state, *((uint64_t*)xor.generator.state)); +  INFO("%d", xor.generator.rand(xor.generator.state)); +  INFO("%d, %d", xor.state, *((uint64_t*)xor.generator.state)); +  REQUIRE_NEQ(xor.state, start, "%d"); +} +#include LILY_PUSH_TEST() + +#define LILY_FILE_END +#include LILY_REGISTER_TESTS() + + +int main() { +  lily_begin(); +  lichen_suite(); +  lily_finish(); +  return 0; +} | 
