OSDN Git Service

fixed: GUIを一新した
[importpicture/importpicture.git] / test / osm / jp / gpx / AppParametersTest.java
1 package osm.jp.gpx;
2
3 import static org.hamcrest.CoreMatchers.is;
4 import static org.junit.Assert.*;
5
6 import java.io.File;
7 import java.io.FileInputStream;
8 import java.io.FileOutputStream;
9 import java.io.IOException;
10 import java.nio.channels.FileChannel;
11
12 import org.junit.After;
13 import org.junit.Before;
14 import org.junit.Test;
15 import org.junit.runner.RunWith;
16 import org.junit.experimental.runners.*;
17
18 @RunWith(Enclosed.class)
19 public class AppParametersTest {
20
21     public static class 定義ファイルが存在しない場合 {
22         AppParameters params;
23
24         @Before
25         public void setUp() throws Exception {
26             File iniFile = new File("AdjustTime.ini");
27             File orgFile = new File("AdjustTime.ini.org");
28
29             if (orgFile.exists()) {
30                 orgFile.delete();
31             }
32             if (iniFile.exists()) {
33                 iniFile.renameTo(orgFile);
34             }
35         }
36
37         @After
38         public void tearDown() throws Exception {
39             File iniFile = new File("AdjustTime.ini");
40             File orgFile = new File("AdjustTime.ini.org");
41             if (iniFile.exists()) {
42                 iniFile.delete();
43             }
44             if (orgFile.exists()) {
45                 orgFile.renameTo(iniFile);
46             }
47         }
48
49         @Test
50         public void IMG_OUTPUT_ALLが定義されていない時() {
51             try {
52                 params = new AppParameters("testdata/AdjustTime.off.ini");
53                 String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL);
54                 assertThat(valueStr, is("false"));
55             }
56             catch (IOException e) {
57                 fail("Exceptionが発生した。");
58             }
59         }
60     }
61
62     public static class 定義ファイルがtureに定義されているとき {
63
64         @Before
65         public void setUp() throws Exception {
66             File iniFile = new File("AdjustTime.ini");
67             File orgFile = new File("AdjustTime.ini.org");
68             File testFile = new File("testdata", "AdjustTime.on.ini");
69
70             if (orgFile.exists()) {
71                     orgFile.delete();
72             }
73             if (iniFile.exists()) {
74                     iniFile.renameTo(orgFile);
75             }
76
77             FileInputStream inStream = new FileInputStream(testFile);
78             FileOutputStream outStream = new FileOutputStream(new File("AdjustTime.ini"));
79             FileChannel inChannel = inStream.getChannel();
80             FileChannel outChannel = outStream.getChannel();
81             try {
82                 inChannel.transferTo(0, inChannel.size(),outChannel);
83             }
84             finally {
85                 if (inChannel != null) inChannel.close();
86                 if (outChannel != null) outChannel.close();
87                 inStream.close();
88                 outStream.close();
89             }
90         }
91
92         @After
93         public void tearDown() throws Exception {
94             File iniFile = new File("AdjustTime.ini");
95             File orgFile = new File("AdjustTime.ini.org");
96             if (iniFile.exists()) {
97                 iniFile.delete();
98             }
99             if (orgFile.exists()) {
100                 orgFile.renameTo(iniFile);
101             }
102         }
103
104         @Test
105         public void IMG_OUTPUT_ALLがtureに定義されているとき() {
106             try {
107                 AppParameters params;
108                 params = new AppParameters();
109                 String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL);
110                 assertThat(valueStr, is("true"));
111             }
112             catch (IOException e) {
113                 fail("Exceptionが発生した。");
114             }
115         }
116
117         @Test
118         public void IMG_OUTPUT_ALLをfalseに書き換える() {
119             try {
120                 AppParameters params = new AppParameters();
121                 params.setProperty(AppParameters.IMG_OUTPUT_ALL, "false");
122                 params.store();
123                 params = null;
124                 AppParameters newParams = new AppParameters();
125                 String valueStr = newParams.getProperty(AppParameters.IMG_OUTPUT_ALL);
126                 assertThat(valueStr, is("false"));
127             }
128             catch (IOException e) {
129                 fail("Exceptionが発生した。");
130             }
131         }
132     }
133
134     public static class 定義ファイルがfalseに定義されているとき {
135
136         @Before
137         public void setUp() throws Exception {
138             File iniFile = new File("AdjustTime.ini");
139             File orgFile = new File("AdjustTime.ini.org");
140             File testFile = new File("testdata", "AdjustTime.off.ini");
141
142             if (orgFile.exists()) {
143                 orgFile.delete();
144             }
145             if (iniFile.exists()) {
146                 iniFile.renameTo(orgFile);
147             }
148
149             FileInputStream inStream = new FileInputStream(testFile);
150             FileOutputStream outStream = new FileOutputStream(new File("AdjustTime.ini"));
151             FileChannel inChannel = inStream.getChannel();
152             FileChannel outChannel = outStream.getChannel();
153             try {
154                 inChannel.transferTo(0, inChannel.size(),outChannel);
155             }
156             finally {
157                 if (inChannel != null) inChannel.close();
158                 if (outChannel != null) outChannel.close();
159                 inStream.close();
160                 outStream.close();
161             }
162         }
163
164         @After
165         public void tearDown() throws Exception {
166             File iniFile = new File("AdjustTime.ini");
167             File orgFile = new File("AdjustTime.ini.org");
168             if (iniFile.exists()) {
169                 iniFile.delete();
170             }
171             if (orgFile.exists()) {
172                 orgFile.renameTo(iniFile);
173             }
174         }
175
176         @Test
177         public void IMG_OUTPUT_ALLがfalseに定義されているとき() {
178             try {
179                 AppParameters params = new AppParameters();
180                 String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL);
181                 assertThat(valueStr, is("false"));
182             }
183             catch (IOException e) {
184                 fail("Exceptionが発生した。");
185             }
186         }
187
188         @Test
189         public void IMG_OUTPUT_ALLをtrueに書き換える() {
190             try {
191                 AppParameters params = new AppParameters();
192                 params.setProperty(AppParameters.IMG_OUTPUT_ALL, "true");
193                 params.store();
194                 params = null;
195                 AppParameters newParams = new AppParameters();
196                 String valueStr = newParams.getProperty(AppParameters.IMG_OUTPUT_ALL);
197                 assertThat(valueStr, is("true"));
198             }
199             catch (IOException e) {
200                 fail("Exceptionが発生した。");
201             }
202         }
203     }
204 }