KickJava   Java API By Example, From Geeks To Geeks.

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


1 /**
2  * $Id: SwitchTaskTest.java 180 2007-03-15 12:56:38Z ssmc $
3  * Copyright 2002-2005 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.match.SwitchTask
38  * SwitchTask}.
39  *
40  * @since JWare/AntX 0.1
41  * @author ssmc, &copy;2002-2005 <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 SwitchTaskTest extends HTC
48 {
49     /** <i>PET</i> Test Category. **/
50     public static final String JavaDoc TEST_CATEGORY="CLASS";
51
52
53     /**
54      * Create new SwitchTaskTest testcase.
55      **/

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

65     public static TestSuite suite()
66     {
67         return new TestSuite(SwitchTaskTest.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(SwitchTaskTest.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("switch.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 testNoCasesOK()
113     {
114         runTarget("testEmptyOK");
115     }
116
117     public void testEmptySwitchValueOK()
118     {
119         runTarget("testEmptySwitchValueOK");
120     }
121
122     public void testHaltIfNoMatchByValue()
123     {
124         runTarget("testHaltIfNoMatchValue");
125     }
126
127     public void testHaltIfNoMatchByProperty()
128     {
129         runTarget("testHaltIfNoMatchProperty");
130     }
131
132     public void testNestEqualsFirstForcesOnlyEquals()
133     {
134         verifyCantLoadFile("broken_switch0.xml", "Mixing 'Equals' and 'Like' choices");
135     }
136
137     public void testNestLikeFirstForcesOnlyLikes()
138     {
139         verifyCantLoadFile("broken_switch1.xml", "Mixing 'Equals' and 'Like' choices");
140     }
141
142     public void testEqualsLikeRequireEnclosingMatch()
143     {
144         configureProjectFromResource("broken_switch2.xml");
145         runExpecting("testBrokenXML_LikeEquals_OnlyIn_MatchTask1",
146                      "'Equals' and 'Like' require enclosing 'Match'");
147         runExpecting("testBrokenXML_LikeEquals_OnlyIn_MatchTask2",
148                      "'Equals' and 'Like' require enclosing 'Match'");
149     }
150
151     public void testDefaultAlwaysMatches()
152     {
153         String JavaDoc log = runTarget("testDefaultAlwaysMatches");
154         assertTrue(log.indexOf("bingo")>=0,"Found correct match!");
155         assertPropertyEquals("the.veggie", "default");
156     }
157
158     public void testChoiceByProperties()
159     {
160         String JavaDoc log= runTarget("testChoiceByProperty");
161         assertTrue(log.indexOf("bingo")>=0,"Found correct match!");
162     }
163
164     public void testChoiceByAsIsValues()
165     {
166         String JavaDoc log= runTarget("testChoiceByValue");
167         assertTrue(log.indexOf("bingo")>=0,"Found correct match!");
168     }
169
170     public void testChoiceByOthers()
171     {
172         runTarget("testChoiceByOther");
173     }
174
175     public void testMatchValueUsed()
176     {
177         runTarget("testMatchValueUsed");
178     }
179
180     public void testLikeCombinations()
181     {
182         runTarget("testLikeCombinations");
183     }
184
185     public void testMultipleMatchesHitsOnlyFirst()
186     {
187         runTarget("testMultipleMatchesHitsFirst");
188     }
189     
190     public void testChoiceByCondition_AntX05()
191     {
192         runTarget("testChoiceByCondition_AntX05");
193     }
194     
195     public void testTrueIfElsePresetdefWorks_AntX05()
196     {
197         runTarget("testTrueIfElsePresetdefWorks_AntX05");
198     }
199 }
200
201 /* end-of-SwitchTaskTest.java */
202
Popular Tags