You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(13) |
Aug
(151) |
Sep
(21) |
Oct
(6) |
Nov
(70) |
Dec
(8) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(47) |
Feb
(66) |
Mar
(23) |
Apr
(115) |
May
(24) |
Jun
(53) |
Jul
(10) |
Aug
(279) |
Sep
(84) |
Oct
(149) |
Nov
(138) |
Dec
(52) |
| 2003 |
Jan
(22) |
Feb
(20) |
Mar
(29) |
Apr
(106) |
May
(170) |
Jun
(122) |
Jul
(70) |
Aug
(64) |
Sep
(27) |
Oct
(71) |
Nov
(49) |
Dec
(9) |
| 2004 |
Jan
(7) |
Feb
(38) |
Mar
(3) |
Apr
(9) |
May
(22) |
Jun
(4) |
Jul
(1) |
Aug
(2) |
Sep
(2) |
Oct
|
Nov
(15) |
Dec
(2) |
| 2005 |
Jan
(1) |
Feb
(1) |
Mar
|
Apr
(1) |
May
(28) |
Jun
(3) |
Jul
(11) |
Aug
(5) |
Sep
(1) |
Oct
(5) |
Nov
(2) |
Dec
(3) |
| 2006 |
Jan
(8) |
Feb
(3) |
Mar
(8) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Steve F. <sm...@us...> - 2003-11-18 23:12:55
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic
In directory sc8-pr-cvs1:/tmp/cvs-serv345/src/core/com/mockobjects/dynamic
Modified Files:
Invocation.java Invokable.java DynamicMockError.java
LIFOInvocationDispatcher.java VoidStub.java C.java
CoreMock.java ReturnStub.java InvocationMatcher.java
InvocationDispatcher.java InvocationMocker.java Stub.java
ThrowStub.java
Log Message:
Added better error reporting. Shows invocation and invokables.
Index: Invocation.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/Invocation.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Invocation.java 20 Aug 2003 21:51:27 -0000 1.2
+++ Invocation.java 18 Nov 2003 23:12:50 -0000 1.3
@@ -15,14 +15,16 @@
// TODO Simplify this (smgf)
public class Invocation
{
+ private Class declaringClass;
private String name;
private List parameterTypes;
private Class returnType;
private List parameterValues;
- public Invocation( String name, Class[] parameterTypes,
+ public Invocation( Class declaringClass, String name, Class[] parameterTypes,
Class returnType, Object[] parameterValues )
{
+ this.declaringClass = declaringClass;
this.name = name;
this.parameterTypes = Arrays.asList(parameterTypes);
this.returnType = returnType;
@@ -34,7 +36,7 @@
}
public Invocation( Method method, Object[] parameterValues ) {
- this( method.getName(), method.getParameterTypes(),
+ this( method.getDeclaringClass(), method.getName(), method.getParameterTypes(),
method.getReturnType(), parameterValues );
}
@@ -58,12 +60,8 @@
return DynamicUtil.methodToString( name, parameterValues.toArray() );
}
- public boolean equals( Object o ) {
- if( o instanceof Invocation ) {
- return this.equals((Invocation)o);
- } else {
- return false;
- }
+ public boolean equals( Object other ) {
+ return ( other instanceof Invocation ) && this.equals((Invocation)other);
}
public int hashCode() {
@@ -100,4 +98,17 @@
return name.equals("getMockName")
&& parameterValues.size() == 0;
}
+
+ public StringBuffer writeTo(StringBuffer buffer) {
+ buffer.append("Invocation: ");
+ writeDeclaringClassName(buffer).append(".")
+ .append(name).append("(");
+ DynamicUtil.join(parameterValues.toArray(), buffer);
+ buffer.append(")\n");
+ return buffer;
+ }
+
+ private StringBuffer writeDeclaringClassName(StringBuffer buffer) {
+ return buffer.append(declaringClass.getName().substring(declaringClass.getPackage().getName().length()));
+ }
}
Index: Invokable.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/Invokable.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Invokable.java 20 Aug 2003 21:47:58 -0000 1.1
+++ Invokable.java 18 Nov 2003 23:12:50 -0000 1.2
@@ -10,5 +10,7 @@
boolean matches(Invocation invocation);
- Object invoke(Invocation invocation) throws Throwable;
+ Object invoke(Invocation invocation) throws Throwable;
+
+ StringBuffer writeTo(StringBuffer buffer);
}
Index: DynamicMockError.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/DynamicMockError.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- DynamicMockError.java 20 Aug 2003 21:47:58 -0000 1.1
+++ DynamicMockError.java 18 Nov 2003 23:12:50 -0000 1.2
@@ -8,11 +8,24 @@
import junit.framework.AssertionFailedError;
public class DynamicMockError extends AssertionFailedError {
-
public final Invocation invocation;
-
- public DynamicMockError(Invocation invocation, String message) {
+ public final InvocationDispatcher dispatcher;
+
+ public DynamicMockError(Invocation invocation, InvocationDispatcher dispatcher, String message) {
super(message);
this.invocation = invocation;
+ this.dispatcher = dispatcher;
+ }
+
+ public StringBuffer writeTo(StringBuffer buffer) {
+ buffer.append(super.getMessage()).append("\n");
+ invocation.writeTo(buffer);
+ buffer.append("in:\n");
+ dispatcher.writeTo(buffer);
+ return buffer;
+ }
+
+ public String getMessage() {
+ return writeTo(new StringBuffer()).toString();
}
}
Index: LIFOInvocationDispatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/LIFOInvocationDispatcher.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- LIFOInvocationDispatcher.java 4 Oct 2003 22:56:45 -0000 1.2
+++ LIFOInvocationDispatcher.java 18 Nov 2003 23:12:50 -0000 1.3
@@ -23,7 +23,7 @@
return invokable.invoke(invocation);
}
}
- throw new DynamicMockError(invocation, "No match found");
+ throw new DynamicMockError(invocation, this, "No match found");
}
public void add(Invokable invokable) {
@@ -40,5 +40,12 @@
public void clear() {
invokables.clear();
}
+
+ public void writeTo(StringBuffer buffer) {
+ Iterator iterator = invokables.iterator();
+ while (iterator.hasNext()) {
+ ((Invokable)iterator.next()).writeTo(buffer);
+ }
+ }
}
Index: VoidStub.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/VoidStub.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- VoidStub.java 8 Oct 2003 23:47:14 -0000 1.8
+++ VoidStub.java 18 Nov 2003 23:12:50 -0000 1.9
@@ -5,13 +5,12 @@
public class VoidStub extends CallStub {
-
- public String getDescription() {
- return "returns <void>";
- }
-
public Object invoke(Invocation invocation) throws Throwable {
return null;
+ }
+
+ public StringBuffer writeTo(StringBuffer buffer) {
+ return buffer.append("returns <void>");
}
}
Index: C.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/C.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- C.java 29 Oct 2003 22:11:35 -0000 1.8
+++ C.java 18 Nov 2003 23:12:51 -0000 1.9
@@ -23,11 +23,13 @@
public static final InvocationMatcher NO_ARGS =
new StatelessInvocationMatcher() {
public boolean matches(Invocation invocation) { return invocation.getParameterValues().isEmpty();}
+ public StringBuffer writeTo(StringBuffer buffer) { return buffer.append("No arguments"); }
};
public static final InvocationMatcher ANY_ARGS =
new StatelessInvocationMatcher() {
public boolean matches(Invocation invocation) { return true;}
+ public StringBuffer writeTo(StringBuffer buffer) { return buffer.append("Any arguments"); }
};
public static Constraint same( Object o ) {
Index: CoreMock.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/CoreMock.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- CoreMock.java 29 Oct 2003 22:11:35 -0000 1.14
+++ CoreMock.java 18 Nov 2003 23:12:51 -0000 1.15
@@ -15,8 +15,6 @@
this.proxy = Proxy.newProxyInstance(getClass().getClassLoader(), new Class[] { mockedClass }, this);
this.name = name;
this.invocationDispatcher = invocationDispatcher;
-
- // callables.addStub(new ProxyIsEqual(this.proxy));
}
public Object proxy() {
@@ -35,8 +33,12 @@
} else {
return invocationDispatcher.dispatch(invocation);
}
+ } catch (DynamicMockError error) {
+ DynamicMockError newError = new DynamicMockError(invocation, invocationDispatcher, name);
+ newError.fillInStackTrace();
+ throw newError;
} catch (AssertionFailedError ex) {
- DynamicMockError error = new DynamicMockError(invocation, name + ": " + ex.getMessage());
+ DynamicMockError error = new DynamicMockError(invocation, invocationDispatcher, ex.getMessage());
error.fillInStackTrace();
throw error;
}
Index: ReturnStub.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/ReturnStub.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- ReturnStub.java 5 Oct 2003 09:28:15 -0000 1.8
+++ ReturnStub.java 18 Nov 2003 23:12:51 -0000 1.9
@@ -17,7 +17,7 @@
return result;
}
- public String getDescription() {
- return "returns <" + result + ">";
+ public StringBuffer writeTo(StringBuffer buffer) {
+ return buffer.append("returns <").append(result).append(">");
}
}
Index: InvocationMatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/InvocationMatcher.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- InvocationMatcher.java 29 Oct 2003 22:11:35 -0000 1.4
+++ InvocationMatcher.java 18 Nov 2003 23:12:51 -0000 1.5
@@ -11,4 +11,5 @@
{
boolean matches(Invocation invocation);
void invoked(Invocation invocation);
+ StringBuffer writeTo(StringBuffer buffer);
}
Index: InvocationDispatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/InvocationDispatcher.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- InvocationDispatcher.java 11 Sep 2003 21:39:01 -0000 1.3
+++ InvocationDispatcher.java 18 Nov 2003 23:12:51 -0000 1.4
@@ -11,4 +11,5 @@
Object dispatch(Invocation invocation) throws Throwable;
void add(Invokable invokable);
void clear();
+ void writeTo(StringBuffer buffer);
}
Index: InvocationMocker.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/InvocationMocker.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- InvocationMocker.java 13 Nov 2003 00:58:07 -0000 1.8
+++ InvocationMocker.java 18 Nov 2003 23:12:51 -0000 1.9
@@ -66,4 +66,13 @@
public void setStub(Stub stub) {
this.stub = stub;
}
+
+ public StringBuffer writeTo(StringBuffer buffer) {
+ Iterator it = matchers.iterator();
+ while (it.hasNext()) {
+ ((InvocationMatcher)it.next()).writeTo(buffer).append(", ");
+ }
+ stub.writeTo(buffer);
+ return buffer.append("\n");
+ }
}
Index: Stub.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/Stub.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- Stub.java 29 Oct 2003 22:11:35 -0000 1.7
+++ Stub.java 18 Nov 2003 23:12:51 -0000 1.8
@@ -25,5 +25,5 @@
*/
Object invoke( Invocation invocation ) throws Throwable;
- String getDescription();
+ StringBuffer writeTo(StringBuffer buffer);
}
Index: ThrowStub.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/ThrowStub.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ThrowStub.java 8 Oct 2003 23:47:14 -0000 1.9
+++ ThrowStub.java 18 Nov 2003 23:12:51 -0000 1.10
@@ -16,7 +16,7 @@
throw throwable;
}
- public String getDescription() {
- return "throws <" + throwable + ">";
+ public StringBuffer writeTo(StringBuffer buffer) {
+ return buffer.append("throws <").append(throwable).append(">");
}
}
|
|
From: Steve F. <sm...@us...> - 2003-11-18 23:12:55
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/matchers
In directory sc8-pr-cvs1:/tmp/cvs-serv345/src/core/com/mockobjects/dynamic/matchers
Modified Files:
CallOnceMatcher.java MethodNameMatcher.java
ArgumentsMatcher.java
Log Message:
Added better error reporting. Shows invocation and invokables.
Index: CallOnceMatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/matchers/CallOnceMatcher.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- CallOnceMatcher.java 29 Oct 2003 22:11:35 -0000 1.1
+++ CallOnceMatcher.java 18 Nov 2003 23:12:51 -0000 1.2
@@ -23,4 +23,8 @@
Assert.assertTrue("Should have been invoked", wasInvoked);
}
+ public StringBuffer writeTo(StringBuffer buffer) {
+ return buffer.append("Call once");
+ }
+
}
Index: MethodNameMatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/matchers/MethodNameMatcher.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- MethodNameMatcher.java 29 Oct 2003 22:11:35 -0000 1.1
+++ MethodNameMatcher.java 18 Nov 2003 23:12:51 -0000 1.2
@@ -22,4 +22,7 @@
public boolean matches(Invocation invocation) {
return constraint.eval(invocation.getMethodName());
}
+ public StringBuffer writeTo(StringBuffer buffer) {
+ return buffer.append("Method ").append(constraint);
+ }
}
Index: ArgumentsMatcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/matchers/ArgumentsMatcher.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ArgumentsMatcher.java 29 Oct 2003 22:11:35 -0000 1.1
+++ ArgumentsMatcher.java 18 Nov 2003 23:12:51 -0000 1.2
@@ -38,15 +38,19 @@
}
public String toString() {
- StringBuffer result = new StringBuffer();
- result.append("ArgumentMatcher: ");
- for (int i = 0; i < constraints.length; ++i) {
- result.append(constraints[i]).append(", ");
- }
- return result.toString();
+ return writeTo(new StringBuffer()).toString();
}
public boolean equals(Object other) {
return other != null && toString().equals(other.toString());
+ }
+
+ public StringBuffer writeTo(StringBuffer buffer) {
+ buffer.append("Arguments [");
+ for (int i = 0; i < constraints.length; ++i) {
+ buffer.append(constraints[i]).append(", ");
+ }
+ buffer.append("]");
+ return buffer;
}
}
|
|
From: Steve F. <sm...@us...> - 2003-11-14 16:57:50
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv25546/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop
Modified Files:
Tag: nat_0001
FruitShopAcceptanceTest.java
Log Message:
Index: FruitShopAcceptanceTest.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop/Attic/FruitShopAcceptanceTest.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- FruitShopAcceptanceTest.java 14 Nov 2003 16:18:04 -0000 1.1.2.1
+++ FruitShopAcceptanceTest.java 14 Nov 2003 16:57:47 -0000 1.1.2.2
@@ -56,7 +56,7 @@
}
private void findAnOfferForCheapestFruit() {
- offer = directory.findCheapestFruit(REQUIRED_FRUIT);
+ offer = directory.findCheapest(REQUIRED_FRUIT);
}
private void testThatFoundOfferIsForLowPrice() {
|
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
|
|
From: Steve F. <sm...@us...> - 2003-11-14 16:57:24
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/doc In directory sc8-pr-cvs1:/tmp/cvs-serv25410/talks/fruitshop/doc Modified Files: Mock Objects.ppt Log Message: |
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:08
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv16656/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop
Added Files:
Tag: nat_0001
FruitShopAcceptanceTest.java
Log Message:
--- NEW FILE: FruitShopAcceptanceTest.java ---
/*
* Created on 14-Nov-2003
*/
package acceptance.tests.mockobjects.talks.fruitshop;
import com.mockobjects.talks.fruitshop.*;
import junit.framework.TestCase;
public class FruitShopAcceptanceTest
extends TestCase
{
Directory directory;
Shop cheapShop;
Shop expensiveShop;
Shop emptyShop;
Offer offer;
static final String REQUIRED_FRUIT = "required fruit";
static final int HIGH_PRICE = 2;
static final int LOW_PRICE = 1;
public void setUp() {
directory = new Directory();
cheapShop = new Shop();
expensiveShop = new Shop();
emptyShop = new Shop();
}
public void testGetCheapestFruit() {
addAShopWithoutTheRequiredFruit();
addAShopWithAHighPricedFruit();
addAShopWithALowPricedFruit();
findAnOfferForCheapestFruit();
testThatFoundOfferIsForRequiredFruit();
testThatFoundOfferIsForLowPrice();
testThatFoundOfferIsFromCheapShop();
}
private void addAShopWithoutTheRequiredFruit() {
directory.addShop( emptyShop );
}
private void addAShopWithAHighPricedFruit() {
expensiveShop.addFruit( REQUIRED_FRUIT, HIGH_PRICE );
directory.addShop(expensiveShop);
}
private void addAShopWithALowPricedFruit() {
cheapShop.addFruit( REQUIRED_FRUIT, LOW_PRICE );
directory.addShop(cheapShop);
}
private void findAnOfferForCheapestFruit() {
offer = directory.findCheapestFruit(REQUIRED_FRUIT);
}
private void testThatFoundOfferIsForLowPrice() {
assertEquals( "offer is at low price", LOW_PRICE, offer.getPrice() );
}
private void testThatFoundOfferIsFromCheapShop() {
assertSame( "offer is from cheap shop", cheapShop, offer.getShop() );
}
private void testThatFoundOfferIsForRequiredFruit() {
assertEquals( "offer is for required fruit", REQUIRED_FRUIT, offer.getFruit() );
}
}
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv16656/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Modified Files:
Tag: nat_0001
Shop.java
Added Files:
Tag: nat_0001
Directory.java Offer.java
Removed Files:
Tag: nat_0001
FruitSearcher.java FruitSearcherTest.java
Log Message:
--- NEW FILE: Directory.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public class Directory {
public Directory() {
super(); // TODO Generated constructor stub
}
public Offer findCheapestFruit(String required_fruit) {
return null; // TODO Generated body
}
public void addShop(Shop emptyShop) {
// TODO Generated body
}
}
--- NEW FILE: Offer.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public class Offer {
public Offer() {
super(); // TODO Generated constructor stub
}
public int getPrice() {
return 0; // TODO Generated body
}
public Shop getShop() {
return null; // TODO Generated body
}
public String getFruit() {
return null; // TODO Generated body
}
}
Index: Shop.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Shop.java,v
retrieving revision 1.1
retrieving revision 1.1.6.1
diff -u -r1.1 -r1.1.6.1
--- Shop.java 14 Nov 2003 14:18:10 -0000 1.1
+++ Shop.java 14 Nov 2003 16:18:04 -0000 1.1.6.1
@@ -6,6 +6,14 @@
/**
* @author steve.freeman
*/
-public interface Shop {
+public class Shop {
+
+ public Shop() {
+ super(); // TODO Generated constructor stub
+ }
+
+ public void addFruit(String required_fruit, int high_price) {
+ // TODO Generated body
+ }
}
--- FruitSearcher.java DELETED ---
--- FruitSearcherTest.java DELETED ---
|
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:02
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests In directory sc8-pr-cvs1:/tmp/cvs-serv16572/talks/fruitshop/src/acceptance/tests Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:01
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop In directory sc8-pr-cvs1:/tmp/cvs-serv16572/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks/fruitshop added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:00
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks In directory sc8-pr-cvs1:/tmp/cvs-serv16572/talks/fruitshop/src/acceptance/tests/mockobjects/talks Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects/talks added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:00
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects In directory sc8-pr-cvs1:/tmp/cvs-serv16572/talks/fruitshop/src/acceptance/tests/mockobjects Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance/tests/mockobjects added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-14 16:18:00
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance In directory sc8-pr-cvs1:/tmp/cvs-serv16572/talks/fruitshop/src/acceptance Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/acceptance added to the repository --> Using per-directory sticky tag `nat_0001' |
|
From: Steve F. <sm...@us...> - 2003-11-14 15:44:01
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv9993/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Modified Files:
Tag: steve_0001
DirectoryTest.java Shop.java
Added Files:
Tag: steve_0001
FruitShop.java
Log Message:
--- NEW FILE: FruitShop.java ---
package com.mockobjects.talks.fruitshop;
public class FruitShop implements Shop {
String fruitName;
public void makeOffer(Shopper shopper, String requestedFruit) {
if (requestedFruit.equals(fruitName)) {
shopper.isOffered(new Offer() {});
}
}
public void addFruit(String fruitName) {
this.fruitName = fruitName;
}
}
Index: DirectoryTest.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Attic/DirectoryTest.java,v
retrieving revision 1.3.2.1
retrieving revision 1.3.2.2
diff -u -r1.3.2.1 -r1.3.2.2
--- DirectoryTest.java 14 Nov 2003 15:17:46 -0000 1.3.2.1
+++ DirectoryTest.java 14 Nov 2003 15:43:53 -0000 1.3.2.2
@@ -18,15 +18,24 @@
mockShopper.verify();
}
- public void testOneShopHasRightFruit() {
+ public void testNoOfferWhenOneShopHasNoFruit() {
Mock mockShopper= new Mock(Shopper.class);
Directory directory = new Directory();
- directory.addShop(new Shop() {
- public void makeOffer(Shopper shopper, String fruitName) {
- shopper.isOffered(new Offer() {});
- }
- });
+ directory.addShop(new FruitShop());
+
+ directory.askForLowestPrice((Shopper)mockShopper.proxy(), "fruit name");
+
+ mockShopper.verify();
+ }
+
+ public void testOneOfferWhenOneShopHasRightFruit() {
+ Mock mockShopper= new Mock(Shopper.class);
+
+ Directory directory = new Directory();
+ FruitShop shop = new FruitShop();
+ shop.addFruit("fruit name");
+ directory.addShop(shop);
mockShopper.expect("isOffered", C.isA(Offer.class));
directory.askForLowestPrice((Shopper)mockShopper.proxy(), "fruit name");
Index: Shop.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Shop.java,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -r1.1.4.1 -r1.1.4.2
--- Shop.java 14 Nov 2003 15:17:46 -0000 1.1.4.1
+++ Shop.java 14 Nov 2003 15:43:55 -0000 1.1.4.2
@@ -7,5 +7,5 @@
* @author steve.freeman
*/
public interface Shop {
- void makeOffer(Shopper shoppper, String fruitName);
+ void makeOffer(Shopper shopper, String fruitName);
}
|
|
From: Steve F. <sm...@us...> - 2003-11-14 15:17:49
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv4248/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Modified Files:
Tag: steve_0001
Shop.java
Added Files:
Tag: steve_0001
DirectoryTest.java Shopper.java Directory.java Offer.java
Removed Files:
Tag: steve_0001
FruitSearcher.java FruitSearcherTest.java
Log Message:
--- NEW FILE: DirectoryTest.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
import com.mockobjects.dynamic.*;
import junit.framework.TestCase;
public class DirectoryTest extends TestCase {
public void testNothingFoundWhenNoShops() {
Mock mockShopper= new Mock(Shopper.class);
Directory directory = new Directory();
directory.askForLowestPrice((Shopper)mockShopper.proxy(), "fruit name");
mockShopper.verify();
}
public void testOneShopHasRightFruit() {
Mock mockShopper= new Mock(Shopper.class);
Directory directory = new Directory();
directory.addShop(new Shop() {
public void makeOffer(Shopper shopper, String fruitName) {
shopper.isOffered(new Offer() {});
}
});
mockShopper.expect("isOffered", C.isA(Offer.class));
directory.askForLowestPrice((Shopper)mockShopper.proxy(), "fruit name");
mockShopper.verify();
}
}
--- NEW FILE: Shopper.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public interface Shopper {
public void isOffered(Offer offer);
}
--- NEW FILE: Directory.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public class Directory {
public Directory() {
super(); // TODO Generated constructor stub
}
private Shop shop;
public void askForLowestPrice(Shopper shopper, String fruitName) {
if (shop != null) {
shop.makeOffer(shopper, fruitName);
}
}
public void addShop(Shop shop) {
this.shop = shop;
}
}
--- NEW FILE: Offer.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public interface Offer {
}
Index: Shop.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/Shop.java,v
retrieving revision 1.1
retrieving revision 1.1.4.1
diff -u -r1.1 -r1.1.4.1
--- Shop.java 14 Nov 2003 14:18:10 -0000 1.1
+++ Shop.java 14 Nov 2003 15:17:46 -0000 1.1.4.1
@@ -7,5 +7,5 @@
* @author steve.freeman
*/
public interface Shop {
-
+ void makeOffer(Shopper shoppper, String fruitName);
}
--- FruitSearcher.java DELETED ---
--- FruitSearcherTest.java DELETED ---
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv542/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Modified Files:
Tag: joe0001
FruitSearcher.java FruitSearcherTest.java
Added Files:
Tag: joe0001
Directory.java Offer.java
Log Message:
--- NEW FILE: Directory.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
import java.util.Iterator;
/**
* @author steve.freeman
*/
public interface Directory {
Iterator getShops();
}
--- NEW FILE: Offer.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public interface Offer {
}
Index: FruitSearcher.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/FruitSearcher.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- FruitSearcher.java 14 Nov 2003 14:18:10 -0000 1.1
+++ FruitSearcher.java 14 Nov 2003 14:59:08 -0000 1.1.2.1
@@ -7,12 +7,15 @@
* @author steve.freeman
*/
public class FruitSearcher {
-
- public FruitSearcher() {
- super(); // TODO Generated constructor stub
+ private Directory directory;
+
+
+ public FruitSearcher(Directory directory) {
+ this.directory = directory;
}
- public Shop findShopWithCheapest(String fruitName) {
+ public Offer findCheapest(String fruitName) {
+ directory.getShops();
return null;
}
Index: FruitSearcherTest.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/FruitSearcherTest.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- FruitSearcherTest.java 14 Nov 2003 14:18:10 -0000 1.1
+++ FruitSearcherTest.java 14 Nov 2003 14:59:08 -0000 1.1.2.1
@@ -3,14 +3,37 @@
*/
package com.mockobjects.talks.fruitshop;
+import java.util.Arrays;
+import java.util.List;
+
+import com.mockobjects.dynamic.Mock;
+
import junit.framework.TestCase;
public class FruitSearcherTest extends TestCase {
+ Mock mockDirectory;
+ FruitSearcher fruitSearcher;
+
+ public void setUp() {
+ mockDirectory = new Mock(Directory.class);
+ fruitSearcher = new FruitSearcher((Directory)mockDirectory.proxy());
+ }
+
public void testReturnsNullIfNoShops() {
- FruitSearcher fruitSearcher = new FruitSearcher();
-
- assertNull("Should be null shop", fruitSearcher.findShopWithCheapest("fruit name"));
+ assertNull("Should be null offer", fruitSearcher.findCheapest("fruit name"));
}
+ public void testReturnsNullIfShopDoesNotContainRequiredFruit() {
+ Mock shopStub = new Mock(Shop.class);
+ shopStub.matchAndReturn("sellsFruit", false);
+
+ List shopList = Arrays.asList( new Object[] {
+ shopStub.proxy()
+ } );
+ mockDirectory.expectAndReturn("getShops", shopList.iterator() );
+
+ assertNull("Should be null offer", fruitSearcher.findCheapest("fruit name"));
+ mockDirectory.verify();
+ }
}
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop
In directory sc8-pr-cvs1:/tmp/cvs-serv24637/talks/fruitshop/src/com/mockobjects/talks/fruitshop
Added Files:
FruitSearcher.java FruitSearcherTest.java Shop.java
Removed Files:
DirectoryTest.java Directory.java
Log Message:
Joe's version
--- NEW FILE: FruitSearcher.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public class FruitSearcher {
public FruitSearcher() {
super(); // TODO Generated constructor stub
}
public Shop findShopWithCheapest(String fruitName) {
return null;
}
}
--- NEW FILE: FruitSearcherTest.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
import junit.framework.TestCase;
public class FruitSearcherTest extends TestCase {
public void testReturnsNullIfNoShops() {
FruitSearcher fruitSearcher = new FruitSearcher();
assertNull("Should be null shop", fruitSearcher.findShopWithCheapest("fruit name"));
}
}
--- NEW FILE: Shop.java ---
/*
* Created on 14-Nov-2003
*/
package com.mockobjects.talks.fruitshop;
/**
* @author steve.freeman
*/
public interface Shop {
}
--- DirectoryTest.java DELETED ---
--- Directory.java DELETED ---
|
|
From: Steve F. <sm...@us...> - 2003-11-13 00:58:11
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic
In directory sc8-pr-cvs1:/tmp/cvs-serv19664/src/core/com/mockobjects/dynamic
Modified Files:
InvocationMocker.java DynaMock.java
Added Files:
ExpectationBuilder.java StubBuilder.java
InvocationMockerBuilder.java
Removed Files:
MethodExpectation.java
Log Message:
changed name of MethodExpectation to InvocationMockerBuilder
Added stub assignment builder
--- NEW FILE: ExpectationBuilder.java ---
/*
* Created on 12-Nov-2003
*/
package com.mockobjects.dynamic;
public interface ExpectationBuilder {
}
--- NEW FILE: StubBuilder.java ---
/*
* copyright Mockobjects.com 17-Oct-2003
*
*/
package com.mockobjects.dynamic;
public interface StubBuilder {
ExpectationBuilder isVoid();
ExpectationBuilder returns(Object returnValue);
ExpectationBuilder willThrow(Throwable throwable);
}
--- NEW FILE: InvocationMockerBuilder.java ---
/*
* Created on 12-Nov-2003
*/
package com.mockobjects.dynamic;
public class InvocationMockerBuilder implements StubBuilder, ExpectationBuilder {
private InvocationMocker mocker;
public InvocationMockerBuilder(InvocationMocker mocker) {
this.mocker = mocker;
}
public ExpectationBuilder isVoid() {
mocker.setStub(new VoidStub());
return this;
}
public ExpectationBuilder returns(Object returnValue) {
mocker.setStub(new ReturnStub(returnValue));
return this;
}
public ExpectationBuilder willThrow(Throwable throwable) {
mocker.setStub(new ThrowStub(throwable));
return this;
}
}
Index: InvocationMocker.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/InvocationMocker.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- InvocationMocker.java 29 Oct 2003 22:11:35 -0000 1.7
+++ InvocationMocker.java 13 Nov 2003 00:58:07 -0000 1.8
@@ -62,4 +62,8 @@
matchers.add(matcher);
return this;
}
+
+ public void setStub(Stub stub) {
+ this.stub = stub;
+ }
}
Index: DynaMock.java
===================================================================
RCS file: /cvsroot/mockobjects/mockobjects-java/src/core/com/mockobjects/dynamic/DynaMock.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- DynaMock.java 12 Nov 2003 20:38:47 -0000 1.3
+++ DynaMock.java 13 Nov 2003 00:58:07 -0000 1.4
@@ -28,9 +28,9 @@
coreMock.verify();
}
- public MethodExpectation method(String methodName, Object arg1, Object arg2) {
+ public StubBuilder method(String methodName, Object arg1, Object arg2) {
InvocationMocker mocker = new InvocationMocker(methodName, C.eq(arg1, arg2), new VoidStub());
coreMock.add(mocker);
- return new MethodExpectation(mocker);
+ return new InvocationMockerBuilder(mocker);
}
}
--- MethodExpectation.java DELETED ---
|
|
From: Steve F. <sm...@us...> - 2003-11-13 00:58:11
|
Update of /cvsroot/mockobjects/mockobjects-java/src/core/test/mockobjects/dynamic In directory sc8-pr-cvs1:/tmp/cvs-serv19664/src/core/test/mockobjects/dynamic Added Files: InvocationMockerBuilderTest.java Removed Files: MethodExpectationTest.java Log Message: changed name of MethodExpectation to InvocationMockerBuilder Added stub assignment builder --- NEW FILE: InvocationMockerBuilderTest.java --- /* * Copyright mockobjects.com 17-Oct-2003 */ package test.mockobjects.dynamic; import junit.framework.TestCase; import com.mockobjects.ExpectationValue; import com.mockobjects.dynamic.*; import com.mockobjects.util.Verifier; public class InvocationMockerBuilderTest extends TestCase { public class MockInvocationMocker extends InvocationMocker { public MockInvocationMocker() { super(new InvocationMatcher[0], new VoidStub()); } public ExpectationValue setStubType = new ExpectationValue("setStub type"); public void setStub(Stub stub) { setStubType.setActual(stub.getClass()); } public void verifyExpectations() { Verifier.verifyObject(this); } } private MockInvocationMocker mocker = new MockInvocationMocker(); private InvocationMockerBuilder builder = new InvocationMockerBuilder(mocker); public void testIsVoidSetsVoidStub() { mocker.setStubType.setExpected(VoidStub.class); assertNotNull("Should be expectation builder", builder.isVoid()); mocker.verifyExpectations(); } public void testReturnsSetsReturnStub() { mocker.setStubType.setExpected(ReturnStub.class); assertNotNull("Should be expectation builder", builder.returns("return value")); mocker.verifyExpectations(); } public void testThrowsSetsThrowStub() { mocker.setStubType.setExpected(ThrowStub.class); assertNotNull("Should be expectation builder", builder.willThrow(new Exception("thrown value"))); mocker.verifyExpectations(); } } --- MethodExpectationTest.java DELETED --- |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:26:38
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop In directory sc8-pr-cvs1:/tmp/cvs-serv11515/talks/fruitshop/src/com/mockobjects/talks/fruitshop Modified Files: DirectoryTest.java Added Files: Directory.java Log Message: first test --- NEW FILE: Directory.java --- /* * Mockobjects.com 12-Nov-2003 */ package com.mockobjects.talks.fruitshop; public class Directory { public Object findCheapestFruit(String fruitname) { return null; } } Index: DirectoryTest.java =================================================================== RCS file: /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop/DirectoryTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- DirectoryTest.java 12 Nov 2003 21:18:07 -0000 1.1 +++ DirectoryTest.java 12 Nov 2003 21:26:35 -0000 1.2 @@ -7,5 +7,9 @@ public class DirectoryTest extends TestCase { - + public void testReturnsNullWhenHasNoShops() { + Directory directory = new Directory(); + + assertNull("No shop returned", directory.findCheapestFruit("orange")); + } } |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:18:10
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop In directory sc8-pr-cvs1:/tmp/cvs-serv9549/talks/fruitshop/src/com/mockobjects/talks/fruitshop Added Files: DirectoryTest.java Log Message: --- NEW FILE: DirectoryTest.java --- /* * Copyright mockobjects.com 12-Nov-2003 */ package com.mockobjects.talks.fruitshop; import junit.framework.TestCase; public class DirectoryTest extends TestCase { } |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:18:01
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks In directory sc8-pr-cvs1:/tmp/cvs-serv9442/talks/fruitshop/src/com/mockobjects/talks Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:18:01
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop In directory sc8-pr-cvs1:/tmp/cvs-serv9442/talks/fruitshop/src/com/mockobjects/talks/fruitshop Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects/talks/fruitshop added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:18:00
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects In directory sc8-pr-cvs1:/tmp/cvs-serv9442/talks/fruitshop/src/com/mockobjects Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com/mockobjects added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:18:00
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com In directory sc8-pr-cvs1:/tmp/cvs-serv9442/talks/fruitshop/src/com Log Message: Directory /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/src/com added to the repository |
|
From: Steve F. <sm...@us...> - 2003-11-12 21:16:02
|
Update of /cvsroot/mockobjects/mockobjects_education/talks/fruitshop/lib In directory sc8-pr-cvs1:/tmp/cvs-serv9018/talks/fruitshop/lib Added Files: .keepit Log Message: --- NEW FILE: .keepit --- |