added more tests and the Type enumeration