influxdb 0.3.10 → 0.3.11
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/.travis.yml +1 -1
- data/CHANGELOG.md +5 -0
- data/lib/influxdb/point_value.rb +7 -1
- data/lib/influxdb/version.rb +1 -1
- data/smoke/noaa-sample-data.rb +24 -6
- data/spec/influxdb/point_value_spec.rb +10 -3
- 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: 517db1c21a2efdd7d7c7e5e94ae64cca4eb3a5c3
|
4
|
+
data.tar.gz: dd2672cc951a3a920375902e65e9b15252d01c8d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: febf1da8976eb80dd67dc0e85c671e1e1f650c7fdc74da7894ca2b6df9e434c63ed5fc700efc7c105899a9c8146c4ad8e61f902da73298588cb3b1f38d01c279
|
7
|
+
data.tar.gz: 4d735fb568163110e21c1a8cc0300658948a99489391fe41476e6308fabf16de027211ae149912328bbbd126b5823e98042ac8418f4c97e6280ce3a8b1db211a
|
data/.travis.yml
CHANGED
@@ -38,7 +38,7 @@ matrix:
|
|
38
38
|
- rvm: 2.3.1
|
39
39
|
env: TEST_TASK=smoke influx_version=0.13.0 pkghash=4f0aa76fee22cf4c18e2a0779ba4f462
|
40
40
|
- rvm: 2.3.1
|
41
|
-
env: TEST_TASK=smoke influx_version=1.0.
|
41
|
+
env: TEST_TASK=smoke influx_version=1.0.2 pkghash=3e4c349cb57507913d9abda1459bdbed
|
42
42
|
- rvm: 2.3.1
|
43
43
|
env: TEST_TASK=smoke influx_version=nightly channel=nightlies
|
44
44
|
fail_fast: true
|
data/CHANGELOG.md
CHANGED
@@ -6,6 +6,11 @@ For the full commit log, [see here](https://github.com/influxdata/influxdb-ruby/
|
|
6
6
|
|
7
7
|
- None.
|
8
8
|
|
9
|
+
## v0.3.11, released 2016-10-12
|
10
|
+
|
11
|
+
- Bugfix/Enhancement in `PointValue#escape`. Input strings are now scrubbed
|
12
|
+
of invalid UTF byte sequences (#169, @ton31337).
|
13
|
+
|
9
14
|
## v0.3.10, released 2016-10-03
|
10
15
|
|
11
16
|
- Bugfix in `Query::Builder#quote` (#168, @cthulhu666).
|
data/lib/influxdb/point_value.rb
CHANGED
@@ -30,8 +30,14 @@ module InfluxDB
|
|
30
30
|
}.freeze
|
31
31
|
|
32
32
|
def escape(s, type)
|
33
|
+
# rubocop:disable Style/AlignParameters
|
34
|
+
s = s.encode "UTF-8".freeze, "binary".freeze,
|
35
|
+
invalid: :replace,
|
36
|
+
undef: :replace,
|
37
|
+
replace: "".freeze
|
38
|
+
|
33
39
|
ESCAPES[type].each do |ch|
|
34
|
-
s = s.gsub(ch) { "\\#{ch}" }
|
40
|
+
s = s.encode.gsub(ch) { "\\#{ch}" }
|
35
41
|
end
|
36
42
|
s
|
37
43
|
end
|
data/lib/influxdb/version.rb
CHANGED
data/smoke/noaa-sample-data.rb
CHANGED
@@ -12,11 +12,19 @@ client = InfluxDB::Client.new \
|
|
12
12
|
password: "resu_tset",
|
13
13
|
retry: 4
|
14
14
|
|
15
|
+
TestFailure = Class.new StandardError
|
16
|
+
TestAllowedFailure = Class.new StandardError
|
17
|
+
|
15
18
|
def test_case(name)
|
16
19
|
print name
|
17
20
|
yield
|
18
21
|
puts " [ OK ]"
|
19
|
-
|
22
|
+
|
23
|
+
rescue TestAllowedFailure
|
24
|
+
puts " [WARN]"
|
25
|
+
puts $!.message
|
26
|
+
|
27
|
+
rescue TestFailure
|
20
28
|
puts " [FAIL]"
|
21
29
|
puts $!.message
|
22
30
|
exit 1
|
@@ -27,21 +35,27 @@ test_case "See all five measurements?" do
|
|
27
35
|
expected = %w[ average_temperature h2o_feet h2o_pH h2o_quality h2o_temperature ]
|
28
36
|
actual = result[0]["values"].map{|v| v["name"] }
|
29
37
|
unexpected = actual - expected
|
30
|
-
|
38
|
+
if unexpected.any?
|
39
|
+
raise TestFailure, "unexpected measurements: #{unexpected.join(", ")}"
|
40
|
+
end
|
31
41
|
end
|
32
42
|
|
33
43
|
test_case "Count the number of non-null values of water_level in h2o_feet" do
|
34
44
|
result = client.query "select count(water_level) from h2o_feet"
|
35
45
|
expected = 15258
|
36
46
|
actual = result[0]["values"][0]["count"]
|
37
|
-
|
47
|
+
if expected != actual
|
48
|
+
raise TestFailure, "expected to find #{expected} points, got #{actual}"
|
49
|
+
end
|
38
50
|
end
|
39
51
|
|
40
52
|
test_case "Select the first five observations in the measurement h2o_feet" do
|
41
53
|
result = client.query("select * from h2o_feet limit 5").first["values"]
|
42
54
|
expected = 5
|
43
55
|
actual = result.size
|
44
|
-
|
56
|
+
if expected != actual
|
57
|
+
raise TestFailure, "expected #{expected} observations, got #{actual}"
|
58
|
+
end
|
45
59
|
|
46
60
|
expected = {
|
47
61
|
"time" => "2015-08-18T00:00:00Z",
|
@@ -49,7 +63,9 @@ test_case "Select the first five observations in the measurement h2o_feet" do
|
|
49
63
|
"location" => "coyote_creek",
|
50
64
|
"water_level" => 8.12
|
51
65
|
}
|
52
|
-
|
66
|
+
if expected != result[0]
|
67
|
+
raise TestAllowedFailure, "unexpected first result, got #{result[0]}"
|
68
|
+
end
|
53
69
|
|
54
70
|
expected = {
|
55
71
|
"time" => "2015-08-18T00:12:00Z",
|
@@ -57,5 +73,7 @@ test_case "Select the first five observations in the measurement h2o_feet" do
|
|
57
73
|
"location" => "coyote_creek",
|
58
74
|
"water_level" => 7.887
|
59
75
|
}
|
60
|
-
|
76
|
+
if expected != result[-1]
|
77
|
+
raise TestAllowedFailure, "unexpected last result, got #{result[-1]}"
|
78
|
+
end
|
61
79
|
end
|
@@ -5,15 +5,22 @@ describe InfluxDB::PointValue do
|
|
5
5
|
let(:data) do
|
6
6
|
{
|
7
7
|
series: '1= ,"\\1',
|
8
|
-
tags: {
|
9
|
-
|
8
|
+
tags: {
|
9
|
+
'2= ,"\\2' => '3= ,"\\3'
|
10
|
+
},
|
11
|
+
values: {
|
12
|
+
'4= ,"\\4' => '5= ,"\\5',
|
13
|
+
intval: 5,
|
14
|
+
floatval: 7.0,
|
15
|
+
encoding: "a\255 b"
|
16
|
+
}
|
10
17
|
}
|
11
18
|
end
|
12
19
|
|
13
20
|
it 'should escape correctly' do
|
14
21
|
point = InfluxDB::PointValue.new(data)
|
15
22
|
expected = %(1=\\ \\,"\\1,2\\=\\ \\,"\\2=3\\=\\ \\,"\\3 ) +
|
16
|
-
%(4\\=\\ \\,\\"\\4="5= ,\\"\\5",intval=5i,floatval=7.0)
|
23
|
+
%(4\\=\\ \\,\\"\\4="5= ,\\"\\5",intval=5i,floatval=7.0,encoding="a b")
|
17
24
|
expect(point.dump).to eq(expected)
|
18
25
|
end
|
19
26
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: influxdb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Todd Persen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-10-
|
11
|
+
date: 2016-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: json
|