add tests array, map, record, full name; fix recursive bug
add basic tests