tests for correctness