added more tests to make sure all functions implemented up to date are tested