1 |
| |
2 |
| |
3 |
| |
4 |
| |
5 |
| |
6 |
| |
7 |
| |
8 |
| |
9 |
| |
10 |
| |
11 |
| |
12 |
| |
13 |
| |
14 |
| |
15 |
| |
16 |
| |
17 |
| |
18 |
| |
19 |
| |
20 |
| |
21 |
| |
22 |
| |
23 |
| |
24 |
| |
25 |
| |
26 |
| |
27 |
| |
28 |
| |
29 |
| |
30 |
| |
31 |
| |
32 |
| |
33 |
| package com.jeantessier.diff; |
34 |
| |
35 |
| import java.util.*; |
36 |
| |
37 |
| import com.jeantessier.classreader.*; |
38 |
| |
39 |
| public class TestAPIDifferenceStrategy extends TestDifferencesFactoryBase { |
40 |
| private MockDifferenceStrategy mockStrategy; |
41 |
| private APIDifferenceStrategy strategy; |
42 |
| |
43 |
42
| protected void setUp() throws Exception {
|
44 |
42
| super.setUp();
|
45 |
| |
46 |
42
| mockStrategy = new MockDifferenceStrategy(new NoDifferenceStrategy());
|
47 |
42
| strategy = new APIDifferenceStrategy(mockStrategy);
|
48 |
| } |
49 |
| |
50 |
1
| public void testUnmodifiedConstantValue() {
|
51 |
1
| ConstantValue_attribute oldValue = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface").getField("unmodifiedField").getConstantValue();
|
52 |
1
| ConstantValue_attribute newValue = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface").getField("unmodifiedField").getConstantValue();
|
53 |
| |
54 |
1
| assertFalse(strategy.isConstantValueDifferent(oldValue, newValue));
|
55 |
| |
56 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
57 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
58 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
59 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
60 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
61 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
62 |
| } |
63 |
| |
64 |
1
| public void testRemovedConstantValue() {
|
65 |
1
| ConstantValue_attribute oldValue = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("removedField").getConstantValue();
|
66 |
1
| ConstantValue_attribute newValue = null;
|
67 |
| |
68 |
1
| assertFalse(strategy.isConstantValueDifferent(oldValue, newValue));
|
69 |
| |
70 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
71 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
72 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
73 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
74 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
75 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
76 |
| } |
77 |
| |
78 |
1
| public void testModifiedConstantValue() {
|
79 |
1
| ConstantValue_attribute oldValue = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("modifiedValueField").getConstantValue();
|
80 |
1
| ConstantValue_attribute newValue = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("modifiedValueField").getConstantValue();
|
81 |
| |
82 |
1
| assertFalse(strategy.isConstantValueDifferent(oldValue, newValue));
|
83 |
| |
84 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
85 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
86 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
87 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
88 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
89 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
90 |
| } |
91 |
| |
92 |
1
| public void testNewConstantValue() {
|
93 |
1
| ConstantValue_attribute oldValue = null;
|
94 |
1
| ConstantValue_attribute newValue = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("newField").getConstantValue();
|
95 |
| |
96 |
1
| assertFalse(strategy.isConstantValueDifferent(oldValue, newValue));
|
97 |
| |
98 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
99 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
100 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
101 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
102 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
103 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
104 |
| } |
105 |
| |
106 |
1
| public void testUnmodifiedField() {
|
107 |
1
| Field_info oldFeature = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getField("unmodifiedField");
|
108 |
1
| Field_info newFeature = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getField("unmodifiedField");
|
109 |
| |
110 |
1
| assertFalse(strategy.isFieldDifferent(oldFeature, newFeature));
|
111 |
| |
112 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
113 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
114 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
115 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
116 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
117 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
118 |
| } |
119 |
| |
120 |
1
| public void testRemovedField() {
|
121 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getField("removedField");
|
122 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getField("removedField");
|
123 |
| |
124 |
1
| assertTrue(strategy.isFieldDifferent(oldFeature, newFeature));
|
125 |
| |
126 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
127 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
128 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
129 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
130 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
131 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
132 |
| } |
133 |
| |
134 |
1
| public void testModifiedField() {
|
135 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getField("modifiedField");
|
136 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getField("modifiedField");
|
137 |
| |
138 |
1
| assertTrue(strategy.isFieldDifferent(oldFeature, newFeature));
|
139 |
| |
140 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
141 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
142 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
143 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
144 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
145 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
146 |
| } |
147 |
| |
148 |
1
| public void testModifiedValueField() {
|
149 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("modifiedValueField");
|
150 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("modifiedValueField");
|
151 |
| |
152 |
1
| assertFalse(strategy.isFieldDifferent(oldFeature, newFeature));
|
153 |
| |
154 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
155 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
156 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
157 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
158 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
159 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
160 |
| } |
161 |
| |
162 |
1
| public void testDeprecatedField() {
|
163 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("deprecatedField");
|
164 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("deprecatedField");
|
165 |
| |
166 |
1
| assertTrue(strategy.isFieldDifferent(oldFeature, newFeature));
|
167 |
| |
168 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
169 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
170 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
171 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
172 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
173 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
174 |
| } |
175 |
| |
176 |
1
| public void testUndeprecatedField() {
|
177 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("undeprecatedField");
|
178 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface").getField("undeprecatedField");
|
179 |
| |
180 |
1
| assertTrue(strategy.isFieldDifferent(oldFeature, newFeature));
|
181 |
| |
182 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
183 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
184 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
185 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
186 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
187 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
188 |
| } |
189 |
| |
190 |
1
| public void testNewField() {
|
191 |
1
| Field_info oldFeature = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getField("newField");
|
192 |
1
| Field_info newFeature = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getField("newField");
|
193 |
| |
194 |
1
| assertTrue(strategy.isFieldDifferent(oldFeature, newFeature));
|
195 |
| |
196 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
197 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
198 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
199 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
200 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
201 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
202 |
| } |
203 |
| |
204 |
1
| public void testUnmodifiedCode() {
|
205 |
1
| Code_attribute oldCode = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("unmodifiedMethod()").getCode();
|
206 |
1
| Code_attribute newCode = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("unmodifiedMethod()").getCode();
|
207 |
| |
208 |
1
| assertFalse(strategy.isCodeDifferent(oldCode, newCode));
|
209 |
| |
210 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
211 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
212 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
213 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
214 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
215 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
216 |
| } |
217 |
| |
218 |
1
| public void testModifiedCode() {
|
219 |
1
| Code_attribute oldCode = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedCodeMethod()").getCode();
|
220 |
1
| Code_attribute newCode = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedCodeMethod()").getCode();
|
221 |
| |
222 |
1
| assertFalse(strategy.isCodeDifferent(oldCode, newCode));
|
223 |
| |
224 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
225 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
226 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
227 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
228 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
229 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
230 |
| } |
231 |
| |
232 |
1
| public void testUnmodifiedConstructor() {
|
233 |
1
| Method_info oldMethod = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("UnmodifiedClass()");
|
234 |
1
| Method_info newMethod = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("UnmodifiedClass()");
|
235 |
| |
236 |
1
| assertFalse(strategy.isMethodDifferent(oldMethod, newMethod));
|
237 |
| |
238 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
239 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
240 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
241 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
242 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
243 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
244 |
| } |
245 |
| |
246 |
1
| public void testRemovedConstructor() {
|
247 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass()");
|
248 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass()");
|
249 |
| |
250 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
251 |
| |
252 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
253 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
254 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
255 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
256 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
257 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
258 |
| } |
259 |
| |
260 |
1
| public void testModifiedConstructor() {
|
261 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int)");
|
262 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int)");
|
263 |
| |
264 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
265 |
| |
266 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
267 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
268 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
269 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
270 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
271 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
272 |
| } |
273 |
| |
274 |
1
| public void testModifiedCodeConstructor() {
|
275 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(float)");
|
276 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(float)");
|
277 |
| |
278 |
1
| assertFalse(strategy.isMethodDifferent(oldMethod, newMethod));
|
279 |
| |
280 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
281 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
282 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
283 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
284 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
285 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
286 |
| } |
287 |
| |
288 |
1
| public void testDeprecatedConstructor() {
|
289 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int)");
|
290 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int)");
|
291 |
| |
292 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
293 |
| |
294 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
295 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
296 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
297 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
298 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
299 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
300 |
| } |
301 |
| |
302 |
1
| public void testUndeprecatedConstructor() {
|
303 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int, int, int)");
|
304 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int, int, int)");
|
305 |
| |
306 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
307 |
| |
308 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
309 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
310 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
311 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
312 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
313 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
314 |
| } |
315 |
| |
316 |
1
| public void testNewConstructor() {
|
317 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int, int, int, int)");
|
318 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("ModifiedClass(int, int, int, int, int, int)");
|
319 |
| |
320 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
321 |
| |
322 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
323 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
324 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
325 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
326 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
327 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
328 |
| } |
329 |
| |
330 |
1
| public void testUnmodifiedMethod() {
|
331 |
1
| Method_info oldMethod = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("unmodifiedMethod()");
|
332 |
1
| Method_info newMethod = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass").getMethod("unmodifiedMethod()");
|
333 |
| |
334 |
1
| assertFalse(strategy.isMethodDifferent(oldMethod, newMethod));
|
335 |
| |
336 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
337 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
338 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
339 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
340 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
341 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
342 |
| } |
343 |
| |
344 |
1
| public void testRemovedMethod() {
|
345 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("removedMethod()");
|
346 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("removedMethod()");
|
347 |
| |
348 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
349 |
| |
350 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
351 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
352 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
353 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
354 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
355 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
356 |
| } |
357 |
| |
358 |
1
| public void testModifiedMethod() {
|
359 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedMethod()");
|
360 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedMethod()");
|
361 |
| |
362 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
363 |
| |
364 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
365 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
366 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
367 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
368 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
369 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
370 |
| } |
371 |
| |
372 |
1
| public void testModifiedCodeMethod() {
|
373 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedCodeMethod()");
|
374 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("modifiedCodeMethod()");
|
375 |
| |
376 |
1
| assertFalse(strategy.isMethodDifferent(oldMethod, newMethod));
|
377 |
| |
378 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
379 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
380 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
381 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
382 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
383 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
384 |
| } |
385 |
| |
386 |
1
| public void testDeprecatedMethod() {
|
387 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("deprecatedMethod()");
|
388 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("deprecatedMethod()");
|
389 |
| |
390 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
391 |
| |
392 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
393 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
394 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
395 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
396 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
397 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
398 |
| } |
399 |
| |
400 |
1
| public void testUndeprecatedMethod() {
|
401 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("undeprecatedMethod()");
|
402 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("undeprecatedMethod()");
|
403 |
| |
404 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
405 |
| |
406 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
407 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
408 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
409 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
410 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
411 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
412 |
| } |
413 |
| |
414 |
1
| public void testNewMethod() {
|
415 |
1
| Method_info oldMethod = getOldJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("newMethod()");
|
416 |
1
| Method_info newMethod = getNewJar().getClassfile("ModifiedPackage.ModifiedClass").getMethod("newMethod()");
|
417 |
| |
418 |
1
| assertTrue(strategy.isMethodDifferent(oldMethod, newMethod));
|
419 |
| |
420 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
421 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
422 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
423 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
424 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
425 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
426 |
| } |
427 |
| |
428 |
1
| public void testUnmodifiedInterface() {
|
429 |
1
| Classfile oldClass = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface");
|
430 |
1
| Classfile newClass = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface");
|
431 |
| |
432 |
1
| assertFalse(strategy.isClassDifferent(oldClass, newClass));
|
433 |
| |
434 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
435 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
436 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
437 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
438 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
439 |
1
| assertEquals("code", 1, mockStrategy.getCodeDifferentCount());
|
440 |
| } |
441 |
| |
442 |
1
| public void testRemovedInterface() {
|
443 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.RemovedInterface");
|
444 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.RemovedInterface");
|
445 |
| |
446 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
447 |
| |
448 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
449 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
450 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
451 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
452 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
453 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
454 |
| } |
455 |
| |
456 |
1
| public void testModifiedDeclarationInterface() {
|
457 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.ModifiedDeclarationInterface");
|
458 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.ModifiedDeclarationInterface");
|
459 |
| |
460 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
461 |
| |
462 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
463 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
464 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
465 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
466 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
467 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
468 |
| } |
469 |
| |
470 |
1
| public void testModifiedInterface() {
|
471 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.ModifiedInterface");
|
472 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.ModifiedInterface");
|
473 |
| |
474 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
475 |
| |
476 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
477 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
478 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
479 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
480 |
0
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
481 |
0
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
482 |
| } |
483 |
| |
484 |
1
| public void testNewInterface() {
|
485 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.NewInterface");
|
486 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.NewInterface");
|
487 |
| |
488 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
489 |
| |
490 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
491 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
492 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
493 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
494 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
495 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
496 |
| } |
497 |
| |
498 |
1
| public void testUnmodifiedClass() {
|
499 |
1
| Classfile oldClass = getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass");
|
500 |
1
| Classfile newClass = getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass");
|
501 |
| |
502 |
1
| assertFalse(strategy.isClassDifferent(oldClass, newClass));
|
503 |
| |
504 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
505 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
506 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
507 |
1
| assertEquals("constant", 1, mockStrategy.getConstantValueDifferentCount());
|
508 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
509 |
1
| assertEquals("code", 2, mockStrategy.getCodeDifferentCount());
|
510 |
| } |
511 |
| |
512 |
1
| public void testRemovedClass() {
|
513 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.RemovedClass");
|
514 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.RemovedClass");
|
515 |
| |
516 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
517 |
| |
518 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
519 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
520 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
521 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
522 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
523 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
524 |
| } |
525 |
| |
526 |
1
| public void testModifiedDeclarationClass() {
|
527 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.ModifiedDeclarationClass");
|
528 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.ModifiedDeclarationClass");
|
529 |
| |
530 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
531 |
| |
532 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
533 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
534 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
535 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
536 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
537 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
538 |
| } |
539 |
| |
540 |
1
| public void testModifiedClass() {
|
541 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.ModifiedClass");
|
542 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.ModifiedClass");
|
543 |
| |
544 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
545 |
| |
546 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
547 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
548 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
549 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
550 |
0
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
551 |
0
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
552 |
| } |
553 |
| |
554 |
1
| public void testNewClass() {
|
555 |
1
| Classfile oldClass = getOldJar().getClassfile("ModifiedPackage.NewClass");
|
556 |
1
| Classfile newClass = getNewJar().getClassfile("ModifiedPackage.NewClass");
|
557 |
| |
558 |
1
| assertTrue(strategy.isClassDifferent(oldClass, newClass));
|
559 |
| |
560 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
561 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
562 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
563 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
564 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
565 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
566 |
| } |
567 |
| |
568 |
1
| public void testUnmodifiedPackage() {
|
569 |
1
| Map oldPackage = new HashMap();
|
570 |
1
| oldPackage.put("UnmodifiedPackage.UnmodifiedClass", getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass"));
|
571 |
1
| oldPackage.put("UnmodifiedPackage.UnmodifiedInterface", getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface"));
|
572 |
1
| Map newPackage = new HashMap();
|
573 |
1
| newPackage.put("UnmodifiedPackage.UnmodifiedClass", getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass"));
|
574 |
1
| newPackage.put("UnmodifiedPackage.UnmodifiedInterface", getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface"));
|
575 |
| |
576 |
1
| assertFalse(strategy.isPackageDifferent(oldPackage, newPackage));
|
577 |
| |
578 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
579 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
580 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
581 |
1
| assertEquals("constant", 2, mockStrategy.getConstantValueDifferentCount());
|
582 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
583 |
1
| assertEquals("code", 3, mockStrategy.getCodeDifferentCount());
|
584 |
| } |
585 |
| |
586 |
1
| public void testRemovedPackage() {
|
587 |
1
| Map oldPackage = new HashMap();
|
588 |
1
| oldPackage.put("RemovedPackage.RemovedClass", getOldJar().getClassfile("RemovedPackage.RemovedClass"));
|
589 |
1
| Map newPackage = new HashMap();
|
590 |
| |
591 |
1
| assertTrue(strategy.isPackageDifferent(oldPackage, newPackage));
|
592 |
| |
593 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
594 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
595 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
596 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
597 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
598 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
599 |
| } |
600 |
| |
601 |
1
| public void testModifiedPackage() {
|
602 |
1
| Map oldPackage = new HashMap();
|
603 |
1
| oldPackage.put("UnmodifiedPackage.UnmodifiedClass", getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedClass"));
|
604 |
1
| oldPackage.put("UnmodifiedPackage.UnmodifiedInterface", getOldJar().getClassfile("UnmodifiedPackage.UnmodifiedInterface"));
|
605 |
1
| Map newPackage = new HashMap();
|
606 |
1
| newPackage.put("UnmodifiedPackage.UnmodifiedClass", getNewJar().getClassfile("UnmodifiedPackage.UnmodifiedClass"));
|
607 |
| |
608 |
1
| assertTrue(strategy.isPackageDifferent(oldPackage, newPackage));
|
609 |
| |
610 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
611 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
612 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
613 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
614 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
615 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
616 |
| } |
617 |
| |
618 |
1
| public void testModifiedCodePackage() {
|
619 |
1
| Map oldPackage = new HashMap();
|
620 |
1
| oldPackage.put("ModifiedPackage.ModifiedClass", getOldJar().getClassfile("ModifiedPackage.ModifiedClass"));
|
621 |
1
| Map newPackage = new HashMap();
|
622 |
1
| newPackage.put("ModifiedPackage.ModifiedClass", getNewJar().getClassfile("ModifiedPackage.ModifiedClass"));
|
623 |
| |
624 |
1
| assertTrue(strategy.isPackageDifferent(oldPackage, newPackage));
|
625 |
| |
626 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
627 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
628 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
629 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
630 |
0
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
631 |
0
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
632 |
| } |
633 |
| |
634 |
1
| public void testNewPackage() {
|
635 |
1
| Map oldPackage = new HashMap();
|
636 |
1
| Map newPackage = new HashMap();
|
637 |
1
| newPackage.put("NewPackage.NewClass", getNewJar().getClassfile("NewPackage.NewClass"));
|
638 |
| |
639 |
1
| assertTrue(strategy.isPackageDifferent(oldPackage, newPackage));
|
640 |
| |
641 |
1
| assertEquals("package", 0, mockStrategy.getPackageDifferentCount());
|
642 |
1
| assertEquals("class", 0, mockStrategy.getClassDifferentCount());
|
643 |
1
| assertEquals("field", 0, mockStrategy.getFieldDifferentCount());
|
644 |
1
| assertEquals("constant", 0, mockStrategy.getConstantValueDifferentCount());
|
645 |
1
| assertEquals("method", 0, mockStrategy.getMethodDifferentCount());
|
646 |
1
| assertEquals("code", 0, mockStrategy.getCodeDifferentCount());
|
647 |
| } |
648 |
| } |