implement more tests