### Question:
ServiceV3AuthsPostResponse { @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ServiceV3AuthsPostResponse that = (ServiceV3AuthsPostResponse) o; return Objects.equals(authRequest, that.authRequest) && Objects.equals(pushPackage, that.pushPackage) && Objects.equals(deviceIds, that.deviceIds); } @JsonCreator  ServiceV3AuthsPostResponse(
            @JsonProperty(value = "auth_request") UUID authRequest,
            @JsonProperty(value = "push_package") String pushPackage,
            @JsonProperty(value = "device_ids") List<String> deviceIds
    ); UUID getAuthRequest(); String getPushPackage(); List<String> getDeviceIds(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void equalsTrueWhenAllEqual() { ServiceV3AuthsPostResponse left = new ServiceV3AuthsPostResponse(auth_request, "Push Package", new ArrayList<String>(){{add("Device ID");}}); ServiceV3AuthsPostResponse right = new ServiceV3AuthsPostResponse(auth_request, "Push Package", new ArrayList<String>(){{add("Device ID");}}); assertTrue(left.equals(right)); }
@Test public void equalsTrueWhenAllEmpty() { ServiceV3AuthsPostResponse left = new ServiceV3AuthsPostResponse(null, null, null); ServiceV3AuthsPostResponse right = new ServiceV3AuthsPostResponse(null, null, null); assertTrue(left.equals(right)); }
@Test public void equalsFalseWhenAuthRequestDifferent() { ServiceV3AuthsPostResponse left = new ServiceV3AuthsPostResponse(UUID.randomUUID(), "Push Package", new ArrayList<String>(){{add("Device ID");}}); ServiceV3AuthsPostResponse right = new ServiceV3AuthsPostResponse(UUID.randomUUID(), "Push Package", new ArrayList<String>(){{add("Device ID");}}); assertFalse(left.equals(right)); }
@Test public void equalsFalseWhenPushPackageDifferent() { ServiceV3AuthsPostResponse left = new ServiceV3AuthsPostResponse(auth_request, "Left Push Package", new ArrayList<String>(){{add("Device ID");}}); ServiceV3AuthsPostResponse right = new ServiceV3AuthsPostResponse(auth_request, "Right Push Package", new ArrayList<String>(){{add("Device ID");}}); assertFalse(left.equals(right)); }
@Test public void equalsFalseWhenDeviceIdsDifferent() { ServiceV3AuthsPostResponse left = new ServiceV3AuthsPostResponse(auth_request, "Push Package", new ArrayList<String>(){{add("Left ID");}}); ServiceV3AuthsPostResponse right = new ServiceV3AuthsPostResponse(auth_request, "Push Package", new ArrayList<String>(){{add("Right ID");}}); assertFalse(left.equals(right)); }