1package org.udger.parser;
3import java.io.IOException;
4import java.io.InputStream;
5import java.net.UnknownHostException;
6import java.sql.SQLException;
8import javax.json.JsonArray;
9import javax.json.JsonObject;
10import javax.json.JsonReader;
14 public static void main(String args[]) {
15 InputStream is =
UdgerUaTest.class.getResourceAsStream(
"test_ip.json");
16 JsonReader jr = javax.json.Json.createReader(is);
17 JsonArray ja = jr.readArray();
22 for (
int i=0; i < ja.size(); i++) {
23 JsonObject jar = ja.getJsonObject(i);
24 JsonObject jor = jar.getJsonObject(
"ret");
25 String query = jar.getJsonObject(
"test").getString(
"teststring");
28 System.out.print(
"### Test : " + (i+1) +
" - ");
29 if (checkResult(ret, jor)) {
30 System.out.println(
"SUCCEEDED");
32 System.out.println(
"FAILED!");
34 System.out.println(
"Query: " + query);
37 }
catch (SQLException e) {
39 }
catch (UnknownHostException e) {
48 }
catch (IOException e) {
54 private static boolean checkResult(
UdgerIpResult ret, JsonObject jor) {
55 boolean result =
true;
56 result = testEqual(jor,
"ip_classification_code", ret.getIpClassificationCode()) && result;
57 result = testEqual(jor,
"datacenter_homepage", ret.getDataCenterHomePage()) && result;
58 result = testEqual(jor,
"crawler_respect_robotstxt", ret.getCrawlerRespectRobotstxt()) && result;
59 result = testEqual(jor,
"crawler_family_vendor_code", ret.getCrawlerFamilyVendorCode()) && result;
60 result = testEqual(jor,
"crawler_category", ret.getCrawlerCategory()) && result;
61 result = testEqual(jor,
"crawler_ver_major", ret.getCrawlerVerMajor()) && result;
62 result = testEqual(jor,
"ip_country", ret.getIpCountry()) && result;
63 result = testEqual(jor,
"crawler_ver", ret.getCrawlerVer()) && result;
64 result = testEqual(jor,
"crawler_name", ret.getCrawlerName()) && result;
65 result = testEqual(jor,
"ip_city", ret.getIpCity()) && result;
66 result = testEqual(jor,
"datacenter_name_code", ret.getDataCenterNameCode()) && result;
67 result = testEqual(jor,
"crawler_family_info_url", ret.getCrawlerFamilyInfoUrl()) && result;
68 result = testEqual(jor,
"ip_country_code", ret.getIpCountryCode()) && result;
69 result = testEqual(jor,
"ip_ver", String.valueOf(ret.getIpVer())) && result;
70 result = testEqual(jor,
"ip_classification", ret.getIpClassification()) && result;
71 result = testEqual(jor,
"crawler_family_code", ret.getCrawlerFamilyCode()) && result;
72 result = testEqual(jor,
"crawler_family_icon", ret.getCrawlerFamilyIcon()) && result;
73 result = testEqual(jor,
"crawler_family_homepage", ret.getCrawlerFamilyHomepage()) && result;
74 result = testEqual(jor,
"crawler_family_vendor_homepage", ret.getCrawlerFamilyVendorHomepage()) && result;
75 result = testEqual(jor,
"datacenter_name", ret.getDataCenterName()) && result;
76 result = testEqual(jor,
"ip", ret.getIp()) && result;
77 result = testEqual(jor,
"crawler_family", ret.getCrawlerFamily()) && result;
78 result = testEqual(jor,
"ip_hostname", ret.getIpHostname()) && result;
79 result = testEqual(jor,
"crawler_category_code", ret.getCrawlerCategoryCode()) && result;
80 result = testEqual(jor,
"crawler_family_vendor", ret.getCrawlerFamilyVendor()) && result;
84 private static boolean testEqual(JsonObject jor, String test, String ret) {
85 String expected = jor.getString(test);
86 if (!expected.equals(ret)) {
87 System.out.println(
"Failed \"" + test +
"\" : value=" + ret +
" expected:" + expected);
UdgerIpResult parseIp(String ipString)