### Question:
AuthResponsePolicy { @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; AuthResponsePolicy that = (AuthResponsePolicy) o; return amount == that.amount && Objects.equals(requirement, that.requirement) && Objects.equals(types, that.types) && Objects.equals(fences, that.fences); } @JsonCreator  AuthResponsePolicy(
            @JsonProperty("requirement") String requirement, @JsonProperty("amount") int amount,
            @JsonProperty("types") List<String> types, @JsonProperty("geofences") List<Fence> fences
    ); String getRequirement(); int getAmount(); List<String> getTypes(); List<Fence> getFences(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testEquals() { AuthResponsePolicy other = new AuthResponsePolicy("REQ", 1, Arrays.asList("T1", "T2"), new ArrayList<Fence>() {{ add(new Fence("name", "type", 1.0, 2.0, 3.0, "country", "admin", "postal")); }}); assertEquals(other, policy); }