refactor naming of test method

This commit is contained in:
Cesare
2022-10-17 18:41:04 +02:00
parent 2cae083578
commit 6133c31057
3 changed files with 32 additions and 35 deletions

View File

@@ -2,13 +2,16 @@ package com.baeldung.java_shallow_deep_copy.data;
public class BankAccountDeep extends BankAccount {
public BankAccountDeep(String name, String surname, Balance balance) {
super(name, surname, balance);
}
@Override
public Object clone() throws CloneNotSupportedException {
return new BankAccountDeep(name, surname, (Balance) balance.clone());
BankAccountDeep bankAccountDeep = (BankAccountDeep) super.clone();
bankAccountDeep.setBalance((Balance) balance.clone());
return bankAccountDeep;
}
public BankAccountDeep(BankAccountDeep bankAccountDeep) {

View File

@@ -1,41 +1,38 @@
package com.baeldung.java_shallow_deep_copy.unit;
import com.baeldung.java_shallow_deep_copy.data.*;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import org.junit.jupiter.api.Test;
import com.baeldung.java_shallow_deep_copy.data.Balance;
import com.baeldung.java_shallow_deep_copy.data.BankAccountDeep;
public class DeepCopyTest {
private static final String NAME = "Hello";
private static final String SURNAME = "World";
@Test
void whenIsADeepCopyDoneByCopyConstructor_thenNestedObjectShouldNotHaveSameReference() {
void whenIsADeepCopyDoneByCopyConstructor_thenNestedObjectsAreNotTheSame() {
Balance balance = new Balance(10000, "EUR");
BankAccountDeep bankAccount = new BankAccountDeep(NAME, SURNAME, balance);
BankAccountDeep bankAccount = new BankAccountDeep("Hello", "World", balance);
BankAccountDeep deepCopy = new BankAccountDeep(bankAccount);
assertNotEquals(bankAccount.getBalance(), deepCopy.getBalance());
}
@Test
void whenIsADeepCopyDoneByCopyConstructor_thenCopyValueShouldNotChange() {
void whenIsADeepCopyDoneByCopyConstructor_thenCopyShouldNotChange() {
Balance balance = new Balance(10000, "EUR");
BankAccountDeep bankAccount = new BankAccountDeep(NAME, SURNAME, balance);
BankAccountDeep bankAccount = new BankAccountDeep("Hello", "World", balance);
BankAccountDeep deepCopy = new BankAccountDeep(bankAccount);
balance.setAmount(0);
assertNotEquals(bankAccount.getBalance()
.getAmount(), deepCopy.getBalance()
.getAmount());
bankAccount.getBalance().setAmount(0);
float deepCopyAmount = deepCopy.getBalance().getAmount();
assertNotEquals(0, deepCopyAmount);
}
@Test
void whenIsADeepCopyDoneByCloneMethod_thenNestedObjectShouldNotHaveSameReference() throws CloneNotSupportedException {
String name = "Hello";
String surname = "World";
void whenIsADeepCopyDoneByCloneMethod_thenNestedObjectsAreNotTheSame() throws CloneNotSupportedException {
Balance balance = new Balance(10000, "EUR");
BankAccountDeep bankAccount = new BankAccountDeep(NAME, SURNAME, balance);
BankAccountDeep bankAccount = new BankAccountDeep("Hello", "World", balance);
BankAccountDeep deepCopy = (BankAccountDeep) bankAccount.clone();
assertNotEquals(bankAccount.getBalance(), deepCopy.getBalance());
}
@@ -44,10 +41,11 @@ public class DeepCopyTest {
void whenIsADeepCopyDoneByCloneMethod_thenCopyValueShouldNotChange() throws CloneNotSupportedException {
Balance balance = new Balance(10000, "EUR");
BankAccountDeep bankAccount = new BankAccountDeep(NAME, SURNAME, balance);
BankAccountDeep bankAccount = new BankAccountDeep("Hello", "World", balance);
BankAccountDeep deepCopy = (BankAccountDeep) bankAccount.clone();
balance.setAmount(0);
assertNotEquals(balance.getAmount(), deepCopy.getBalance()
.getAmount());
bankAccount.getBalance().setAmount(0);
float deepCopyAmount = deepCopy.getBalance().getAmount();
assertNotEquals(0, deepCopyAmount);
}
}

View File

@@ -28,16 +28,13 @@ public class ShallowCopyTest {
}
@Test
void whenIsAShallowCopyDoneByCopyConstructor_thenCopyValueShouldChange() throws CloneNotSupportedException {
void whenIsAShallowCopyDoneByCopyConstructor_thenCopyShouldChange() throws CloneNotSupportedException {
Balance balance = new Balance(10000, "EUR");
BankAccountShallow bankAccount = new BankAccountShallow("Hello", "World", balance);
BankAccountShallow shallowCopy = new BankAccountShallow(bankAccount);
float newBalance = 0;
balance.setAmount(newBalance);
assertEquals(newBalance, bankAccount.getBalance()
.getAmount());
assertEquals(newBalance, shallowCopy.getBalance()
.getAmount());
bankAccount.getBalance().setAmount(0);
float shallowCopyAmount = shallowCopy.getBalance().getAmount();
assertEquals(0, shallowCopyAmount);
}
@Test
@@ -49,14 +46,13 @@ public class ShallowCopyTest {
}
@Test
void whenIsAShallowCopyDoneByCloneMethod__thenCopyValueShouldChange() throws CloneNotSupportedException {
void whenIsAShallowCopyDoneByCloneMethod__thenCopyShouldChange() throws CloneNotSupportedException {
Balance balance = new Balance(10000, "EUR");
BankAccountShallow bankAccount = new BankAccountShallow("Hello", "World", balance);
BankAccountShallow shallowCopy = (BankAccountShallow) bankAccount.clone();
float newBalance = 0;
balance.setAmount(newBalance);
assertEquals(newBalance, shallowCopy.getBalance()
.getAmount());
bankAccount.getBalance().setAmount(0);
float shallowCopyAmount = shallowCopy.getBalance().getAmount();
assertEquals(0, shallowCopyAmount);
}
}