opentsdb-consumer 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/opentsdb-consumer/result.rb +12 -1
- data/opentsdb-consumer.gemspec +3 -3
- data/spec/opentsdb-consumer/result_spec.rb +25 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a78304f73686cf40a865ef0546337c5b11a69847
|
4
|
+
data.tar.gz: f216a7b347b229066c52ab2dd04d5a9ef272ffad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 853a0322f569c5efc7818d1a2ea2e03b6903059cce7707a0f13dad2ba6e3de41b69a23957c310f2fec7e51831b8e51b60bc42824d6a1c42731ae89579451721d
|
7
|
+
data.tar.gz: cb611732fbd5b61b6cb53cd7afa54d7feb48a5c71079baa552728a6777ff12550058857fd0b59bfb20b5bd9283a005f50f27baa804ab7d5e3cd0d8805e863298
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.4.0
|
@@ -11,12 +11,23 @@ module OpenTSDBConsumer
|
|
11
11
|
|
12
12
|
def self.build(response)
|
13
13
|
results = response.map { |h| new(h) }
|
14
|
-
results.length
|
14
|
+
case results.length
|
15
|
+
when 0
|
16
|
+
new('dps' => [])
|
17
|
+
when 1
|
18
|
+
results.first
|
19
|
+
else
|
20
|
+
results
|
21
|
+
end
|
15
22
|
end
|
16
23
|
|
17
24
|
def latest_value
|
18
25
|
datapoint = datapoints.max_by { |timestamp, _| timestamp }
|
19
26
|
datapoint.last if datapoint
|
20
27
|
end
|
28
|
+
|
29
|
+
def empty?
|
30
|
+
datapoints.nil? || datapoints.empty?
|
31
|
+
end
|
21
32
|
end
|
22
33
|
end
|
data/opentsdb-consumer.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: opentsdb-consumer 0.
|
5
|
+
# stub: opentsdb-consumer 0.4.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "opentsdb-consumer"
|
9
|
-
s.version = "0.
|
9
|
+
s.version = "0.4.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["Philippe H\u{e4}ssig"]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2016-01-13"
|
15
15
|
s.description = "Client library to consume metrics from OpenTSDB"
|
16
16
|
s.email = "phil@nine.ch"
|
17
17
|
s.executables = ["opentsdb-consumer"]
|
@@ -29,6 +29,14 @@ RSpec.describe OpenTSDBConsumer::Result do
|
|
29
29
|
expect(results.first).to be_a OpenTSDBConsumer::Result
|
30
30
|
expect(results.last).to be_a OpenTSDBConsumer::Result
|
31
31
|
end
|
32
|
+
|
33
|
+
it 'returns an empty result object when there is no data' do
|
34
|
+
response = []
|
35
|
+
result = described_class.build(response)
|
36
|
+
expect(result).to be_a OpenTSDBConsumer::Result
|
37
|
+
expect(result.datapoints).to be_an Array
|
38
|
+
expect(result.datapoints).to be_empty
|
39
|
+
end
|
32
40
|
end
|
33
41
|
|
34
42
|
describe '#latest_value' do
|
@@ -42,4 +50,21 @@ RSpec.describe OpenTSDBConsumer::Result do
|
|
42
50
|
expect(result.latest_value).to be_nil
|
43
51
|
end
|
44
52
|
end
|
53
|
+
|
54
|
+
describe '#empty?' do
|
55
|
+
it 'returns false when there is data' do
|
56
|
+
result = described_class.new 'dps' => [{}]
|
57
|
+
expect(result).to_not be_empty
|
58
|
+
end
|
59
|
+
|
60
|
+
it 'returns true when there is no data' do
|
61
|
+
result = described_class.new 'dps' => []
|
62
|
+
expect(result).to be_empty
|
63
|
+
end
|
64
|
+
|
65
|
+
it 'returns true when the datapoints are nil' do
|
66
|
+
result = described_class.new 'dps' => nil
|
67
|
+
expect(result).to be_empty
|
68
|
+
end
|
69
|
+
end
|
45
70
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentsdb-consumer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Philippe Hässig
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: excon
|