extended and updated iterater_test