Skip to content

Commit 5718df0

Browse files
committed
Updated tests to use submodule.
Also switched to the standard Maven resource location.
1 parent fb8204f commit 5718df0

13 files changed

Lines changed: 36 additions & 20 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
.pmd
1212
.project
1313
.settings
14+
bin
1415
doc
1516
hs_err*.log
1617
target

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "src/test/resources/maxmind-db"]
2+
path = src/test/resources/maxmind-db
3+
url = git://github.com/maxmind/MaxMind-DB.git

.travis.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ jdk:
66
- oraclejdk6
77
- oraclejdk7
88

9+
before_install:
10+
- git submodule update --init --recursive
11+
912
install: mvn install -DskipTests=true -Dgpg.skip=true
1013

1114
after_script: mvn cobertura:cobertura coveralls:cobertura

src/test/java/com/maxmind/maxminddb/PointerTest.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import java.io.File;
66
import java.io.IOException;
7+
import java.net.URISyntaxException;
78

89
import org.junit.Test;
910

@@ -14,8 +15,10 @@
1415
public class PointerTest {
1516
@SuppressWarnings("static-method")
1617
@Test
17-
public void testWithPointers() throws InvalidDatabaseException, IOException {
18-
File file = new File("test-data/pointer.bin");
18+
public void testWithPointers() throws InvalidDatabaseException,
19+
IOException, URISyntaxException {
20+
File file = new File(PointerTest.class.getResource(
21+
"/maxmind-db/test-data/maps-with-pointers.raw").toURI());
1922
ThreadBuffer ptf = new ThreadBuffer(file, FileMode.MEMORY);
2023
try {
2124
Decoder decoder = new Decoder(ptf, 0);

src/test/java/com/maxmind/maxminddb/ReaderTest.java

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
import java.io.File;
77
import java.io.IOException;
88
import java.net.InetAddress;
9+
import java.net.URI;
10+
import java.net.URISyntaxException;
911
import java.util.HashMap;
1012
import java.util.Map;
1113

@@ -18,24 +20,31 @@ public class ReaderTest {
1820
private final ObjectMapper om = new ObjectMapper();
1921

2022
@Test
21-
public void test() throws InvalidDatabaseException, IOException {
23+
public void test() throws InvalidDatabaseException, IOException,
24+
URISyntaxException {
2225
for (long recordSize : new long[] { 24, 28, 32 }) {
2326
for (int ipVersion : new int[] { 4, 6 }) {
24-
String fileName = "test-data/Test-IPv" + ipVersion + "-"
25-
+ recordSize + ".mmdb";
26-
MaxMindDbReader reader = new MaxMindDbReader(new File(fileName));
27-
this.testMetadata(reader, ipVersion, recordSize);
27+
URI file = ReaderTest.class.getResource(
28+
"/maxmind-db/test-data/MaxMind-DB-test-ipv" + ipVersion
29+
+ "-" + recordSize + ".mmdb").toURI();
30+
MaxMindDbReader reader = new MaxMindDbReader(new File(file));
31+
try {
32+
this.testMetadata(reader, ipVersion, recordSize);
33+
} finally {
34+
reader.close();
35+
}
2836

2937
if (ipVersion == 4) {
30-
this.testIpV4(reader, fileName);
38+
this.testIpV4(reader, file);
3139
} else {
32-
this.testIpV6(reader, fileName);
40+
this.testIpV6(reader, file);
3341
}
3442
}
3543
}
3644
}
3745

38-
private void testMetadata(MaxMindDbReader reader, int ipVersion, long recordSize) {
46+
private void testMetadata(MaxMindDbReader reader, int ipVersion,
47+
long recordSize) {
3948

4049
Metadata metadata = reader.getMetadata();
4150

@@ -54,7 +63,7 @@ private void testMetadata(MaxMindDbReader reader, int ipVersion, long recordSize
5463
assertEquals(recordSize, metadata.recordSize);
5564
}
5665

57-
private void testIpV4(MaxMindDbReader reader, String fileName)
66+
private void testIpV4(MaxMindDbReader reader, URI file)
5867
throws InvalidDatabaseException, IOException {
5968

6069
for (int i = 0; i <= 5; i++) {
@@ -63,8 +72,7 @@ private void testIpV4(MaxMindDbReader reader, String fileName)
6372
data.put("ip", address);
6473

6574
assertEquals("found expected data record for " + address + " in "
66-
+ fileName, data,
67-
reader.get(InetAddress.getByName(address)));
75+
+ file, data, reader.get(InetAddress.getByName(address)));
6876
}
6977

7078
Map<String, String> pairs = new HashMap<String, String>();
@@ -80,8 +88,7 @@ private void testIpV4(MaxMindDbReader reader, String fileName)
8088
data.put("ip", pairs.get(address));
8189

8290
assertEquals("found expected data record for " + address + " in "
83-
+ fileName, data,
84-
reader.get(InetAddress.getByName(address)));
91+
+ file, data, reader.get(InetAddress.getByName(address)));
8592
}
8693

8794
for (String ip : new String[] { "1.1.1.33", "255.254.253.123" }) {
@@ -90,7 +97,7 @@ private void testIpV4(MaxMindDbReader reader, String fileName)
9097
}
9198

9299
// XXX - logic could be combined with above
93-
private void testIpV6(MaxMindDbReader reader, String fileName)
100+
private void testIpV6(MaxMindDbReader reader, URI file)
94101
throws InvalidDatabaseException, IOException {
95102
String[] subnets = new String[] { "::1:ffff:ffff", "::2:0:0",
96103
"::2:0:40", "::2:0:50", "::2:0:58" };
@@ -100,8 +107,7 @@ private void testIpV6(MaxMindDbReader reader, String fileName)
100107
data.put("ip", address);
101108

102109
assertEquals("found expected data record for " + address + " in "
103-
+ fileName, data,
104-
reader.get(InetAddress.getByName(address)));
110+
+ file, data, reader.get(InetAddress.getByName(address)));
105111
}
106112

107113
Map<String, String> pairs = new HashMap<String, String>();
@@ -119,8 +125,7 @@ private void testIpV6(MaxMindDbReader reader, String fileName)
119125
data.put("ip", pairs.get(address));
120126

121127
assertEquals("found expected data record for " + address + " in "
122-
+ fileName, data,
123-
reader.get(InetAddress.getByName(address)));
128+
+ file, data, reader.get(InetAddress.getByName(address)));
124129
}
125130

126131
for (String ip : new String[] { "1.1.1.33", "255.254.253.123", "89fa::" }) {

src/test/resources/maxmind-db

Submodule maxmind-db added at 0e3f93d

test-data/Test-IPv4-24.mmdb

-536 Bytes
Binary file not shown.

test-data/Test-IPv4-28.mmdb

-573 Bytes
Binary file not shown.

test-data/Test-IPv4-32.mmdb

-610 Bytes
Binary file not shown.

test-data/Test-IPv6-24.mmdb

-1.24 KB
Binary file not shown.

0 commit comments

Comments
 (0)