Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv25546/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Modified Files:
Tag: nat_0001
Directory.java Shop.java
Added Files:
Tag: nat_0001
DirectoryTest.java FruitShop.java
Log Message:
--- NEW FILE: DirectoryTest.java ---
package com.mockobjects.talks.fruitshop;
import com.mockobjects.dynamic.Mock;
import junit.framework.TestCase;
public class DirectoryTest extends TestCase {
public void testFindsCheapestFruitFromMultipleShops() {
final String REQUIRED_FRUIT = "required fruit";
Directory directory = new Directory();
Mock mockExpensiveShop = new Mock(FruitShop.class, "expensive");
Mock mockEmptyShop = new Mock(FruitShop.class, "empty");
Mock mockCheapShop = new Mock(FruitShop.class, "cheap");
Offer emptyOffer = new Offer();
Offer cheapOffer = new Offer();
Offer expensiveOffer = new Offer();
directory.addShop((FruitShop)mockEmptyShop.proxy());
directory.addShop((FruitShop)mockExpensiveShop.proxy());
directory.addShop((FruitShop)mockCheapShop.proxy());
mockEmptyShop.expectAndReturn( "makeOffer", REQUIRED_FRUIT, emptyOffer );
mockCheapShop.expectAndReturn( "makeOffer", REQUIRED_FRUIT, cheapOffer );
mockExpensiveShop.expectAndReturn( "makeOffer", REQUIRED_FRUIT, expensiveOffer );
assertSame( "should be cheap offer", cheapOffer, directory.findCheapest(REQUIRED_FRUIT));
}
}
--- NEW FILE: FruitShop.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public interface FruitShop {
public void addFruit(String required_fruit, int high_price);
}
Index: Directory.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Attic/Directory.java,v
retrieving revision 1.2.6.1
retrieving revision 1.2.6.2
diff -u -r1.2.6.1 -r1.2.6.2
--- Directory.java 14 Nov 2003 16:18:04 -0000 1.2.6.1
+++ Directory.java 14 Nov 2003 16:57:47 -0000 1.2.6.2
@@ -1,23 +1,26 @@
-/*
- * Created on 14-Nov-2003
- */
package com.mockobjects.talks.fruitshop;
-/**
- * @author steve.freeman
- */
+import java.util.ArrayList;
+import java.util.Iterator;
+
public class Directory {
+ private ArrayList shops = new ArrayList();
+
public Directory() {
super(); // TODO Generated constructor stub
}
- public Offer findCheapestFruit(String required_fruit) {
- return null; // TODO Generated body
+ public Offer findCheapest(String required_fruit) {
+ Iterator allShops = shops.iterator();
+ while (allShops.hasNext()) {
+ FruitShop shop = (FruitShop)allShops.next();
+ }
+ return null;
}
- public void addShop(Shop emptyShop) {
- // TODO Generated body
+ public void addShop(FruitShop shop) {
+ shops.add(shop);
}
}
Index: Shop.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Shop.java,v
retrieving revision 1.1.6.1
retrieving revision 1.1.6.2
diff -u -r1.1.6.1 -r1.1.6.2
--- Shop.java 14 Nov 2003 16:18:04 -0000 1.1.6.1
+++ Shop.java 14 Nov 2003 16:57:47 -0000 1.1.6.2
@@ -6,7 +6,7 @@
/**
* @author steve.freeman
*/
-public class Shop {
+public class Shop implements FruitShop {
public Shop() {
super(); // TODO Generated constructor stub
|