Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitbcaf96e

Browse files
committed
fix: writing arrays to json
1 parent9b805a5 commitbcaf96e

File tree

6 files changed

+70
-7
lines changed

6 files changed

+70
-7
lines changed

‎pom.xml‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@
7474
<exclude>README.md</exclude>
7575
<exclude>CONTRIBUTORS.txt</exclude>
7676
<exclude>CHANGELOG.md</exclude>
77+
<exclude>**/test/**/*.json</exclude>
7778
</excludes>
7879
</configuration>
7980
</plugin>

‎src/main/java/com/indoqa/solr/facet/api/AbstractFacet.java‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,7 @@ protected static void writeArray(JSONWriter jsonWriter, String fieldName, Object
4646
if (array.length ==1) {
4747
jsonWriter.write(array[0]);
4848
}else {
49-
jsonWriter.startArray();
5049
jsonWriter.write(array);
51-
jsonWriter.endArray();
5250
}
5351
}
5452

‎src/test/java/com/indoqa/solr/facet/api/JsonSerializationTest.java‎

Lines changed: 42 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,27 +16,64 @@
1616
*/
1717
packagecom.indoqa.solr.facet.api;
1818

19+
importstaticorg.junit.Assert.assertEquals;
20+
21+
importjava.io.IOException;
22+
importjava.nio.charset.StandardCharsets;
23+
importjava.nio.file.Files;
24+
importjava.nio.file.Path;
25+
importjava.nio.file.Paths;
26+
importjava.time.LocalDate;
27+
importjava.time.ZoneId;
1928
importjava.util.Date;
2029

2130
importorg.junit.Test;
2231

2332
publicclassJsonSerializationTest {
2433

2534
@Test
26-
publicvoidtest() {
35+
publicvoidtest()throwsIOException{
2736
FacetListfacetList =newFacetList();
2837
TermsFacettermsFacet =newTermsFacet("abc","abc");
2938
facetList.addSubFacet(termsFacet);
3039

31-
System.out.println(facetList.toJsonString());
40+
this.validate(facetList.toJsonString(),Paths.get("./src/test/resources/facet-terms.json"));
3241
}
3342

3443
@Test
35-
publicvoidtestDateRangeFacet() {
44+
publicvoidtestDateRangeFacet()throwsIOException {
45+
DatestartDate =Date.from(LocalDate.of(2022,1,1).atStartOfDay().atZone(ZoneId.of("UTC")).toInstant());
46+
DateendDate =Date.from(LocalDate.of(2022,1,2).atStartOfDay().atZone(ZoneId.of("UTC")).toInstant());
47+
3648
FacetListfacetList =newFacetList();
37-
RangeFacetrangeFacet =RangeFacet.fromDates("name","field",newDate(),newDate(),GapUnit.MINUTES,1);
49+
RangeFacetrangeFacet =RangeFacet.fromDates("name","field",startDate,endDate,GapUnit.MINUTES,1);
3850
facetList.addSubFacet(rangeFacet);
3951

40-
System.out.println(facetList.toJsonString());
52+
this.validate(facetList.toJsonString(),Paths.get("./src/test/resources/facet-date-range.json"));
53+
}
54+
55+
@Test
56+
publicvoidtestDomain()throwsIOException {
57+
FacetListfacetList =newFacetList();
58+
59+
TermsFacetfacet =newTermsFacet("name","field");
60+
facet.setLimit(5);
61+
62+
Domaindomain =newDomain();
63+
domain.setExcludeTags("exclude1","exclude2");
64+
facet.setDomain(domain);
65+
66+
facetList.addSubFacet(facet);
67+
68+
this.validate(facetList.toJsonString(),Paths.get("./src/test/resources/facet-domain.json"));
69+
}
70+
71+
privatevoidvalidate(Stringactual,Pathpath)throwsIOException {
72+
if (Files.notExists(path)) {
73+
Files.write(path,actual.getBytes(StandardCharsets.UTF_8));
74+
}
75+
76+
Stringexpected =newString(Files.readAllBytes(path),StandardCharsets.UTF_8);
77+
assertEquals(expected,actual);
4178
}
4279
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"name":{
3+
"type":"range",
4+
"field":"field",
5+
"start":"2022-01-01T00:00:00Z",
6+
"end":"2022-01-02T00:00:00Z",
7+
"gap":"+1MINUTES"
8+
}
9+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"name":{
3+
"type":"terms",
4+
"domain":{
5+
"excludeTags":[
6+
"exclude1",
7+
"exclude2"]
8+
},
9+
"field":"field",
10+
"limit":5
11+
}
12+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"abc":{
3+
"type":"terms",
4+
"field":"abc"
5+
}
6+
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp