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

  ViewVC Help
Powered by ViewVC 1.1.20