Я написал тест, который, как я знаю, неверен.Я знаю, что это получает тот же экземпляр для оригинального продукта и обновленного продукта, поэтому, когда я вызываю updatedProduct.setProductName("Updated Product Name");
, он обновляет элемент productName как исходного продукта, так и обновленного продукта.Как я могу изменить это так, чтобы я получил 2 разных экземпляра этого объекта.
@Test
@Transactional
public void testUpdateProduct() {
productDao.addProduct(createTempProduct());
Product originalProduct = productDao.getProduct((long)999);
Product updatedProduct = productDao.getProduct((long)999);
updatedProduct.setProductName("Updated Product Name");
productDao.updateProduct(updatedProduct);
Product newProduct = productDao.getProduct((long)999);
Assert.assertNotSame(originalProduct, newProduct);
Assert.assertSame(updatedProduct, newProduct);
}