lots of basic types + tests