added tests, except one failing test case, noooo