summaryrefslogtreecommitdiffstats
path: root/vendor/gopkg.in/olivere/elastic.v5/sort_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gopkg.in/olivere/elastic.v5/sort_test.go')
-rw-r--r--vendor/gopkg.in/olivere/elastic.v5/sort_test.go52
1 files changed, 46 insertions, 6 deletions
diff --git a/vendor/gopkg.in/olivere/elastic.v5/sort_test.go b/vendor/gopkg.in/olivere/elastic.v5/sort_test.go
index 54e6e1e5b..b54cbd98c 100644
--- a/vendor/gopkg.in/olivere/elastic.v5/sort_test.go
+++ b/vendor/gopkg.in/olivere/elastic.v5/sort_test.go
@@ -166,7 +166,7 @@ func TestGeoDistanceSort(t *testing.T) {
Order(true).
Unit("km").
SortMode("min").
- GeoDistance("sloppy_arc")
+ GeoDistance("plane")
src, err := builder.Source()
if err != nil {
t.Fatal(err)
@@ -176,7 +176,7 @@ func TestGeoDistanceSort(t *testing.T) {
t.Fatalf("marshaling to JSON failed: %v", err)
}
got := string(data)
- expected := `{"_geo_distance":{"distance_type":"sloppy_arc","mode":"min","order":"asc","pin.location":[{"lat":-70,"lon":40}],"unit":"km"}}`
+ expected := `{"_geo_distance":{"distance_type":"plane","mode":"min","order":"asc","pin.location":[{"lat":-70,"lon":40}],"unit":"km"}}`
if got != expected {
t.Errorf("expected\n%s\n,got:\n%s", expected, got)
}
@@ -187,7 +187,7 @@ func TestGeoDistanceSortOrderDesc(t *testing.T) {
Point(-70, 40).
Unit("km").
SortMode("min").
- GeoDistance("sloppy_arc").
+ GeoDistance("arc").
Desc()
src, err := builder.Source()
if err != nil {
@@ -198,7 +198,7 @@ func TestGeoDistanceSortOrderDesc(t *testing.T) {
t.Fatalf("marshaling to JSON failed: %v", err)
}
got := string(data)
- expected := `{"_geo_distance":{"distance_type":"sloppy_arc","mode":"min","order":"desc","pin.location":[{"lat":-70,"lon":40}],"unit":"km"}}`
+ expected := `{"_geo_distance":{"distance_type":"arc","mode":"min","order":"desc","pin.location":[{"lat":-70,"lon":40}],"unit":"km"}}`
if got != expected {
t.Errorf("expected\n%s\n,got:\n%s", expected, got)
}
@@ -214,7 +214,7 @@ func TestScriptSort(t *testing.T) {
t.Fatalf("marshaling to JSON failed: %v", err)
}
got := string(data)
- expected := `{"_script":{"order":"asc","script":{"inline":"doc['field_name'].value * factor","params":{"factor":1.1}},"type":"number"}}`
+ expected := `{"_script":{"order":"asc","script":{"params":{"factor":1.1},"source":"doc['field_name'].value * factor"},"type":"number"}}`
if got != expected {
t.Errorf("expected\n%s\n,got:\n%s", expected, got)
}
@@ -231,7 +231,47 @@ func TestScriptSortOrderDesc(t *testing.T) {
t.Fatalf("marshaling to JSON failed: %v", err)
}
got := string(data)
- expected := `{"_script":{"order":"desc","script":{"inline":"doc['field_name'].value * factor","params":{"factor":1.1}},"type":"number"}}`
+ expected := `{"_script":{"order":"desc","script":{"params":{"factor":1.1},"source":"doc['field_name'].value * factor"},"type":"number"}}`
+ if got != expected {
+ t.Errorf("expected\n%s\n,got:\n%s", expected, got)
+ }
+}
+
+func TestNestedSort(t *testing.T) {
+ builder := NewNestedSort("offer").
+ Filter(NewTermQuery("offer.color", "blue"))
+ src, err := builder.Source()
+ if err != nil {
+ t.Fatal(err)
+ }
+ data, err := json.Marshal(src)
+ if err != nil {
+ t.Fatalf("marshaling to JSON failed: %v", err)
+ }
+ got := string(data)
+ expected := `{"filter":{"term":{"offer.color":"blue"}},"path":"offer"}`
+ if got != expected {
+ t.Errorf("expected\n%s\n,got:\n%s", expected, got)
+ }
+}
+
+func TestFieldSortWithNestedSort(t *testing.T) {
+ builder := NewFieldSort("offer.price").
+ Asc().
+ SortMode("avg").
+ NestedSort(
+ NewNestedSort("offer").Filter(NewTermQuery("offer.color", "blue")),
+ )
+ src, err := builder.Source()
+ if err != nil {
+ t.Fatal(err)
+ }
+ data, err := json.Marshal(src)
+ if err != nil {
+ t.Fatalf("marshaling to JSON failed: %v", err)
+ }
+ got := string(data)
+ expected := `{"offer.price":{"mode":"avg","nested":{"filter":{"term":{"offer.color":"blue"}},"path":"offer"},"order":"asc"}}`
if got != expected {
t.Errorf("expected\n%s\n,got:\n%s", expected, got)
}