add more tests
nicer syntax