1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  package com.github.maven_nar.cpptasks.gcc;
21  
22  import java.util.Vector;
23  
24  import junit.framework.TestCase;
25  
26  
27  
28  
29  
30  
31  public abstract class TestGccCompatibleCCompiler extends TestCase {
32    
33  
34  
35  
36  
37  
38    public TestGccCompatibleCCompiler(final String name) {
39      super(name);
40    }
41  
42    
43  
44  
45  
46  
47  
48  
49    protected abstract GccCompatibleCCompiler create();
50  
51    
52  
53  
54    public void testWarningLevel0() {
55      final GccCompatibleCCompiler compiler = create();
56      final Vector args = new Vector();
57      compiler.addWarningSwitch(args, 0);
58      assertEquals(1, args.size());
59      assertEquals("-w", args.elementAt(0));
60    }
61  
62    
63  
64  
65    public void testWarningLevel1() {
66      final GccCompatibleCCompiler compiler = create();
67      final Vector args = new Vector();
68      compiler.addWarningSwitch(args, 1);
69      assertEquals(0, args.size());
70    }
71  
72    
73  
74  
75    public void testWarningLevel2() {
76      final GccCompatibleCCompiler compiler = create();
77      final Vector args = new Vector();
78      compiler.addWarningSwitch(args, 2);
79      assertEquals(0, args.size());
80    }
81  
82    
83  
84  
85    public void testWarningLevel3() {
86      final GccCompatibleCCompiler compiler = create();
87      final Vector args = new Vector();
88      compiler.addWarningSwitch(args, 3);
89      assertEquals(1, args.size());
90      assertEquals("-Wall", args.elementAt(0));
91    }
92  
93    
94  
95  
96    public void testWarningLevel4() {
97      final GccCompatibleCCompiler compiler = create();
98      final Vector args = new Vector();
99      compiler.addWarningSwitch(args, 4);
100     assertEquals(2, args.size());
101     assertEquals("-W", args.elementAt(0));
102     assertEquals("-Wall", args.elementAt(1));
103   }
104 
105   
106 
107 
108   public void testWarningLevel5() {
109     final GccCompatibleCCompiler compiler = create();
110     final Vector args = new Vector();
111     compiler.addWarningSwitch(args, 5);
112     assertEquals(3, args.size());
113     assertEquals("-Werror", args.elementAt(0));
114     assertEquals("-W", args.elementAt(1));
115     assertEquals("-Wall", args.elementAt(2));
116   }
117 }