add tests, Eq/PartialEq