Added 40 tests and made them pass