diff options
author | George Goldberg <george@gberg.me> | 2017-05-09 14:13:24 +0100 |
---|---|---|
committer | Joram Wilander <jwawilander@gmail.com> | 2017-05-09 08:13:24 -0500 |
commit | 622998add12734a6c2b5d79918338a4d6dca7ce6 (patch) | |
tree | 198d507eb04c5684d5b191b17ed957f02f2df6ed /vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go | |
parent | b25021b9129820147bf596b834d438ef218acf28 (diff) | |
download | chat-622998add12734a6c2b5d79918338a4d6dca7ce6.tar.gz chat-622998add12734a6c2b5d79918338a4d6dca7ce6.tar.bz2 chat-622998add12734a6c2b5d79918338a4d6dca7ce6.zip |
PLT-6398: Add dependency on go elastic search library. (#6340)
Diffstat (limited to 'vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go')
-rw-r--r-- | vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go b/vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go new file mode 100644 index 000000000..4b249a2f4 --- /dev/null +++ b/vendor/gopkg.in/olivere/elastic.v5/nodes_stats_test.go @@ -0,0 +1,138 @@ +// Copyright 2012-present Oliver Eilhard. All rights reserved. +// Use of this source code is governed by a MIT-license. +// See http://olivere.mit-license.org/license.txt for details. + +package elastic + +import ( + "context" + "testing" +) + +func TestNodesStats(t *testing.T) { + client, err := NewClient() + if err != nil { + t.Fatal(err) + } + + info, err := client.NodesStats().Human(true).Do(context.TODO()) + if err != nil { + t.Fatal(err) + } + if info == nil { + t.Fatal("expected nodes stats") + } + + if info.ClusterName == "" { + t.Errorf("expected cluster name; got: %q", info.ClusterName) + } + if len(info.Nodes) == 0 { + t.Errorf("expected some nodes; got: %d", len(info.Nodes)) + } + for id, node := range info.Nodes { + if id == "" { + t.Errorf("expected node id; got: %q", id) + } + if node == nil { + t.Fatalf("expected node info; got: %v", node) + } + if len(node.Name) == 0 { + t.Errorf("expected node name; got: %q", node.Name) + } + if node.Timestamp == 0 { + t.Errorf("expected timestamp; got: %q", node.Timestamp) + } + } +} + +func TestNodesStatsBuildURL(t *testing.T) { + tests := []struct { + NodeIds []string + Metrics []string + IndexMetrics []string + Expected string + }{ + { + NodeIds: nil, + Metrics: nil, + IndexMetrics: nil, + Expected: "/_nodes/stats", + }, + { + NodeIds: []string{"node1"}, + Metrics: nil, + IndexMetrics: nil, + Expected: "/_nodes/node1/stats", + }, + { + NodeIds: []string{"node1", "node2"}, + Metrics: nil, + IndexMetrics: nil, + Expected: "/_nodes/node1%2Cnode2/stats", + }, + { + NodeIds: nil, + Metrics: []string{"indices"}, + IndexMetrics: nil, + Expected: "/_nodes/stats/indices", + }, + { + NodeIds: nil, + Metrics: []string{"indices", "jvm"}, + IndexMetrics: nil, + Expected: "/_nodes/stats/indices%2Cjvm", + }, + { + NodeIds: []string{"node1"}, + Metrics: []string{"indices", "jvm"}, + IndexMetrics: nil, + Expected: "/_nodes/node1/stats/indices%2Cjvm", + }, + { + NodeIds: nil, + Metrics: nil, + IndexMetrics: []string{"fielddata"}, + Expected: "/_nodes/stats/_all/fielddata", + }, + { + NodeIds: []string{"node1"}, + Metrics: nil, + IndexMetrics: []string{"fielddata"}, + Expected: "/_nodes/node1/stats/_all/fielddata", + }, + { + NodeIds: nil, + Metrics: []string{"indices"}, + IndexMetrics: []string{"fielddata"}, + Expected: "/_nodes/stats/indices/fielddata", + }, + { + NodeIds: []string{"node1"}, + Metrics: []string{"indices"}, + IndexMetrics: []string{"fielddata"}, + Expected: "/_nodes/node1/stats/indices/fielddata", + }, + { + NodeIds: []string{"node1", "node2"}, + Metrics: []string{"indices", "jvm"}, + IndexMetrics: []string{"fielddata", "docs"}, + Expected: "/_nodes/node1%2Cnode2/stats/indices%2Cjvm/fielddata%2Cdocs", + }, + } + + client, err := NewClient() + if err != nil { + t.Fatal(err) + } + for i, tt := range tests { + svc := client.NodesStats().NodeId(tt.NodeIds...).Metric(tt.Metrics...).IndexMetric(tt.IndexMetrics...) + path, _, err := svc.buildURL() + if err != nil { + t.Errorf("#%d: expected no error, got %v", i, err) + } else { + if want, have := tt.Expected, path; want != have { + t.Errorf("#%d: expected %q, got %q", i, want, have) + } + } + } +} |