5656import java .io .ByteArrayInputStream ;
5757import java .io .ByteArrayOutputStream ;
5858import java .sql .Connection ;
59+ import java .sql .DriverManager ;
5960import java .sql .PreparedStatement ;
6061import java .sql .ResultSet ;
6162import java .util .*;
6465class TeragrepBloomFilterTest {
6566
6667 private final String pattern = "[a-zA-Z]*$" ;
67- private LazyConnection lazyConnection ;
6868 private FilterTypes filterTypes ;
6969 private final BloomFilter emptyFilter = BloomFilter .create (100 , 0.01 );
7070 private SortedMap <Long , Double > sizeMap ;
7171 private final String tableName = "bloomfilter_test" ;
72+ private final String username = "sa" ;
73+ private final String password = "" ;
74+ private final String connectionUrl = "jdbc:h2:mem:test;MODE=MariaDB;DATABASE_TO_LOWER=TRUE;CASE_INSENSITIVE_IDENTIFIERS=TRUE" ;
75+ private final Connection conn = Assertions
76+ .assertDoesNotThrow (() -> DriverManager .getConnection (connectionUrl , username , password ));
7277
7378 @ BeforeAll
7479 void setEnv () {
7580 Properties properties = new Properties ();
76- String username = "sa" ;
77- properties .put ("dpl.pth_10.bloom.db.username" , username );
78- String password = "" ;
79- properties .put ("dpl.pth_10.bloom.db.password" , password );
80- String connectionUrl = "jdbc:h2:mem:test;MODE=MariaDB;DATABASE_TO_LOWER=TRUE;CASE_INSENSITIVE_IDENTIFIERS=TRUE" ;
81- properties .put ("dpl.pth_06.bloom.db.url" , connectionUrl );
8281 properties
8382 .put (
8483 "dpl.pth_06.bloom.db.fields" ,
8584 "[" + "{expected: 10000, fpp: 0.01}," + "{expected: 20000, fpp: 0.03},"
8685 + "{expected: 30000, fpp: 0.05}" + "]"
8786 );
8887 Config config = ConfigFactory .parseProperties (properties );
89- lazyConnection = new LazyConnection (config );
90- Connection conn = lazyConnection .get ();
9188 Assertions .assertDoesNotThrow (() -> {
9289 conn .prepareStatement ("DROP ALL OBJECTS" ).execute (); // h2 clear database
9390 });
@@ -128,10 +125,10 @@ void setEnv() {
128125
129126 @ AfterAll
130127 public void tearDown () {
131- Connection conn = lazyConnection .get ();
132128 Assertions .assertDoesNotThrow (() -> {
133129 conn .prepareStatement ("DROP ALL OBJECTS" ).execute (); // h2 clear database
134130 });
131+ Assertions .assertDoesNotThrow (conn ::close );
135132 }
136133
137134 // -- Tests --
@@ -147,7 +144,7 @@ void testSavingToDatabase() {
147144 TeragrepBloomFilter filter = new TeragrepBloomFilter (
148145 partition ,
149146 rawFilter ,
150- lazyConnection . get () ,
147+ conn ,
151148 filterTypes ,
152149 tableName ,
153150 pattern
@@ -156,7 +153,7 @@ void testSavingToDatabase() {
156153 Map .Entry <Long , Double > entry = sizeMap .entrySet ().iterator ().next ();
157154 String sql = "SELECT `filter` FROM `" + tableName + "`" ;
158155 Assertions .assertDoesNotThrow (() -> {
159- ResultSet rs = lazyConnection . get () .prepareStatement (sql ).executeQuery ();
156+ ResultSet rs = conn .prepareStatement (sql ).executeQuery ();
160157 int cols = rs .getMetaData ().getColumnCount ();
161158 BloomFilter resultFilter = emptyFilter ;
162159 int loops = 0 ;
@@ -187,7 +184,7 @@ void testSavingToDatabaseWithOverwrite() {
187184 TeragrepBloomFilter filter = new TeragrepBloomFilter (
188185 partition ,
189186 rawFilter ,
190- lazyConnection . get () ,
187+ conn ,
191188 filterTypes ,
192189 tableName ,
193190 pattern
@@ -196,7 +193,7 @@ void testSavingToDatabaseWithOverwrite() {
196193 String sql = "SELECT `filter` FROM `" + tableName + "`" ;
197194 Assertions .assertDoesNotThrow (() -> {
198195 BloomFilter resultFilter = emptyFilter ;
199- ResultSet rs = lazyConnection . get () .prepareStatement (sql ).executeQuery ();
196+ ResultSet rs = conn .prepareStatement (sql ).executeQuery ();
200197 while (rs .next ()) {
201198 byte [] bytes = rs .getBytes (1 );
202199 ByteArrayInputStream bais = new ByteArrayInputStream (bytes );
@@ -220,15 +217,15 @@ void testSavingToDatabaseWithOverwrite() {
220217 TeragrepBloomFilter secondFilter = new TeragrepBloomFilter (
221218 secondPartition ,
222219 rawFilter2 ,
223- lazyConnection . get () ,
220+ conn ,
224221 filterTypes ,
225222 tableName ,
226223 pattern
227224 );
228225 secondFilter .saveFilter (true );
229226 String secondSql = "SELECT `filter` FROM `" + tableName + "`" ;
230227 Assertions .assertDoesNotThrow (() -> {
231- ResultSet secondRs = lazyConnection . get () .prepareStatement (secondSql ).executeQuery ();
228+ ResultSet secondRs = conn .prepareStatement (secondSql ).executeQuery ();
232229 BloomFilter secondResultFilter = emptyFilter ;
233230 while (secondRs .next ()) {
234231 byte [] bytes = secondRs .getBytes (1 );
@@ -242,7 +239,7 @@ void testSavingToDatabaseWithOverwrite() {
242239 Assertions .assertFalse (secondResultFilter .mightContain ("one" ));
243240 Assertions .assertTrue (secondResultFilter .mightContain ("neo" ));
244241 Assertions .assertTrue (secondResultFilter .expectedFpp () <= 0.01D );
245- secondRs . close ( );
242+ Assertions . assertDoesNotThrow ( secondRs :: close );
246243 });
247244 }
248245
@@ -261,7 +258,7 @@ void testCorrectFilterSizeSelection() {
261258 TeragrepBloomFilter filter = new TeragrepBloomFilter (
262259 partition ,
263260 rawFilter ,
264- lazyConnection . get () ,
261+ conn ,
265262 filterTypes ,
266263 tableName ,
267264 pattern
@@ -276,7 +273,7 @@ void testCorrectFilterSizeSelection() {
276273 Double fpp = sizeMap .get (size );
277274 String sql = "SELECT `filter` FROM `" + tableName + "`" ;
278275 Assertions .assertDoesNotThrow (() -> {
279- ResultSet rs = lazyConnection . get () .prepareStatement (sql ).executeQuery ();
276+ ResultSet rs = conn .prepareStatement (sql ).executeQuery ();
280277 int cols = rs .getMetaData ().getColumnCount ();
281278 BloomFilter resultFilter = emptyFilter ;
282279 int loops = 0 ;
@@ -292,15 +289,15 @@ void testCorrectFilterSizeSelection() {
292289 Assertions .assertTrue (resultFilter .mightContain ("one" ));
293290 Assertions .assertFalse (resultFilter .mightContain ("neo" ));
294291 Assertions .assertTrue (resultFilter .expectedFpp () <= fpp );
295- rs . close ( );
292+ Assertions . assertDoesNotThrow ( rs :: close );
296293 });
297294 }
298295
299296 @ Test
300297 public void testPatternSavedToDatabase () {
301298 String sql = "SELECT `pattern` FROM `filtertype` GROUP BY `pattern`" ;
302299 Assertions .assertDoesNotThrow (() -> {
303- ResultSet rs = lazyConnection . get () .prepareStatement (sql ).executeQuery ();
300+ ResultSet rs = conn .prepareStatement (sql ).executeQuery ();
304301 String pattern = "" ;
305302 while (rs .next ()) {
306303 pattern = rs .getString (1 );
@@ -320,15 +317,15 @@ public void testEquals() {
320317 TeragrepBloomFilter filter1 = new TeragrepBloomFilter (
321318 partition ,
322319 rawFilter ,
323- lazyConnection . get () ,
320+ conn ,
324321 filterTypes ,
325322 tableName ,
326323 pattern
327324 );
328325 TeragrepBloomFilter filter2 = new TeragrepBloomFilter (
329326 partition ,
330327 rawFilter ,
331- lazyConnection . get () ,
328+ conn ,
332329 filterTypes ,
333330 tableName ,
334331 pattern
@@ -350,15 +347,15 @@ public void testNotEqualsTokens() {
350347 TeragrepBloomFilter filter1 = new TeragrepBloomFilter (
351348 row1 .getString (0 ),
352349 rawFilter1 ,
353- lazyConnection . get () ,
350+ conn ,
354351 filterTypes ,
355352 tableName ,
356353 pattern
357354 );
358355 TeragrepBloomFilter filter2 = new TeragrepBloomFilter (
359356 row2 .getString (0 ),
360357 rawFilter2 ,
361- lazyConnection . get () ,
358+ conn ,
362359 filterTypes ,
363360 tableName ,
364361 pattern
0 commit comments