KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > ozoneDB > tools > OPP > srcgen > builder > TestMethodNameUpgradingClassBuilderDecorator


1 // You can redistribute this software and/or modify it under the terms of
2
// the Ozone Library License version 1 published by ozone-db.org.
3
//
4
// The original code and portions created by Joakim Ohlrogge are
5
// Copyright (C) 1997-@year@ by Joakim Ohlrogge. All rights reserved.
6
//
7
// $Id$
8
package test.ozoneDB.tools.OPP.srcgen.builder;
9
10 import junit.framework.TestCase;
11
12 import java.lang.reflect.Modifier JavaDoc;
13
14 import org.ozoneDB.tools.OPP.srcgen.BuilderException;
15 import org.ozoneDB.tools.OPP.srcgen.ClassBuilder;
16 import org.ozoneDB.tools.OPP.srcgen.builder.MethodNameUpgradingClassBuilderDecorator;
17 import org.ozoneDB.tools.OPP.message.MessageWriter;
18 import org.ozoneDB.tools.OPP.message.StdOutMessageWriter;
19 import org.ozoneDB.core.Lock;
20 import com.mockobjects.util.Verifier;
21 import test.ozoneDB.tools.OPP.srcgen.builder.MockClassBuilder;
22
23 /**
24  * User: Jocke
25  * Date: 2004-jan-04
26  * Time: 13:54:50
27  */

28 public class TestMethodNameUpgradingClassBuilderDecorator extends TestCase {
29     private MockClassBuilder classBuilder;
30     private MethodNameUpgradingClassBuilderDecorator decorator;
31     private MessageWriter messageWriter;
32
33     public TestMethodNameUpgradingClassBuilderDecorator(String JavaDoc s) {
34         super(s);
35     }
36
37     public void setUp() {
38         classBuilder = new MockClassBuilder();
39
40         messageWriter = new StdOutMessageWriter(false, true);
41     }
42
43     public void testMethodUpgrade() throws BuilderException {
44         String JavaDoc interfaces[] = {};
45         classBuilder.setupInit(true);
46         classBuilder.setupBeginClass(Modifier.PUBLIC, "test.dummy.MyClass", "", interfaces);
47
48         ClassBuilder.Parameter constructParam[] = {};
49         String JavaDoc exceptions[] = {};
50         classBuilder.setupMakeConstructor(Modifier.PUBLIC, constructParam, exceptions);
51
52         ClassBuilder.Parameter simpleParam[] = {};
53         classBuilder.setupMakeMethod(Modifier.PUBLIC, "simpleMethod", simpleParam, "void", exceptions, Lock.LEVEL_READ);
54
55         // This method is expected to be upgraded to write
56
ClassBuilder.Parameter updateParam[] = {};
57         classBuilder.setupMakeMethod(Modifier.PUBLIC, "updateMethod_update", updateParam, "void", exceptions, Lock.LEVEL_WRITE);
58
59         decorator = new MethodNameUpgradingClassBuilderDecorator(classBuilder, ".*_update");
60         decorator.init(messageWriter);
61         decorator.beginClass(Modifier.PUBLIC, "test.dummy.MyClass", "", interfaces);
62         decorator.makeConstructor(Modifier.PUBLIC, constructParam, exceptions);
63         decorator.makeMethod(Modifier.PUBLIC, "simpleMethod", simpleParam, "void", exceptions, Lock.LEVEL_READ);
64         // NOTE: We are inputting the method as read, we expect it to be upgraded to write!
65
decorator.makeMethod(Modifier.PUBLIC, "updateMethod_update", updateParam, "void", exceptions, Lock.LEVEL_READ);
66         decorator.endClass();
67         Verifier.verifyObject(this);
68     }
69 }
70
Popular Tags