add a lot of test-cases