KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > idaremedia > antx > flowcontrol > tests > ProtectedTaskTest


1 /**
2  * $Id: ProtectedTaskTest.java 180 2007-03-15 12:56:38Z ssmc $
3  * Copyright 2002-2004 iDare Media, Inc. All rights reserved.
4  *
5  * Originally written by iDare Media, Inc. for release into the public domain. This
6  * library, source form and binary form, is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public License as published by the
8  * Free Software Foundation; either version 2.1 of the License, or (at your option) any
9  * later version.<p>
10  *
11  * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
12  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13  * See the GNU LGPL (GNU Lesser General Public License) for more details.<p>
14  *
15  * You should have received a copy of the GNU Lesser General Public License along with this
16  * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite
17  * 330, Boston, MA 02111-1307 USA. The LGPL can be found online at
18  * http://www.fsf.org/copyleft/lesser.html<p>
19  *
20  * This product has been influenced by several projects within the open-source community.
21  * The JWare developers wish to acknowledge the open-source community's support. For more
22  * information regarding the open-source products used within JWare, please visit the
23  * JWare website.
24  *----------------------------------------------------------------------------------------*
25  * WEBSITE- http://www.jware.info EMAIL- inquiries@jware.info
26  *----------------------------------------------------------------------------------------*
27  **/

28
29 package com.idaremedia.antx.flowcontrol.tests;
30
31 import junit.framework.TestSuite;
32
33 import com.idaremedia.antx.ut.HTC;
34 import com.idaremedia.antx.ut.HTCUtils;
35
36 /**
37  * Class test for {@linkplain com.idaremedia.antx.flowcontrol.wrap.ProtectedTaskSet
38  * ProtectedTaskSet}.
39  *
40  * @since JWare/AntX 0.1
41  * @author ssmc, &copy;2002-2004 <a HREF="http://www.jware.info">iDare&nbsp;Media,&nbsp;Inc.</a>
42  * @version 0.5
43  * @.safety single
44  * @.group impl,test
45  **/

46
47 public final class ProtectedTaskTest extends HTC
48 {
49     /** <i>PET</i> Test Category. **/
50     public static final String JavaDoc TEST_CATEGORY="CLASS";
51
52
53     /**
54      * Create new ProtectedTaskTest testcase.
55      **/

56     public ProtectedTaskTest(String JavaDoc methodName)
57     {
58         super("ProtectedTaskSet::",methodName);
59     }
60
61
62     /**
63      * Create full test suite for ProtectedTaskSet.
64      **/

65     public static TestSuite suite()
66     {
67         return new TestSuite(ProtectedTaskTest.class);
68     }
69
70
71     /**
72      * Create baseline test suite for ProtectedTaskSet (same as full).
73      **/

74     public static TestSuite baseline()
75     {
76         return suite();//new BaselineSuite(ProtectedTaskTest.class);
77
}
78
79
80     /**
81      * Make this test (standalone) self-running.
82      **/

83     public static void main(String JavaDoc[] argv)
84     {
85         HTCUtils.quickCheck(suite());
86     }
87
88
89 // ---------------------------------------------------------------------------------------------------------
90
// ---------------------------------------- [ Misc Setup Methods ] -----------------------------------------
91
// ---------------------------------------------------------------------------------------------------------
92

93     protected void setUp() throws Exception JavaDoc
94     {
95         configureProjectFromResource("protect.xml");
96     }
97
98 // ---------------------------------------------------------------------------------------------------------
99
// ------------------------------------------- [ The Test Cases ] ------------------------------------------
100
// ---------------------------------------------------------------------------------------------------------
101

102     public void checkBaseline()
103     {
104         //--Ensures setUp() works and can find our xml file!
105
}
106
107     public void testBaseline()
108     {
109         checkBaseline();
110     }
111
112     public void testCanFreeNestProtectionHelpers()
113     {
114         configureProjectFromResource("broken_protect0.xml");
115         expectBuildException("testCantFreeNestIfError","IfError Requires ProtectedBlock");
116         expectBuildException("testCantFreeNestAlways","Always Requires ProtectedBlock");
117     }
118
119     public void testPropagateBarfsByDefault()
120     {
121         runExpecting("testBarfsByDefault","Failed Assertion");
122     }
123
124     public void testConsumesBarfsIfNoHalt()
125     {
126         String JavaDoc log= runTarget("testConsumeBarfage");
127         verifyOccurances(log,"((END))",1);
128     }
129
130     public void testAlwaysNoError()
131     {
132         String JavaDoc log= runTarget("testAlwaysNoError");
133         verifyOccurances(log,"helloworld((ALWAYS))",1);
134     }
135
136     public void testAlwaysWithError()
137     {
138         String JavaDoc log= runExpecting("testAlwaysWithError","Failed-Assertion");
139         verifyOccurances(log,"helloworld((ALWAYS))",1);
140     }
141
142     public void testIfError()
143     {
144         String JavaDoc log= runExpecting("testIfError","Failed-Assertion");
145         verifyOccurances(log,"helloworld((IFERROR))",1);
146         println("Failure Property: "+getProject().getProperty("the.barfage"));
147     }
148
149     public void testIfErrorBeforeAlways()
150     {
151         String JavaDoc log= runTarget("testIfErrorBeforeAlways");
152         verifyOccurances(log,"helloworld((ALWAYS))",1);
153         verifyOccurances(log,"helloworld((END))",1);
154     }
155
156     public void testHelpersOrderUnimportant()
157     {
158         String JavaDoc log= runTarget("testHelperOrderUnimportant");
159         verifyOccurances(log,"helloworld((ALWAYS))",1);
160         verifyOccurances(log,"helloworld((IFERROR))",1);
161         verifyOccurances(log,"hiworld((notreached))",0);
162         String JavaDoc[] strings = {"hiworld((0))","hiworld((1))",
163                             "helloworld((IFERROR))", "helloworld((ALWAYS))",
164                             "byeworld((TARGET))"};
165         verifyOutputInOrder(log, strings);
166     }
167
168     public void testNestedProtectedBlocks()
169     {
170         String JavaDoc log= runTarget("testNestingBlocks");
171         verifyOccurances(log,"hiworld((outer.notreached))",0);
172         verifyOccurances(log,"hiworld((inner.notreached))",0);
173
174         String JavaDoc[] strings = {"hiworld((outer.0))",
175                             "hiworld((inner.0))",
176                             "byeworld((IFERROR.inner))",
177                             "helloworld((ALWAYS.inner))",
178                             "helloworld((ALWAYS.postcleanup))",
179                             "helloworld((ALWAYS.outer))",
180                             "byeworld((TARGET))"};
181         verifyOutputInOrder(log, strings);
182     }
183
184     public void testCapturedErrorSnapshots()
185     {
186         String JavaDoc log = runTarget("testCaptureIfError");
187         verifyOccurances(log,"p.1=",1);
188         verifyOccurances(log,"p.2=",1);
189     }
190
191 // public void testConditionalIfBlock()
192
// {
193
// runTargetNoOutput("testProtectConditionalIfFalse");
194
// }
195
//
196
// public void testConditionalUnlessBlock()
197
// {
198
// runTargetNoOutput("testProtectConditionalUnlessTrue");
199
// }
200

201     public void testBadExports()
202     {
203         runTarget("testBadExports");
204     }
205
206     public void testBadTally()
207     {
208         runTargetDumpFullLog("testBadTally");
209     }
210
211     public void testBadAssertLogged()
212     {
213         runTarget("testBadAssertLogged");
214     }
215
216     /** @since JWare/AntX 0.3 **/
217     public void testRulesAndCallerUpdateProperties_AntX03()
218     {
219         runTarget("testRulesAndCallerUpdateProperties");
220     }
221
222     /** @since JWare/AntX 0.4 **/
223     public void testCanWrapMacroMakerBody_AntX04()
224     {
225         runTarget("testCanWrapMacroMakerBody_AntX04");
226     }
227
228     /** @since JWare/AntX 0.4 **/
229     public void testBadFixtureChecks_AntX04()
230     {
231         runTarget("testBadFixtureChecks_AntX04");
232     }
233 }
234
235 /* end-of-ProtectedTaskTest.java */
236
Popular Tags