OSDN Git Service

b51f71b5248ea3b69ddd520e44c0cd0a8184c65d
[mikutoga/Vmd2XML.git] / src / test / java / jp / sfjp / mikutoga / vmd2xml / OptInfoTest.java
1 /*
2  */
3
4 package jp.sfjp.mikutoga.vmd2xml;
5
6 import org.junit.After;
7 import org.junit.AfterClass;
8 import org.junit.Before;
9 import org.junit.BeforeClass;
10 import org.junit.Test;
11 import static org.junit.Assert.*;
12
13 /**
14  *
15  */
16 public class OptInfoTest {
17
18     public OptInfoTest() {
19     }
20
21     @BeforeClass
22     public static void setUpClass() {
23     }
24
25     @AfterClass
26     public static void tearDownClass() {
27     }
28
29     @Before
30     public void setUp() {
31     }
32
33     @After
34     public void tearDown() {
35     }
36
37     /**
38      * Test of parseOption method, of class OptInfo.
39      */
40     @Test
41     public void testParseOption() throws Exception {
42         System.out.println("parseOption");
43
44         OptInfo result;
45
46         try{
47             OptInfo.parseOption();
48             fail();
49         }catch(CmdLineException e){
50             assertEquals("You must specify input file with -i.", e.getMessage());
51         }
52
53         try{
54             OptInfo.parseOption("XXX");
55             fail();
56         }catch(CmdLineException e){
57             assertEquals("Unknown option : XXX", e.getMessage());
58         }
59
60         result = OptInfo.parseOption("-h");
61         assertTrue(result.needHelp());
62         assertEquals(Vmd2Xml.GENERATOR, result.getGenerator());
63         assertEquals("\n", result.getNewline());
64         assertSame(MotionFileType.NONE, result.getInFileType());
65         assertNull(result.getInFilename());
66         assertSame(MotionFileType.NONE, result.getOutFileType());
67         assertNull(result.getOutFilename());
68         assertTrue(result.isQuaterniomMode());
69         assertFalse(result.overwriteMode());
70
71         try{
72             OptInfo.parseOption("-i");
73             fail();
74         }catch(CmdLineException e){
75             assertEquals("You need option arg with : -i", e.getMessage());
76         }
77
78         try{
79             OptInfo.parseOption("-i", "test.vmd");
80             fail();
81         }catch(CmdLineException e){
82             assertEquals("You must specify output file with -o.", e.getMessage());
83         }
84
85         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml");
86         assertFalse(result.needHelp());
87         assertSame(MotionFileType.VMD, result.getInFileType());
88         assertEquals("test.vmd", result.getInFilename());
89         assertSame(MotionFileType.XML_110820, result.getOutFileType());
90         assertEquals("test.xml", result.getOutFilename());
91         assertEquals(Vmd2Xml.GENERATOR, result.getGenerator());
92         assertEquals("\n", result.getNewline());
93         assertTrue(result.isQuaterniomMode());
94         assertFalse(result.overwriteMode());
95
96         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-i", "test2.vmd");
97         assertEquals("test2.vmd", result.getInFilename());
98
99
100         try{
101             OptInfo.parseOption("-i", "input", "-o", "test.xml");
102             fail();
103         }catch(CmdLineException e){
104             assertEquals("You must specify input format with -iform.", e.getMessage());
105         }
106
107         try{
108             OptInfo.parseOption("-i", "input", "-o", "test.xml", "-iform", "ZZZ");
109             fail();
110         }catch(CmdLineException e){
111             assertEquals("Unknown format : \"ZZZ\" must be \"vmd\" or \"xml\" or \"xml110820\"", e.getMessage());
112         }
113
114         result = OptInfo.parseOption("-i", "input", "-o", "test.xml", "-iform", "vmd");
115         assertSame(MotionFileType.VMD, result.getInFileType());
116         assertEquals("input", result.getInFilename());
117
118         result = OptInfo.parseOption("-i", "input", "-o", "test.xml", "-iform", "xml");
119         assertSame(MotionFileType.XML_110820, result.getInFileType());
120
121         result = OptInfo.parseOption("-i", "input", "-o", "test.xml", "-iform", "xml110820");
122         assertSame(MotionFileType.XML_110820, result.getInFileType());
123
124         try{
125             OptInfo.parseOption("-i", "test.vmd", "-o", "output");
126             fail();
127         }catch(CmdLineException e){
128             assertEquals("You must specify output format with -oform.", e.getMessage());
129         }
130
131         result = OptInfo.parseOption("-i", "test.vmd", "-o", "output", "-oform", "vmd");
132         assertSame(MotionFileType.VMD, result.getOutFileType());
133         assertEquals("output", result.getOutFilename());
134
135         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-f");
136         assertTrue(result.overwriteMode());
137
138         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-eyxz");
139         assertFalse(result.isQuaterniomMode());
140
141         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-quat");
142         assertTrue(result.isQuaterniomMode());
143
144         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-eyxz", "-quat");
145         assertTrue(result.isQuaterniomMode());
146
147         try{
148             OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-nl");
149             fail();
150         }catch(CmdLineException e){
151             assertEquals("You need option arg with : -nl", e.getMessage());
152         }
153
154         try{
155             OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-nl", "QQQ");
156             fail();
157         }catch(CmdLineException e){
158             assertEquals("Unknown newline : \"QQQ\" must be \"lf\" or \"crlf\"", e.getMessage());
159         }
160
161         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-nl", "lf");
162         assertEquals("\n", result.getNewline());
163
164         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-nl", "crlf");
165         assertEquals("\r\n", result.getNewline());
166
167         try{
168             OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout");
169             fail();
170         }catch(CmdLineException e){
171             assertEquals("You need option arg with : -genout", e.getMessage());
172         }
173
174         try{
175             OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "QQQ");
176             fail();
177         }catch(CmdLineException e){
178             assertEquals("Unknown switch : \"QQQ\" must be \"on\" or \"off\"", e.getMessage());
179         }
180
181         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "on");
182         assertEquals(Vmd2Xml.GENERATOR, result.getGenerator());
183
184         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "true");
185         assertEquals(Vmd2Xml.GENERATOR, result.getGenerator());
186
187         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "yes");
188         assertEquals(Vmd2Xml.GENERATOR, result.getGenerator());
189
190         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "off");
191         assertNull(result.getGenerator());
192
193         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "false");
194         assertNull(result.getGenerator());
195
196         result = OptInfo.parseOption("-i", "test.vmd", "-o", "test.xml", "-genout", "no");
197         assertNull(result.getGenerator());
198
199
200         return;
201     }
202
203 }