Explorar el Código

Copying instance of shared value object type (HandlingActivity)

peter_backlund hace 17 años
padre
commit
c4ec14a02d

+ 1
- 1
dddsample/tracking/core/src/main/java/se/citerus/dddsample/tracking/core/application/event/CargoUpdater.java Ver fichero

@@ -37,7 +37,7 @@ public class CargoUpdater {
37 37
       return;
38 38
     }
39 39
 
40
-    final HandlingActivity activity = handlingEvent.activity();
40
+    final HandlingActivity activity = handlingEvent.activity().copy();
41 41
     final Cargo cargo = handlingEvent.cargo();
42 42
 
43 43
     cargo.handled(activity);

+ 3
- 0
dddsample/tracking/core/src/test/java/se/citerus/dddsample/tracking/core/application/event/CargoUpdaterTest.java Ver fichero

@@ -3,6 +3,8 @@ package se.citerus.dddsample.tracking.core.application.event;
3 3
 import static org.hamcrest.core.IsEqual.equalTo;
4 4
 import static org.hamcrest.core.IsNot.not;
5 5
 import static org.junit.Assert.assertThat;
6
+import static org.junit.Assert.assertFalse;
7
+import static org.junit.Assert.assertTrue;
6 8
 import org.junit.Before;
7 9
 import org.junit.Test;
8 10
 import static org.mockito.Mockito.*;
@@ -66,6 +68,7 @@ public class CargoUpdaterTest {
66 68
     cargoUpdater.updateCargo(handlingEvent.sequenceNumber());
67 69
     
68 70
     assertThat(handlingEvent.activity(), equalTo(cargo.mostRecentHandlingActivity()));
71
+    assertTrue(handlingEvent.activity() != cargo.mostRecentHandlingActivity());
69 72
     verify(systemEvents).notifyOfCargoUpdate(cargo);
70 73
   }
71 74