KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > incava > jagol > TestListOption


1 package org.incava.jagol;
2
3 import java.io.*;
4 import java.util.*;
5 import junit.framework.TestCase;
6
7
8 public class TestListOption extends TestCase
9 {
10     ListOption opt = new ListOption("listopt", "this is the description of listopt");
11
12     public TestListOption(String JavaDoc name)
13     {
14         super(name);
15     }
16
17     public void testDefault()
18     {
19         assertEquals("listopt", opt.getLongName());
20         assertEquals("this is the description of listopt", opt.getDescription());
21
22         assertEquals("default value", (new ArrayList()), opt.getValue());
23     }
24
25     public void testShortName()
26     {
27         opt.setShortName('d');
28         assertEquals('d', opt.getShortName());
29     }
30
31     public void testSetListValue()
32     {
33         List v = new ArrayList();
34         v.add("dimmu");
35         v.add("callendish");
36         v.add("charon");
37         
38         opt.setValue(v);
39         List values = opt.getValue();
40         assertNotNull("list", values);
41         assertEquals("list size", 3, values.size());
42         assertEquals("option value", v.get(0), values.get(0));
43         assertEquals("option value", v.get(1), values.get(1));
44         assertEquals("option value", v.get(2), values.get(2));
45     }
46
47     public void testSetFromArgsListEqual()
48     {
49         List args = new ArrayList();
50         try {
51             boolean processed = opt.set("--listopt=fee,fi,fo,fum", args);
52             assertEquals("option processed", true, processed);
53             List values = opt.getValue();
54             assertEquals("list size", 4, values.size());
55             assertEquals("option value", "fee", values.get(0));
56             assertEquals("option value", "fi", values.get(1));
57             assertEquals("option value", "fo", values.get(2));
58             assertEquals("option value", "fum", values.get(3));
59             assertEquals("argument removed from list", 0, args.size());
60         }
61         catch (OptionException ite) {
62             fail("failure is not an option");
63         }
64     }
65
66     public void testSetFromArgsListSeparateList()
67     {
68         List args = new ArrayList();
69         args.add("closing\nwinds");
70         try {
71             boolean processed = opt.set("--listopt", args);
72             assertEquals("option processed", true, processed);
73             List values = opt.getValue();
74             assertEquals("list size", 2, values.size());
75             assertEquals("option value", "closing", values.get(0));
76             assertEquals("option value", "winds", values.get(1));
77             assertEquals("argument removed from list", 0, args.size());
78         }
79         catch (OptionException ite) {
80             fail("failure is not an option");
81         }
82     }
83
84     public void testSetFromLongerArgsListEqual()
85     {
86         List args = new ArrayList();
87         args.add("--anotheropt");
88         try {
89             boolean processed = opt.set("--listopt=ord", args);
90             assertEquals("option processed", true, processed);
91             List values = opt.getValue();
92             assertEquals("list size", 1, values.size());
93             assertEquals("option value", "ord", values.get(0));
94             assertEquals("argument removed from list", 1, args.size());
95         }
96         catch (OptionException ite) {
97             fail("failure is not an option");
98         }
99     }
100
101     public void testSetFromLongerArgsListSeparateList()
102     {
103         List args = new ArrayList();
104         args.add("\"red blue\tgreen\"");
105         args.add("--anotheropt");
106         try {
107             boolean processed = opt.set("--listopt", args);
108             assertEquals("option processed", true, processed);
109             List values = opt.getValue();
110             assertEquals("list size", 3, values.size());
111             assertEquals("option value", "red", values.get(0));
112             assertEquals("option value", "blue", values.get(1));
113             assertEquals("option value", "green", values.get(2));
114             assertEquals("argument removed from list", 1, args.size());
115         }
116         catch (OptionException ite) {
117             fail("failure is not an option");
118         }
119     }
120
121     public void testSetInvalidValueDanglingEquals()
122     {
123         List args = new ArrayList();
124         args.add("--anotheropt");
125         try {
126             boolean processed = opt.set("--listopt=", args);
127             fail("exception expected");
128         }
129         catch (OptionException ite) {
130         }
131     }
132
133 }
134
Popular Tags