test has_one through