Ver código fonte

Introduced CargoRepository with tests (failing).

Patrik Fredriksson 19 anos atrás
pai
commit
a55aed4b41

+ 6
- 2
dddsample/src/main/java/se/citerus/dddsample/domain/Cargo.java Ver arquivo

@@ -1,11 +1,11 @@
1 1
 package se.citerus.dddsample.domain;
2 2
 
3 3
 public class Cargo {
4
-  private final String trackingId;
4
+  private final TrackingId trackingId;
5 5
   private final Location from;
6 6
   private final Location to;
7 7
 
8
-  public Cargo(String trackingId, Location origin, Location finalDestination) {
8
+  public Cargo(TrackingId trackingId, Location origin, Location finalDestination) {
9 9
     this.trackingId = trackingId;
10 10
     this.from = origin;
11 11
     this.to = finalDestination;
@@ -26,4 +26,8 @@ public class Cargo {
26 26
   public Location currentLocation() {
27 27
     return null;  //To change body of created methods use File | Settings | File Templates.
28 28
   }
29
+
30
+  public TrackingId trackingId() {
31
+    return null;  //To change body of created methods use File | Settings | File Templates.
32
+  }
29 33
 }

+ 6
- 0
dddsample/src/main/java/se/citerus/dddsample/domain/CargoRepository.java Ver arquivo

@@ -0,0 +1,6 @@
1
+package se.citerus.dddsample.domain;
2
+
3
+
4
+public interface CargoRepository {
5
+  Cargo find(TrackingId trackingId);
6
+}

+ 7
- 0
dddsample/src/main/java/se/citerus/dddsample/domain/CargoRepositoryImpl.java Ver arquivo

@@ -0,0 +1,7 @@
1
+package se.citerus.dddsample.domain;
2
+
3
+public class CargoRepositoryImpl implements CargoRepository {
4
+  public Cargo find(TrackingId trackingId) {
5
+    return null;  //To change body of implemented methods use File | Settings | File Templates.
6
+  }
7
+}

+ 6
- 0
dddsample/src/main/java/se/citerus/dddsample/domain/TrackingId.java Ver arquivo

@@ -0,0 +1,6 @@
1
+package se.citerus.dddsample.domain;
2
+
3
+public class TrackingId {
4
+  public TrackingId(String s) {
5
+  }
6
+}

+ 16
- 0
dddsample/src/test/java/se/citerus/dddsample/domain/CargoRepositoryTest.java Ver arquivo

@@ -0,0 +1,16 @@
1
+package se.citerus.dddsample.domain;
2
+
3
+import junit.framework.TestCase;
4
+
5
+public class CargoRepositoryTest extends TestCase {
6
+
7
+  public void testFindByCargoId() {
8
+
9
+    CargoRepository repository = new CargoRepositoryImpl();
10
+    final TrackingId trackingId = new TrackingId("XYZ");
11
+    Cargo cargo = repository.find(trackingId);
12
+
13
+    assertSame(trackingId, cargo.trackingId());
14
+
15
+  }
16
+}

+ 1
- 1
dddsample/src/test/java/se/citerus/dddsample/domain/TrackingScenarioTest.java Ver arquivo

@@ -23,7 +23,7 @@ public class TrackingScenarioTest extends TestCase {
23 23
   }
24 24
 
25 25
   private Cargo populateCargo() {
26
-    final Cargo cargo = new Cargo("XYZ", new Location("SESTO"), new Location("AUMEL"));
26
+    final Cargo cargo = new Cargo(new TrackingId("XYZ"), new Location("SESTO"), new Location("AUMEL"));
27 27
 
28 28
     final CarrierMovement stockholmToHamburg =
29 29
        new CarrierMovement(new Location("SESTO"), new Location("DEHAM"));