1 /***
2 * Redistribution and use of this software and associated documentation
3 * ("Software"), with or without modification, are permitted provided
4 * that the following conditions are met:
5 *
6 * 1. Redistributions of source code must retain copyright
7 * statements and notices. Redistributions must also contain a
8 * copy of this document.
9 *
10 * 2. Redistributions in binary form must reproduce the
11 * above copyright notice, this list of conditions and the
12 * following disclaimer in the documentation and/or other
13 * materials provided with the distribution.
14 *
15 * 3. The name "Exolab" must not be used to endorse or promote
16 * products derived from this Software without prior written
17 * permission of Exoffice Technologies. For written permission,
18 * please contact tma@netspace.net.au.
19 *
20 * 4. Products derived from this Software may not be called "Exolab"
21 * nor may "Exolab" appear in their names without prior written
22 * permission of Exoffice Technologies. Exolab is a registered
23 * trademark of Exoffice Technologies.
24 *
25 * 5. Due credit should be given to the Exolab Project
26 * (http://www.exolab.org/).
27 *
28 * THIS SOFTWARE IS PROVIDED BY EXOFFICE TECHNOLOGIES AND CONTRIBUTORS
29 * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
30 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
31 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
32 * EXOFFICE TECHNOLOGIES OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
33 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
34 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
35 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
36 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
37 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
38 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
39 * OF THE POSSIBILITY OF SUCH DAMAGE.
40 *
41 * Copyright 2003-2004 (C) Exoffice Technologies Inc. All Rights Reserved.
42 *
43 * $Id: BooleanTest.java,v 1.4 2004/02/03 21:52:11 tanderson Exp $
44 */
45 package org.exolab.jmscts.test.selector;
46
47 import junit.framework.Test;
48
49 import org.exolab.jmscts.core.TestCreator;
50
51
52 /***
53 * This class tests selectors containing boolean literals.
54 *
55 * @author <a href="mailto:tma@netspace.net.au">Tim Anderson</a>
56 * @version $Revision: 1.4 $
57 * @see AbstractSelectorTestCase
58 * @jmscts.message ObjectMessage
59 */
60 public class BooleanTest extends AbstractSelectorTestCase {
61
62 /***
63 * Create an instance of this class for a specific test case
64 *
65 * @param name the name of test case
66 */
67 public BooleanTest(String name) {
68 super(name);
69 }
70
71 /***
72 * Sets up the test suite
73 *
74 * @return an instance of this class that may be run by
75 * {@link org.exolab.jmscts.core.JMSTestRunner}
76 */
77 public static Test suite() {
78 return TestCreator.createSendReceiveTest(BooleanTest.class);
79 }
80
81 /***
82 * Verifies that the selector <code>true</code> selects all
83 * messages
84 *
85 * @jmscts.requirement selector.literal.boolean
86 * @jmscts.requirement selector.reservedwords.case
87 * @jmscts.requirement selector.expression
88 * @throws Exception for any error
89 */
90 public void testTrue() throws Exception {
91 checkSelector("true", true);
92 }
93
94 /***
95 * Verifies that the selector <code>false</code> selects no
96 * messages
97 *
98 * @jmscts.requirement selector.literal.boolean
99 * @jmscts.requirement selector.reservedwords.case
100 * @jmscts.requirement selector.expression
101 * @throws Exception for any error
102 */
103 public void testFalse() throws Exception {
104 checkSelector("false", false);
105 }
106
107 /***
108 * Verifies that the selector <code>TrUe</code> selects all
109 * messages
110 *
111 * @jmscts.requirement selector.literal.boolean
112 * @jmscts.requirement selector.reservedwords.case
113 * @jmscts.requirement selector.expression
114 * @throws Exception for any error
115 */
116 public void testTrueCase() throws Exception {
117 checkSelector("TrUe", true);
118 }
119
120 /***
121 * Verifies that the selector <code>FALSE</code> selects all
122 * messages
123 *
124 * @jmscts.requirement selector.literal.boolean
125 * @jmscts.requirement selector.reservedwords.case
126 * @jmscts.requirement selector.expression
127 * @throws Exception for any error
128 */
129 public void testFalseCase() throws Exception {
130 checkSelector("False", false);
131 }
132
133 /***
134 * Verifies that the selector <code>true = true</code> selects
135 * all messages
136 *
137 * @jmscts.requirement selector.comparison.boolean
138 * @jmscts.requirement selector.expression
139 * @throws Exception for any error
140 */
141 public void testEquals1() throws Exception {
142 checkSelector("true = true", true);
143 }
144
145 /***
146 * Verifies that the selector <code>true = false</code> selects
147 * no messages
148 *
149 * @jmscts.requirement selector.comparison.boolean
150 * @jmscts.requirement selector.expression
151 * @throws Exception for any error
152 */
153 public void testEquals2() throws Exception {
154 checkSelector("true = false", false);
155 }
156
157 /***
158 * Verifies that the selector <code>false <> true</code> selects
159 * all messages
160 *
161 * @jmscts.requirement selector.comparison.boolean
162 * @jmscts.requirement selector.expression
163 * @throws Exception for any error
164 */
165 public void testNotEquals1() throws Exception {
166 checkSelector("false <> true", true);
167 }
168
169 /***
170 * Verifies that the selector <code>false <> false</code> selects
171 * no messages
172 *
173 * @jmscts.requirement selector.comparison.boolean
174 * @jmscts.requirement selector.expression
175 * @throws Exception for any error
176 */
177 public void testNotEquals2() throws Exception {
178 checkSelector("false <> false", false);
179 }
180
181 /***
182 * Verifies that the selector <code>false < true</code> throws
183 * InvalidSelectorException
184 *
185 * @jmscts.requirement selector.comparison.boolean
186 * @jmscts.requirement selector.validation
187 * @throws Exception for any error
188 */
189 public void testLessThan() throws Exception {
190 checkInvalidSelector("false < true");
191 }
192
193 /***
194 * Verifies that the selector <code>false > true</code> throws
195 * InvalidSelectorException
196 *
197 * @jmscts.requirement selector.comparison.boolean
198 * @jmscts.requirement selector.validation
199 * @throws Exception for any error
200 */
201 public void testGreaterThan() throws Exception {
202 checkInvalidSelector("false > true");
203 }
204
205 /***
206 * Verifies that the selector <code>false <= true</code> throws
207 * InvalidSelectorException
208 *
209 * @jmscts.requirement selector.comparison.boolean
210 * @jmscts.requirement selector.validation
211 * @throws Exception for any error
212 */
213 public void testLessEquals() throws Exception {
214 checkInvalidSelector("false <= true");
215 }
216
217 /***
218 * Verifies that the selector <code>false >= true</code> throws
219 * InvalidSelectorException
220 *
221 * @jmscts.requirement selector.comparison.boolean
222 * @jmscts.requirement selector.validation
223 * @throws Exception for any error
224 */
225 public void testGreaterEquals() throws Exception {
226 checkInvalidSelector("false >= true");
227 }
228
229 }
This page was automatically generated by Maven