added (hopefully) correct test cases