1 /*
2 * Copyright (c) 2003-2008, by Henrik Arro and Contributors
3 *
4 * This file is part of JSeq, a tool to automatically create
5 * sequence diagrams by tracing program execution.
6 *
7 * See <http://jseq.sourceforge.net> for more information.
8 *
9 * JSeq is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU Lesser General Public License as
11 * published by the Free Software Foundation, either version 3 of
12 * the License, or (at your option) any later version.
13 *
14 * JSeq is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU Lesser General Public License for more details.
18 *
19 * You should have received a copy of the GNU Lesser General Public License
20 * along with JSeq. If not, see <http://www.gnu.org/licenses/>.
21 */
22
23 package th.co.edge.jseq;
24
25 import junit.framework.Test;
26 import junit.framework.TestCase;
27 import junit.framework.TestSuite;
28
29 public class MethodFilterTest extends TestCase {
30 public MethodFilterTest(String name) {
31 super(name);
32 }
33
34 public static Test suite() {
35 TestSuite suite = new TestSuite(MethodFilterTest.class);
36 return suite;
37 }
38
39 //
40 // Test methods
41 //
42
43 public void testConstructor() {
44 MethodFilter filter = new MethodFilter("Foo.<init>");
45 assertEquals("Foo", filter.getClassName());
46 assertEquals("<init>", filter.getMethodName());
47 }
48
49 public void testAccept() {
50 MethodFilter filter = new MethodFilter("Foo.<init>");
51 Activation activation = new Activation(null, "Foo", new TestMethodImpl(
52 "<init>", true), -1);
53 assertTrue("Filter should accept Foo.<init>", filter.accept(activation));
54 activation = new Activation(null, "Bar", new TestMethodImpl("<init>"), -1);
55 assertTrue("Filter should not accept Bar.<init>", !filter
56 .accept(activation));
57 activation = new Activation(null, "Foo", new TestMethodImpl("bar"), -1);
58 assertTrue("Filter should not accept Foo.bar", !filter
59 .accept(activation));
60 }
61 }