1 /* Copyright (c) 2000-2003, jMock.org. See bundled LICENSE.txt */
2 package org.jmock.functional;
3
4 import junit.framework.TestCase;
5 import org.jmock.Mock;
6 import org.jmock.dynamic.DynaMock;
7
8 public class DynamicMockExample extends TestCase {
9 public interface Market {
10 }
11
12 public class Agent {
13
14 public Agent(Market market) {
15 }
16
17 public void buyLowestPriceStock(int cost) {
18 // TODO Auto-generated method stub
19 }
20
21 }
22
23 public void testWorkingExample() {
24 DynaMock mockMarket = new DynaMock(Market.class);
25 Agent agent = new Agent((Market) mockMarket.proxy());
26
27 mockMarket.method("buyStock", "IBM", new Integer(10));
28
29 agent.buyLowestPriceStock(20);
30
31 mockMarket.verify();
32 }
33
34 public void xtestExample() {
35 Mock mockMarket = new Mock(Market.class);
36 Agent agent = new Agent((Market) mockMarket.proxy());
37 //
38 //
39 // mockMarket.method("buyStock", "MSFT", new Integer(10)).void();
40 //
41 // mockMarket.method("buyStock", "MSFT", new Integer(10)).returns(true)
42 // .expectOnce();
43 // //.expectNever();
44 // //.addMatcher(new MyExpectation());
45 //
46 // mockMarket.method("listStocks").alwaysReturns(new Vector("MSFT", "ORCL"));
47 // mockMarket.method("getPrice", "MSFT").alwaysReturns(10);
48 // mockMarket.method("getPrice", "ORCL").alwaysReturns(50);
49 //
50 // mockMarket.method(C.equal("buyStock"), C.eq(1)).
51 //
52 // mockMarket.methodName("listStocks").noParams()
53 // .alwaysReturns("MSFT");
54 //
55 // InvocationHandler listInvocation = mockMarket.methodName("listStocks").noParams()
56 // .returns("MSFT")
57 // .returns("ORCL")
58 // .throwsException(new ....);
59 //
60 // mockMarket.methodName("buyStock").params("MSFT", 10).returns(900)
61 // .calledOnce()
62 // .before(listInvocation);
63 // mockMarket.methodName("buyStock").params("ORCL", 2).returns(100)
64 // .calledOnce()
65 // .before(listInvocation);
66 //
67 // mockMarket.newInvocationHandler().addMatcher( new NameMatcher(new IsEqual("buyStock"))
68 // .addMatcher( new ActualParameterMatcher( new Constraint[] { new IsEqual("MSFT"), new IsEqual(new Integer(10)})))
69 // .addStub( new ReturnStub( new Integer(900) )));
70 //
71 //
72 agent.buyLowestPriceStock(1000);
73 }
74 }
This page was automatically generated by Maven