1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.jci.compilers;
19
20 import java.util.Map;
21
22 import org.eclipse.jdt.internal.compiler.impl.CompilerOptions;
23
24 import junit.framework.TestCase;
25
26 public final class EclipseJavaCompilerSettingsTestCase extends TestCase {
27
28 public void testDefaultSettings() {
29 final Map m = new EclipseJavaCompilerSettings().toNativeSettings();
30 assertEquals(CompilerOptions.DO_NOT_GENERATE, m.get(CompilerOptions.OPTION_SuppressWarnings));
31 assertEquals(CompilerOptions.DO_NOT_GENERATE, m.get(CompilerOptions.OPTION_ReportDeprecation));
32 assertEquals(CompilerOptions.VERSION_1_4, m.get(CompilerOptions.OPTION_TargetPlatform));
33 assertEquals(CompilerOptions.VERSION_1_4, m.get(CompilerOptions.OPTION_Source));
34 assertEquals("UTF-8", m.get(CompilerOptions.OPTION_Encoding));
35 }
36
37 public void testSourceVersion() {
38 final EclipseJavaCompilerSettings s = new EclipseJavaCompilerSettings();
39 s.setSourceVersion("1.1");
40 assertEquals(CompilerOptions.VERSION_1_1, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
41 s.setSourceVersion("1.2");
42 assertEquals(CompilerOptions.VERSION_1_2, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
43 s.setSourceVersion("1.3");
44 assertEquals(CompilerOptions.VERSION_1_3, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
45 s.setSourceVersion("1.4");
46 assertEquals(CompilerOptions.VERSION_1_4, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
47 s.setSourceVersion("1.5");
48 assertEquals(CompilerOptions.VERSION_1_5, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
49 s.setSourceVersion("1.6");
50 assertEquals(CompilerOptions.VERSION_1_6, s.toNativeSettings().get(CompilerOptions.OPTION_Source));
51 }
52
53 public void testTargetVersion() {
54 final EclipseJavaCompilerSettings s = new EclipseJavaCompilerSettings();
55 s.setTargetVersion("1.1");
56 assertEquals(CompilerOptions.VERSION_1_1, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
57 s.setTargetVersion("1.2");
58 assertEquals(CompilerOptions.VERSION_1_2, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
59 s.setTargetVersion("1.3");
60 assertEquals(CompilerOptions.VERSION_1_3, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
61 s.setTargetVersion("1.4");
62 assertEquals(CompilerOptions.VERSION_1_4, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
63 s.setTargetVersion("1.5");
64 assertEquals(CompilerOptions.VERSION_1_5, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
65 s.setTargetVersion("1.6");
66 assertEquals(CompilerOptions.VERSION_1_6, s.toNativeSettings().get(CompilerOptions.OPTION_TargetPlatform));
67 }
68
69 public void testEncoding() {
70 final EclipseJavaCompilerSettings s = new EclipseJavaCompilerSettings();
71 s.setSourceEncoding("ASCII");
72 assertEquals("ASCII", s.toNativeSettings().get(CompilerOptions.OPTION_Encoding));
73 }
74
75 public void testWarnings() {
76 final EclipseJavaCompilerSettings s = new EclipseJavaCompilerSettings();
77 s.setWarnings(true);
78 assertEquals(CompilerOptions.GENERATE, s.toNativeSettings().get(CompilerOptions.OPTION_SuppressWarnings));
79 s.setWarnings(false);
80 assertEquals(CompilerOptions.DO_NOT_GENERATE, s.toNativeSettings().get(CompilerOptions.OPTION_SuppressWarnings));
81 }
82
83 public void testDeprecations() {
84 final EclipseJavaCompilerSettings s = new EclipseJavaCompilerSettings();
85 s.setDeprecations(true);
86 assertEquals(CompilerOptions.GENERATE, s.toNativeSettings().get(CompilerOptions.OPTION_ReportDeprecation));
87 s.setDeprecations(false);
88 assertEquals(CompilerOptions.DO_NOT_GENERATE, s.toNativeSettings().get(CompilerOptions.OPTION_ReportDeprecation));
89 }
90 }