1 package de.fhdw.wtf.persistence.test;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.junit.Assert.fail;
5
6 import java.io.File;
7 import java.io.FileNotFoundException;
8 import java.io.PrintWriter;
9 import java.io.UnsupportedEncodingException;
10 import java.util.MissingResourceException;
11
12 import org.junit.Test;
13
14 import de.fhdw.wtf.persistence.utils.PropertiesReaderFile;
15 import de.fhdw.wtf.persistence.utils.PropertiesReaderRessource;
16
17 public class TestPropertiesReader {
18
19 private void prepareFile() throws FileNotFoundException, UnsupportedEncodingException {
20 this.deleteFile();
21 final PrintWriter writer = new PrintWriter("Settings1.properties", "UTF-8");
22 writer.println("sid=XE");
23 writer.println("schema=meta");
24 writer.println("username=meta");
25 writer.println("password=meta");
26 writer.println("hostname=localhost");
27 writer.println("port=1521");
28 writer.close();
29 }
30
31 private void deleteFile() {
32 (new File("Settings1.properties")).delete();
33 }
34
35 @Test
36 public void testGetInstanceNoError() {
37 try {
38 final PropertiesReaderRessource reader = new PropertiesReaderRessource();
39 reader.initialize("oracle");
40 } catch (final MissingResourceException e) {
41 fail();
42 }
43 }
44
45 @Test
46 public void testOracleValuesFromRessourceError() {
47 try {
48 final PropertiesReaderRessource reader = new PropertiesReaderRessource();
49 reader.initialize("resource.oracle");
50 fail();
51 } catch (final MissingResourceException e) {
52
53 }
54 }
55
56 @Test
57 public void testOracleValuesFromFileError() {
58 try {
59 final PropertiesReaderFile reader = new PropertiesReaderFile();
60 reader.initialize("FileDoesNotExists.properties");
61 fail();
62 } catch (final MissingResourceException e) {
63
64 }
65 }
66
67 @Test
68 public void testOracleValuesFromRessource() {
69 final PropertiesReaderRessource reader = new PropertiesReaderRessource();
70 reader.initialize("oracle");
71
72 assertEquals("XE", reader.getProperty("sid"));
73 assertEquals("meta", reader.getProperty("schema"));
74 assertEquals("meta", reader.getProperty("username"));
75 assertEquals("meta", reader.getProperty("password"));
76 assertEquals("localhost", reader.getProperty("hostname"));
77 assertEquals("1521", reader.getProperty("port"));
78 }
79
80 @Test
81 public void testOracleValuesFromFile() throws FileNotFoundException, UnsupportedEncodingException {
82 this.prepareFile();
83
84 final PropertiesReaderFile reader = new PropertiesReaderFile();
85 reader.initialize("Settings1.properties");
86
87 assertEquals("XE", reader.getProperty("sid"));
88 assertEquals("meta", reader.getProperty("schema"));
89 assertEquals("meta", reader.getProperty("username"));
90 assertEquals("meta", reader.getProperty("password"));
91 assertEquals("localhost", reader.getProperty("hostname"));
92 assertEquals("1521", reader.getProperty("port"));
93
94 this.deleteFile();
95 }
96
97 }