@@ -30,20 +30,35 @@ class CloningObjectUnitTest {
30
30
person.address.city = " Surabaya"
31
31
person.address.street = " Jln. Ahmad Yani"
32
32
33
- assertThat(clonedPerson.address.city).isEqualTo(" Surabaya" )
34
- assertThat(clonedPerson.address.street).isEqualTo(" Jln. Ahmad Yani" )
33
+ assertThat(clonedPerson.address.city)
34
+ .isEqualTo(" Surabaya" )
35
+
36
+ assertThat(clonedPerson.address.street)
37
+ .isEqualTo(" Jln. Ahmad Yani" )
35
38
}
36
39
37
40
@Test
38
- fun `when using copy then proves that shallow copy` () {
41
+ fun `when using copy then proves that shallow copy or deep copy ` () {
39
42
val clonedPerson = person.copy()
40
43
assertThat(clonedPerson).isNotSameAs(person)
41
44
45
+ val deepClonedPerson = person.copy(address = address.copy())
46
+ assertThat(deepClonedPerson).isNotSameAs(person)
47
+
42
48
person.address.city = " Jakarta"
43
49
person.address.street = " Jln. Abdul Muis"
44
50
45
- assertThat(clonedPerson.address.city).isEqualTo(" Jakarta" )
46
- assertThat(clonedPerson.address.street).isEqualTo(" Jln. Abdul Muis" )
51
+ assertThat(clonedPerson.address.city)
52
+ .isEqualTo(" Jakarta" )
53
+
54
+ assertThat(clonedPerson.address.street)
55
+ .isEqualTo(" Jln. Abdul Muis" )
56
+
57
+ assertThat(deepClonedPerson.address.city)
58
+ .isNotEqualTo(" Jakarta" )
59
+
60
+ assertThat(deepClonedPerson.address.street)
61
+ .isNotEqualTo(" Jln. Abdul Muis" )
47
62
}
48
63
49
64
@Test
@@ -54,8 +69,11 @@ class CloningObjectUnitTest {
54
69
person.address.city = " Palembang"
55
70
person.address.street = " Jln. Abi Hasan"
56
71
57
- assertThat(clonedPerson.address.city).isEqualTo(" Palembang" )
58
- assertThat(clonedPerson.address.street).isEqualTo(" Jln. Abi Hasan" )
72
+ assertThat(clonedPerson.address.city)
73
+ .isEqualTo(" Palembang" )
74
+
75
+ assertThat(clonedPerson.address.street)
76
+ .isEqualTo(" Jln. Abi Hasan" )
59
77
}
60
78
61
79
@Test
@@ -66,7 +84,10 @@ class CloningObjectUnitTest {
66
84
person.address.city = " Bandung"
67
85
person.address.street = " Jln. Siliwangi"
68
86
69
- assertThat(clonedPerson.address.city).isNotEqualTo(" Bandung" )
70
- assertThat(clonedPerson.address.street).isNotEqualTo(" Jln. Siliwangi" )
87
+ assertThat(clonedPerson.address.city)
88
+ .isNotEqualTo(" Bandung" )
89
+
90
+ assertThat(clonedPerson.address.street)
91
+ .isNotEqualTo(" Jln. Siliwangi" )
71
92
}
72
93
}
0 commit comments