tests built out and passing on all three models