Newer
Older
adjustgpx-core / test / osm / jp / gpx / AppParametersTest.java
@haya4 haya4 on 18 Aug 2019 6 KB Java11 - AdjustTime2
  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_ALLtureに定義されているとき() {
  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_ALLfalseに書き換える() {
  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_ALLfalseに定義されているとき() {
  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_ALLtrueに書き換える() {
  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. }