### Question:
Bill implements Serializable { @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Bill bill = (Bill) o; return version == bill.version && Objects.equals(amount, bill.amount) && Objects.equals(currency, bill.currency) && Objects.equals(account, bill.account) && Objects.equals(creditor, bill.creditor) && Objects.equals(referenceType, bill.referenceType) && Objects.equals(reference, bill.reference) && Objects.equals(debtor, bill.debtor) && Objects.equals(unstructuredMessage, bill.unstructuredMessage) && Objects.equals(billInformation, bill.billInformation) && Arrays.equals(alternativeSchemes, bill.alternativeSchemes) && Objects.equals(format, bill.format); }  Version getVersion(); void setVersion(Version version); BigDecimal getAmount(); Double getAmountAsDouble(); void setAmount(BigDecimal amount); void setAmountFromDouble(Double amount); String getCurrency(); void setCurrency(String currency); String getAccount(); void setAccount(String account); Address getCreditor(); void setCreditor(Address creditor); String getReferenceType(); void setReferenceType(String referenceType); void updateReferenceType(); String getReference(); void setReference(String reference); void createAndSetCreditorReference(String rawReference); void createAndSetQRReference(String rawReference); Address getDebtor(); void setDebtor(Address debtor); String getUnstructuredMessage(); void setUnstructuredMessage(String unstructuredMessage); String getBillInformation(); void setBillInformation(String billInformation); AlternativeScheme[] getAlternativeSchemes(); void setAlternativeSchemes(AlternativeScheme[] alternativeSchemes); BillFormat getFormat(); void setFormat(BillFormat format); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); static final String REFERENCE_TYPE_NO_REF; static final String REFERENCE_TYPE_QR_REF; static final String REFERENCE_TYPE_CRED_REF; }### Answer:
@Test void testEquals() { Bill bill1 = createBill(); Bill bill2 = createBill(); assertEquals(bill1, bill2); assertEquals(bill2, bill1); bill2.setUnstructuredMessage("ABC"); assertNotEquals(bill1, bill2); }