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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2687 - (hide annotations) (download)
Mon Aug 31 07:59:50 2015 UTC (8 years, 9 months ago) by torben
File size: 5941 byte(s)
	 Distance=2 laver også false positives - så udkommenter denne sektion indtil at den er mere robust
*	Tilpas unit-test til dette
1 torben 2609 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 torben 2611 * 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 torben 2609 * 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 torben 2612 /**
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 torben 2609
84     /**
85 torben 2612 * Levenshtein1 & 2 & 3
86     */
87     @Test
88     public void testOkLevenshtein() {
89     SearchResult res;
90    
91 torben 2687 //Distance=1
92 torben 2612 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 torben 2687 /* Distance=2
98 torben 2612 res = search.search("8700", "Vtergade 1");
99     assertEquals(SearchResult.Status.STATUS_OK, res.status);
100     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
101 torben 2687 */
102 torben 2612
103 torben 2687 //Distance=2
104     res = search.search("8700", "Vtergade 1");
105     assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
106    
107    
108     //Distance=3
109 torben 2612 res = search.search("8700", "Vergade 1");
110     assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
111     }
112    
113 torben 2624 /**
114 torben 2625 * Tester at rutninen der fjerner foranstillede navne virker - både 1,2,3,4
115 torben 2624 */
116 torben 2612
117 torben 2624 @Test
118     public void testRemoveCompany() {
119    
120 torben 2625 //1
121     SearchResult res = search.search("8700", "Firma, Vestergade 1");
122     assertEquals(SearchResult.Status.STATUS_OK, res.status);
123     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
124     assertEquals("vestergade", res.vasketVejnavn);
125 torben 2624
126 torben 2625 //2
127     res = search.search("8700", "Firma Navn, Vestergade 1");
128 torben 2624 assertEquals(SearchResult.Status.STATUS_OK, res.status);
129     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
130     assertEquals("vestergade", res.vasketVejnavn);
131 torben 2625
132     //3
133     res = search.search("8700", "Firma Fornavn Efternavn, Vestergade 1");
134     assertEquals(SearchResult.Status.STATUS_OK, res.status);
135     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
136     assertEquals("vestergade", res.vasketVejnavn);
137    
138     //4
139     res = search.search("8700", "Firma Fornavn MellemNavn Efternavn, Vestergade 1");
140     assertEquals(SearchResult.Status.STATUS_OK, res.status);
141     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
142     assertEquals("vestergade", res.vasketVejnavn);
143    
144     //5 ---denne skal fejle
145     res = search.search("8700", "Firma Fornavn MellemNavn Efternavn FEJL, Vestergade 1");
146     assertEquals(SearchResult.Status.ERROR_UNKNOWN_STREETNAME, res.status);
147    
148 torben 2624 }
149 torben 2612
150    
151    
152     /**
153 torben 2609 * Adressen vi kender vejnavnet men ikke husnummeret
154     */
155     @Test
156     public void testFailureUnkownHousenumber() {
157     SearchResult res = search.search("8700", "Vestergade 10");
158    
159     assertEquals(SearchResult.Status.ERROR_UNKNOWN_ADDRESSPOINT, res.status);
160     }
161    
162 torben 2619 /**
163     * Adressen kendt men uden for dækning
164     */
165 torben 2609
166 torben 2619 @Test
167     public void testNotCovered() {
168     SearchResult res = search.search("8800", "Enebærvej 2");
169     assertEquals(SearchResult.Status.STATUS_NOT_COVERED, res.status);
170     }
171    
172     /**
173     * Adressen kendt men markeret lukket
174     */
175     @Test
176     public void testClosed() {
177     SearchResult res = search.search("8300", "Sønderbrogade 4");
178    
179     assertEquals(SearchResult.Status.STATUS_NOT_COVERED, res.status);
180     }
181    
182 torben 2621 /**
183     * Adressen kendt på 100%
184     */
185     @Test
186 torben 2622 public void testExtended() {
187     SearchResult res = search.search("8700", "Vestergade 2");
188    
189     assertEquals(SearchResult.Status.STATUS_OK, res.status);
190     assertEquals(DaekningsType.DAEKNING_UDVIDET, res.address.daekningsType);
191     assertEquals(".B87049", res.address.rute);
192     }
193    
194     /**
195     * Adressen kendt på 100%
196     */
197     @Test
198 torben 2621 public void test100Percent() {
199     SearchResult res = search.search("8300", "Sønderbrogade 80");
200    
201     assertEquals(SearchResult.Status.STATUS_OK, res.status);
202     assertEquals(DaekningsType.DAEKNING_100PCT, res.address.daekningsType);
203     }
204    
205 torben 2631 /**
206     * Vesterbrogade er registreret som en DB alias mod Vestergade
207     */
208     @Test
209     public void testDbAlias() {
210     SearchResult res = search.search("8700", "Vesterbrogade 1");
211    
212     assertEquals(SearchResult.Status.STATUS_OK, res.status);
213     assertEquals(DaekningsType.DAEKNING_DIREKTE, res.address.daekningsType);
214     }
215 torben 2609 }

  ViewVC Help
Powered by ViewVC 1.1.20