Я новичок в тестировании и пытаюсь протестировать репозиторий моего проекта. При попытке протестировать мой интерфейс репозитория, который расширяет JpaRepository , когда я создаю разные объекты одного и того же класса сущности, они все ссылаются на один и тот же объект (не уверен в этом, просто замечание).
Вот метод теста:
@Test
public void testFindByIdCustomer() throws InterruptedException {
CustomerDetails customer = getCustomer();
CustomerDetails savedCustomer = walletRepository.save(customer);
CustomerDetails retrivedCustomer = new CustomerDetails();
retrievedCustomer = walletRepository.findById(savedCustomer.getAccountId()).get();
System.out.println("Saved Customer's balance:\n" + savedCustomer.getBalance());
System.out.println("Retrieved Customer's balance right after saved:\n" + retrievedCustomer.getBalance());
savedCustomer.setBalance(100);
System.out.println("Saved Customer's balance when edited:\n" + savedCustomer.getBalance());
System.out.println("Retrived Customer's balance with no change:\n" + retrievedCustomer.getBalance());
assertThat(savedCustomer).isEqualToComparingFieldByField(retrievedCustomer);
}
Тест успешно пройден (чего не следует), и это то, что выводится на консоль.
Saved Customer's balance:
0.0
Retrieved Customer's balance right after saved:
0.0
Saved Customer's balance when edited:
100.0
Retrieved Customer's balance with no change:
100.0
Этого не ожидается. Полученный баланс Клиента не должен изменяться. В чем может быть проблема и как ее решить?
Все остальное работает нормально. Также этого не происходит при написании java методов приложения.