/[projects]/dao/DaoAdresseService/src/test/java/dk/daoas/daoadresseservice/test/AddressSearchTest.java
ViewVC logotype

Contents of /dao/DaoAdresseService/src/test/java/dk/daoas/daoadresseservice/test/AddressSearchTest.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2625 - (show annotations) (download)
Fri Jul 17 08:18:10 2015 UTC (8 years, 10 months ago) by torben
File size: 5461 byte(s)
Mere uførlig testRemoveCompany()
1 package dk.daoas.daoadresseservice.test;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.junit.Assert.assertNotNull;
5
6 import java.sql.SQLException;
7
8 import org.junit.BeforeClass;
9 import org.junit.Test;
10
11 import dk.daoas.daoadresseservice.AddressSearch;
12 import dk.daoas.daoadresseservice.DaekningsType;
13 import dk.daoas.daoadresseservice.admin.ServiceConfig;
14 import dk.daoas.daoadresseservice.beans.SearchResult;
15
16 public class AddressSearchTest {
17
18 static AddressSearch search;
19 static MockDatabaseLayer db;
20
21 @BeforeClass
22 public static void setupSearchStructure() throws SQLException {
23 ServiceConfig conf = new ServiceConfig();
24 conf.useGoogle = false;
25 conf.useOpenStreetMaps = false;
26
27 db = new MockDatabaseLayer();
28
29 search = new AddressSearch(db, conf);
30 search.buildSearchStructures();
31 }
32
33
34
35 @Test
36 public void testBasicLookup() {
37
38 SearchResult res = search.search("8700", "Vestergade 1");
39
40 assertEquals(SearchResult.Status.STATUS_OK, res.status);
41 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
42 }
43
44
45 /**
46 * Ugyldigt postnr
47 */
48 @Test
49 public void testFailureIllegalPostal() {
50 SearchResult res = search.search("asdf", "Vestergade 10");
51
52 assertEquals(SearchResult.Status.ERROR_UNKNOWN_POSTAL, res.status);
53 }
54
55 /**
56 * Ukendt postnr
57 */
58 @Test
59 public void testFailurePostal() {
60 SearchResult res = search.search("1234", "Vestergade 10");
61
62 assertEquals(SearchResult.Status.ERROR_UNKNOWN_POSTAL, res.status);
63 }
64
65 /**
66 * Manglende husnr
67 */
68 @Test
69 public void testFailureMissingHousenumber() {
70 SearchResult res = search.search("8700", "Vestergade");
71
72 assertEquals(SearchResult.Status.ERROR_MISSING_HOUSENUMBER, res.status);
73 }
74
75 /**
76 * Adressen vi ukendtvej
77 */
78 @Test
79 public void testFailureUnkownStreetname() {
80 SearchResult res = search.search("8700", "Nonsensgade 1");
81
82 assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
83 }
84
85 /**
86 * Levenshtein1 & 2 & 3
87 */
88 @Test
89 public void testOkLevenshtein() {
90 SearchResult res;
91
92 res = search.search("8700", "Vstergade 1");
93 assertEquals(SearchResult.Status.STATUS_OK, res.status);
94 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
95
96
97 res = search.search("8700", "Vtergade 1");
98 assertEquals(SearchResult.Status.STATUS_OK, res.status);
99 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
100
101 res = search.search("8700", "Vergade 1");
102 assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
103 }
104
105 /**
106 * Tester at rutninen der fjerner foranstillede navne virker - både 1,2,3,4
107 */
108
109 @Test
110 public void testRemoveCompany() {
111
112 //1
113 SearchResult res = search.search("8700", "Firma, Vestergade 1");
114 assertEquals(SearchResult.Status.STATUS_OK, res.status);
115 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
116 assertEquals("vestergade", res.vasketVejnavn);
117
118 //2
119 res = search.search("8700", "Firma Navn, Vestergade 1");
120 assertEquals(SearchResult.Status.STATUS_OK, res.status);
121 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
122 assertEquals("vestergade", res.vasketVejnavn);
123
124 //3
125 res = search.search("8700", "Firma Fornavn Efternavn, Vestergade 1");
126 assertEquals(SearchResult.Status.STATUS_OK, res.status);
127 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
128 assertEquals("vestergade", res.vasketVejnavn);
129
130 //4
131 res = search.search("8700", "Firma Fornavn MellemNavn Efternavn, Vestergade 1");
132 assertEquals(SearchResult.Status.STATUS_OK, res.status);
133 assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
134 assertEquals("vestergade", res.vasketVejnavn);
135
136 //5 ---denne skal fejle
137 res = search.search("8700", "Firma Fornavn MellemNavn Efternavn FEJL, Vestergade 1");
138 assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
139
140 }
141
142
143
144 /**
145 * Adressen vi kender vejnavnet men ikke husnummeret
146 */
147 @Test
148 public void testFailureUnkownHousenumber() {
149 SearchResult res = search.search("8700", "Vestergade 10");
150
151 assertEquals(SearchResult.Status.ERROR_UNKNOWN_ADDRESSPOINT, res.status);
152 }
153
154 /**
155 * Adressen kendt men uden for dækning
156 */
157
158 @Test
159 public void testNotCovered() {
160 SearchResult res = search.search("8800", "Enebærvej 2");
161 assertEquals(SearchResult.Status.STATUS_NOT_COVERED, res.status);
162 }
163
164 /**
165 * Adressen kendt men markeret lukket
166 */
167 @Test
168 public void testClosed() {
169 SearchResult res = search.search("8300", "Sønderbrogade 4");
170
171 assertEquals(SearchResult.Status.STATUS_NOT_COVERED, res.status);
172 }
173
174 /**
175 * Adressen kendt på 100%
176 */
177 @Test
178 public void testExtended() {
179 SearchResult res = search.search("8700", "Vestergade 2");
180
181 assertEquals(SearchResult.Status.STATUS_OK, res.status);
182 assertEquals(DaekningsType.DAEKNING_UDVIDET, res.address.daekningsType);
183 assertEquals(".B87049", res.address.rute);
184 }
185
186 /**
187 * Adressen kendt på 100%
188 */
189 @Test
190 public void test100Percent() {
191 SearchResult res = search.search("8300", "Sønderbrogade 80");
192
193 assertEquals(SearchResult.Status.STATUS_OK, res.status);
194 assertEquals(DaekningsType.DAEKNING_100PCT, res.address.daekningsType);
195 }
196
197 }

  ViewVC Help
Powered by ViewVC 1.1.20