KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > retrotranslator > tests > CustomBackportTestCase


1 /***
2  * Retrotranslator: a Java bytecode transformer that translates Java classes
3  * compiled with JDK 5.0 into classes that can be run on JVM 1.4.
4  *
5  * Copyright (c) 2005 - 2007 Taras Puchko
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  * notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  * notice, this list of conditions and the following disclaimer in the
15  * documentation and/or other materials provided with the distribution.
16  * 3. Neither the name of the copyright holders nor the names of its
17  * contributors may be used to endorse or promote products derived from
18  * this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
30  * THE POSSIBILITY OF SUCH DAMAGE.
31  */

32 package net.sf.retrotranslator.tests;
33
34 import java.math.BigDecimal JavaDoc;
35 import java.util.*;
36 import junit.framework.TestCase;
37
38 /**
39  * @author Taras Puchko
40  */

41 public class CustomBackportTestCase extends TestCase {
42
43     public void testReplacement() {
44         if (isCustomBackport()) {
45             Exception JavaDoc exception = new UnknownFormatFlagsException("abc");
46             assertEquals(DuplicateFormatFlagsException.class, exception.getClass().getSuperclass());
47         }
48     }
49
50     public void testFields() {
51         assertEquals(1, BigDecimal.ONE.intValue());
52         if (isCustomBackport()) {
53             assertEquals(1000, BigDecimal.ZERO.intValue());
54         }
55     }
56
57     public void testMethods() {
58         assertEquals("[1, 2, 3]", Arrays.toString(new int[] {1, 2, 3}));
59         if (isCustomBackport()) {
60             assertEquals("[TRUE, FALSE, TRUE]", Arrays.toString(new boolean[] {true, false, true}));
61         }
62     }
63
64     public void testConvertors() {
65         assertEquals(10, new BigDecimal JavaDoc(10L).intValue());
66         if (isCustomBackport()) {
67             assertEquals(11, new BigDecimal JavaDoc(10).intValue());
68         }
69     }
70
71     public void testBuilders_1() {
72         TestBean bean = new TestBean(true, 'L', (byte) 12, (short) 10, 1234567, 0.5f, 12345670L, 123.45, "XYZ");
73         assertEquals(true, bean.isVisible());
74         assertEquals('L', bean.getSign());
75         assertEquals((byte) 12, bean.getCode());
76         assertEquals((short) 10, bean.getWidth());
77         assertEquals(1234567, bean.getHeight());
78         assertEquals(0.5f, bean.getOpacity());
79         assertEquals(12345670L, bean.getArea());
80         assertEquals(123.45, bean.getWeight());
81         assertEquals("XYZ", bean.getName());
82         if (isCustomBackport()) {
83             assertEquals("reverse", bean.getDirection());
84             assertEquals("initialized", bean.getState());
85         } else {
86             assertEquals("right", bean.getDirection());
87             assertNull(bean.getState());
88         }
89     }
90
91     public void testBuilders_2() {
92         TestBean bean = new TestBean("abc");
93         assertEquals("abc", bean.getState());
94         if (isCustomBackport()) {
95             assertEquals("B", bean.getDirection());
96         } else {
97             assertEquals("A", bean.getDirection());
98         }
99     }
100
101     private boolean isCustomBackport() {
102         return Boolean.getBoolean("net.sf.retrotranslator.custom-backport");
103     }
104
105 }
106
Popular Tags