more tests and exceptions