OSDN Git Service

show message dialog when class path checker action performed
[stigmata/stigmata.git] / src / test / java / jp / naist / se / stigmata / birthmarks / smc / SmcBirthmarkExtractorTest.java
1 package jp.naist.se.stigmata.birthmarks.smc;\r
2 \r
3 /*\r
4  * $Id$\r
5  */\r
6 \r
7 import org.junit.Assert;\r
8 import org.junit.Before;\r
9 import org.junit.Test;\r
10 \r
11 import jp.naist.se.stigmata.Birthmark;\r
12 import jp.naist.se.stigmata.BirthmarkElement;\r
13 import jp.naist.se.stigmata.BirthmarkSet;\r
14 import jp.naist.se.stigmata.Stigmata;\r
15 \r
16 /**\r
17  *\r
18  * @author Haruaki TAMADA\r
19  * @version$Revision$ $Date$\r
20  */\r
21 public class SmcBirthmarkExtractorTest{\r
22     private Stigmata stigmata;\r
23 \r
24     @Before\r
25     public void setup(){\r
26         stigmata = Stigmata.getInstance();\r
27     }\r
28 \r
29     @Test\r
30     public void checkSmcBirthmark() throws Exception{\r
31         BirthmarkSet[] array = stigmata.extract(\r
32             new String[] { "smc", },\r
33             new String[] { "target/classes/jp/naist/se/stigmata/Stigmata.class", }\r
34         );\r
35 \r
36         Assert.assertEquals(1, array.length);\r
37         Assert.assertNotNull(array[0].getBirthmark("smc"));\r
38 \r
39         Birthmark birthmark = array[0].getBirthmark("smc");\r
40         Assert.assertEquals("smc", birthmark.getType());\r
41         Assert.assertEquals(77, birthmark.getElementCount());\r
42 \r
43         BirthmarkElement[] elements = birthmark.getElements();\r
44         for(int i = 0; i < elements.length; i++){\r
45             Assert.assertEquals(\r
46                 "jp.naist.se.stigmata.birthmarks.smc.MethodCallBirthmarkElement",\r
47                 elements[i].getClass().getName()\r
48             );\r
49         }\r
50         int index = 0;\r
51         Assert.assertEquals("java.lang.Object#<init>",              elements[index++].getValue());\r
52         Assert.assertEquals("java.io.FileInputStream#<init>",       elements[index++].getValue());\r
53         Assert.assertEquals("java.io.File#<init>",                  elements[index++].getValue());\r
54         Assert.assertEquals("java.io.File#exists",                  elements[index++].getValue());\r
55         Assert.assertEquals("java.lang.System#getProperty",         elements[index++].getValue());\r
56         Assert.assertEquals("java.io.File#<init>",                  elements[index++].getValue());\r
57         Assert.assertEquals("java.io.File#exists",                  elements[index++].getValue());\r
58         Assert.assertEquals("java.io.FileInputStream#<init>",       elements[index++].getValue());\r
59         Assert.assertEquals("java.lang.Object#getClass",            elements[index++].getValue());\r
60         Assert.assertEquals("java.lang.Class#getResourceAsStream",  elements[index++].getValue());\r
61         Assert.assertEquals("java.util.ArrayList#<init>",           elements[index++].getValue());\r
62         Assert.assertEquals("java.util.ArrayList#<init>",           elements[index++].getValue());\r
63         Assert.assertEquals("java.lang.String#endsWith",            elements[index++].getValue());\r
64         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
65         Assert.assertEquals("java.lang.String#endsWith",            elements[index++].getValue());\r
66         Assert.assertEquals("java.lang.String#endsWith",            elements[index++].getValue());\r
67         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
68         Assert.assertEquals("java.io.File#<init>",                  elements[index++].getValue());\r
69         Assert.assertEquals("java.io.File#toURI",                   elements[index++].getValue());\r
70         Assert.assertEquals("java.net.URI#toURL",                   elements[index++].getValue());\r
71         Assert.assertEquals("java.lang.String#endsWith",            elements[index++].getValue());\r
72         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
73         Assert.assertEquals("java.util.List#iterator",              elements[index++].getValue());\r
74         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
75         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
76         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
77         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
78         Assert.assertEquals("java.net.URL#openStream",              elements[index++].getValue());\r
79         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
80         Assert.assertEquals("java.util.List#size",                  elements[index++].getValue());\r
81         Assert.assertEquals("java.util.List#toArray",               elements[index++].getValue());\r
82         Assert.assertEquals("java.util.ArrayList#<init>",           elements[index++].getValue());\r
83         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
84         Assert.assertEquals("java.lang.Object#getClass",            elements[index++].getValue());\r
85         Assert.assertEquals("java.lang.Class#getName",              elements[index++].getValue());\r
86         Assert.assertEquals("java.util.logging.Logger#getLogger",   elements[index++].getValue());\r
87         Assert.assertEquals("java.lang.StringBuilder#<init>",       elements[index++].getValue());\r
88         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
89         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
90         Assert.assertEquals("java.lang.StringBuilder#toString",     elements[index++].getValue());\r
91         Assert.assertEquals("java.util.logging.Logger#warning",     elements[index++].getValue());\r
92         Assert.assertEquals("java.util.List#size",                  elements[index++].getValue());\r
93         Assert.assertEquals("java.util.List#toArray",               elements[index++].getValue());\r
94         Assert.assertEquals("java.util.ArrayList#<init>",           elements[index++].getValue());\r
95         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
96         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
97         Assert.assertEquals("java.lang.Double#valueOf",             elements[index++].getValue());\r
98         Assert.assertEquals("java.util.List#add",                   elements[index++].getValue());\r
99         Assert.assertEquals("java.util.List#iterator",              elements[index++].getValue());\r
100         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
101         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
102         Assert.assertEquals("java.lang.Double#doubleValue",         elements[index++].getValue());\r
103         Assert.assertEquals("java.lang.Double#doubleValue",         elements[index++].getValue());\r
104         Assert.assertEquals("org.apache.commons.beanutils.BeanUtils#describe",\r
105                             elements[index++].getValue());\r
106         Assert.assertEquals("java.util.Map#remove",                 elements[index++].getValue());\r
107         Assert.assertEquals("java.util.Map#remove",                 elements[index++].getValue());\r
108         Assert.assertEquals("java.util.Map#keySet",                 elements[index++].getValue());\r
109         Assert.assertEquals("java.util.Set#iterator",               elements[index++].getValue());\r
110         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
111         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
112         Assert.assertEquals("java.lang.StringBuilder#<init>",       elements[index++].getValue());\r
113         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
114         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
115         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
116         Assert.assertEquals("java.lang.String#valueOf",             elements[index++].getValue());\r
117         Assert.assertEquals("java.lang.StringBuilder#append",       elements[index++].getValue());\r
118         Assert.assertEquals("java.lang.StringBuilder#toString",     elements[index++].getValue());\r
119         Assert.assertEquals("org.apache.commons.beanutils.BeanUtils#setProperty",\r
120                             elements[index++].getValue());\r
121         Assert.assertEquals("java.io.ByteArrayInputStream#<init>",  elements[index++].getValue());\r
122         Assert.assertEquals("java.io.ByteArrayOutputStream#<init>", elements[index++].getValue());\r
123         Assert.assertEquals("java.io.InputStream#read",             elements[index++].getValue());\r
124         Assert.assertEquals("java.io.ByteArrayOutputStream#write",  elements[index++].getValue());\r
125         Assert.assertEquals("java.io.ByteArrayOutputStream#toByteArray",\r
126                             elements[index++].getValue());\r
127         Assert.assertEquals("java.io.ByteArrayOutputStream#close",  elements[index++].getValue());\r
128         Assert.assertEquals("javax.imageio.spi.ServiceRegistry#lookupProviders",\r
129                             elements[index++].getValue());\r
130         Assert.assertEquals("java.util.Iterator#hasNext",           elements[index++].getValue());\r
131         Assert.assertEquals("java.util.Iterator#next",              elements[index++].getValue());\r
132     }\r
133 \r
134     @Test\r
135     public void checkSmcBirthmark2() throws Exception{\r
136         BirthmarkSet[] array = stigmata.extract(\r
137             new String[] { "smc", },\r
138             new String[] { "target/classes/jp/naist/se/stigmata/RoundRobinComparisonResultSet.class", }\r
139         );\r
140 \r
141         Assert.assertEquals(array.length, 1);\r
142         Assert.assertNotNull(array[0].getBirthmark("smc"));\r
143 \r
144         Birthmark birthmark = array[0].getBirthmark("smc");\r
145         Assert.assertEquals("smc", birthmark.getType());\r
146         Assert.assertEquals(25, birthmark.getElementCount());\r
147 \r
148         BirthmarkElement[] elements = birthmark.getElements();\r
149         for(int i = 0; i < elements.length; i++){\r
150             Assert.assertEquals(\r
151                 "jp.naist.se.stigmata.birthmarks.smc.MethodCallBirthmarkElement",\r
152                 elements[i].getClass().getName()\r
153             );\r
154         }\r
155         // <init>(BirthmarkSet[], BirthmarkContext, boolean)\r
156         Assert.assertEquals("java.lang.Object#<init>",      elements[ 0].toString());\r
157         Assert.assertEquals("java.util.Arrays#asList",      elements[ 1].toString());\r
158         Assert.assertEquals("java.util.Arrays#asList",      elements[ 2].toString());\r
159         Assert.assertEquals("java.lang.Object#<init>",      elements[ 3].toString());\r
160 \r
161         // <init>(BirthmarkSet[], BirthmarkSet[], BirthmarkContext, boolean)\r
162         Assert.assertEquals("java.util.Arrays#asList",      elements[ 4].toString());\r
163         Assert.assertEquals("java.util.Arrays#asList",      elements[ 5].toString());\r
164 \r
165         // setCompareSamePair\r
166         Assert.assertEquals("java.util.List#size",          elements[ 6].toString());\r
167         Assert.assertEquals("java.util.List#size",          elements[ 7].toString());\r
168         Assert.assertEquals("java.util.List#size",          elements[ 8].toString());\r
169         Assert.assertEquals("java.util.List#size",          elements[ 9].toString());\r
170 \r
171         // getComparisonSources\r
172         Assert.assertEquals("java.util.HashMap#<init>",     elements[10].toString());\r
173         Assert.assertEquals("java.util.List#iterator",      elements[11].toString());\r
174         Assert.assertEquals("java.util.Iterator#next",      elements[12].toString());\r
175         Assert.assertEquals("java.util.Map#put",            elements[13].toString());\r
176         Assert.assertEquals("java.util.Iterator#hasNext",   elements[14].toString());\r
177         Assert.assertEquals("java.util.List#iterator",      elements[15].toString());\r
178         Assert.assertEquals("java.util.Iterator#next",      elements[16].toString());\r
179         Assert.assertEquals("java.util.Map#put",            elements[17].toString());\r
180         Assert.assertEquals("java.util.Iterator#hasNext",   elements[18].toString());\r
181         Assert.assertEquals("java.util.Map#size",           elements[19].toString());\r
182         Assert.assertEquals("java.util.Map#entrySet",       elements[20].toString());\r
183         Assert.assertEquals("java.util.Set#iterator",       elements[21].toString());\r
184         Assert.assertEquals("java.util.Iterator#next",      elements[22].toString());\r
185         Assert.assertEquals("java.util.Map$Entry#getValue", elements[23].toString());\r
186         Assert.assertEquals("java.util.Iterator#hasNext",   elements[24].toString());\r
187     }\r
188 }\r