add tests & change classinfos into categories