device-cloud 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3855df4eeda8cab3048b1cf7e18ce44ccf4e8f9f
4
+ data.tar.gz: e40ab35697fd8e7ce953c9c4055cc22447f07c4d
5
+ SHA512:
6
+ metadata.gz: cbb0d17165578de330f3c652fe8619fabdcbea3b19ebb7e0a52dbf562977c088e6b709da7d5269365edb7dba7e16553e86777b7cfd1d4ef9e2f123d49ef65dd8
7
+ data.tar.gz: f2f917014a7fbca8bcf63b21e12583e591c147ed99535d2e33869faba5f65639792701c4d5fd389c6ec3149f19a1464576d7d752abf7dc691380d0dc29c37432
data/device-cloud.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["eric@clean-logix.com"]
11
11
  spec.description = %q{REST Wrapper for Etherios Devicecloud}
12
12
  spec.summary = %q{REST Wrapper for Etherios Devicecloud}
13
- spec.homepage = ""
13
+ spec.homepage = "https://github.com/nelseric/device_cloud"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
@@ -18,21 +18,20 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "nokogiri"
22
- spec.add_dependency "rest-client"
21
+ spec.add_dependency "nokogiri", "~> 1.6"
22
+ spec.add_dependency "rest-client", "~> 1.6"
23
23
 
24
- spec.add_development_dependency "bundler", "~> 1.3"
25
- spec.add_development_dependency "rake"
26
- spec.add_development_dependency "rspec"
27
- spec.add_development_dependency "webmock"
28
- spec.add_development_dependency "pry"
29
- spec.add_development_dependency "debugger"
30
- spec.add_development_dependency "guard"
31
- spec.add_development_dependency "guard-rspec"
32
- spec.add_development_dependency "guard-bundler"
33
- spec.add_development_dependency "libnotify"
34
- spec.add_development_dependency "coveralls"
35
- spec.add_development_dependency "timecop"
24
+ spec.add_development_dependency "bundler", "~> 1.6"
25
+ spec.add_development_dependency "rake", "~> 10.3"
26
+ spec.add_development_dependency "rspec", "~> 3.0"
27
+ spec.add_development_dependency "webmock", "~> 1.18"
28
+ spec.add_development_dependency "pry", "~> 0.10"
29
+ spec.add_development_dependency "debugger", "~> 1.6"
30
+ spec.add_development_dependency "guard", "~> 2.6"
31
+ spec.add_development_dependency "guard-rspec", "~> 4.2"
32
+ spec.add_development_dependency "guard-bundler", "~> 2.0"
33
+ spec.add_development_dependency "coveralls", "~> 0.7"
34
+ spec.add_development_dependency "timecop", "~> 0.7"
36
35
 
37
36
 
38
37
  end
@@ -9,13 +9,14 @@ module DeviceCloud
9
9
  end
10
10
  end
11
11
 
12
- attr_accessor :element, :id, :value, :timestamp, :stream_id
12
+ attr_accessor :element, :id, :value, :timestamp, :stream_id, :server_timestamp
13
13
 
14
14
  def initialize(element)
15
15
  @id = element.xpath("id").text
16
16
  @value = element.xpath("data").text
17
17
  @timestamp = Time.at(element.xpath("timestamp").text.to_f / 1000)
18
+ @server_timestamp = Time.at(element.xpath("serverTimestamp").text.to_f / 1000)
18
19
  @stream_id = element.xpath("streamId").text
19
20
  end
20
21
  end
21
- end
22
+ end
@@ -1,3 +1,3 @@
1
1
  module DeviceCloud
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
@@ -11,18 +11,18 @@ describe DeviceCloud::Client do
11
11
 
12
12
 
13
13
  it 'will generate a base_url using the configuration' do
14
- client.base_url.should == "#{protocol}://#{username}:#{password}@#{host}"
14
+ expect(client.base_url).to eql "#{protocol}://#{username}:#{password}@#{host}"
15
15
  client.config.protocol = "http"
16
- client.base_url.should == "http://#{username}:#{password}@#{host}"
16
+ expect(client.base_url).to eql "http://#{username}:#{password}@#{host}"
17
17
  client.config.host = "google.com"
18
- client.base_url.should == "http://#{username}:#{password}@google.com"
18
+ expect(client.base_url).to eql "http://#{username}:#{password}@google.com"
19
19
  end
20
20
 
21
21
  describe "#devices" do
22
22
  let(:result) { "Device Core XML" }
23
23
  before :each do
24
- client.stub(:get => result)
25
- DeviceCloud::DeviceCore.stub(:parse)
24
+ allow(client).to receive(:get).and_return(result)
25
+ allow(DeviceCloud::DeviceCore).to receive(:parse)
26
26
  end
27
27
 
28
28
  context "No parameters" do
@@ -2,7 +2,7 @@ require "spec_helper"
2
2
 
3
3
  describe DeviceCloud::Config do
4
4
 
5
- subject do
5
+ subject(:config) do
6
6
  DeviceCloud::Config.new(:username => username, :password => password, :host => host, :protocol => protocol)
7
7
  end
8
8
  let(:username) { "testl-user" }
@@ -11,17 +11,18 @@ describe DeviceCloud::Config do
11
11
  let(:protocol) { "https" }
12
12
 
13
13
  it "sets provided values" do
14
- subject.host.should == host
15
- subject.protocol.should == protocol
16
- subject.username.should == username
17
- subject.password.should == password
14
+ expect(config.host).to eql host
15
+ expect(config.protocol).to eql protocol
16
+ expect(config.username).to eql username
17
+ expect(config.password).to eql password
18
18
  end
19
-
20
- it "has default values" do
21
- config = DeviceCloud::Config.new({})
22
- config.host.should == "login.etherios.com"
23
- config.protocol.should == "https"
24
- config.username.should == ""
25
- config.password.should == ""
19
+ context "No options are provided" do
20
+ subject(:config) { DeviceCloud::Config.new({}) }
21
+ it "has default values" do
22
+ expect(config.host).to eql "login.etherios.com"
23
+ expect(config.protocol).to eql "https"
24
+ expect(config.username).to eql ""
25
+ expect(config.password).to eql ""
26
+ end
26
27
  end
27
- end
28
+ end
@@ -66,7 +66,13 @@ describe DeviceCloud::DataPoint do
66
66
 
67
67
  describe "#timestamp" do
68
68
  it "returns the timestamp of the data point" do
69
- expect(Time.at(data_point.timestamp.to_i)).to eql Time.parse("2013-11-20T13:8:52-05:00")
69
+ expect(data_point.timestamp).to eql Time.at 1384970932.009
70
+ end
71
+ end
72
+
73
+ describe "#server_timestamp" do
74
+ it "returns the timestamp of the data point" do
75
+ expect(data_point.server_timestamp).to eql Time.at 1384970934.108
70
76
  end
71
77
  end
72
78
 
@@ -76,4 +82,4 @@ describe DeviceCloud::DataPoint do
76
82
  end
77
83
  end
78
84
 
79
- end
85
+ end
@@ -242,7 +242,7 @@ describe DeviceCloud::DataStreamClient do
242
242
  describe "#cache" do
243
243
  let(:stream) { double("DeviceCloud::DataStream") }
244
244
  before :each do
245
- DeviceCloud::DataStream.stub(:parse => [stream])
245
+ allow(DeviceCloud::DataStream).to receive(:parse).and_return [stream]
246
246
  Timecop.freeze
247
247
  end
248
248
 
@@ -263,7 +263,8 @@ describe DeviceCloud::DataStreamClient do
263
263
 
264
264
  context "The cache is valid" do
265
265
  before :each do
266
- data_stream_client.stub(:valid? => true, :parsed_cache => [stream])
266
+ allow(data_stream_client).to receive(:valid?).and_return true
267
+ allow(data_stream_client).to receive(:parsed_cache).and_return [stream]
267
268
  end
268
269
 
269
270
  it "will only return the current cache value" do
@@ -14,9 +14,9 @@ describe DeviceCloud::Monitor do
14
14
  describe "#build" do
15
15
  let(:document) { monitor.build.doc }
16
16
  it 'it will have the correct topic' do
17
- document.xpath("//Monitor/monTopic").text.should == topic
17
+ expect(document.xpath("//Monitor/monTopic").text).to eql topic
18
18
  monitor.topic = "DeviceCore,DataStream"
19
- document.xpath("//Monitor/monTopic").text.should == topic
19
+ expect(document.xpath("//Monitor/monTopic").text).to eql topic
20
20
  end
21
21
  end
22
22
 
@@ -25,9 +25,9 @@ describe DeviceCloud::Monitor do
25
25
  before do
26
26
  api_stub
27
27
  end
28
- it "should POSTed to $base/ws/Monitor" do
28
+ it "will POST to $base/ws/Monitor" do
29
29
  monitor.save(client)
30
- a_request(:post, client.base_url + "/ws/Monitor").should have_been_made
30
+ expect(a_request(:post, client.base_url + "/ws/Monitor")).to have_been_made
31
31
  end
32
32
  end
33
33
 
@@ -35,9 +35,9 @@ describe DeviceCloud::Monitor do
35
35
  before do
36
36
  api_stub
37
37
  end
38
- it "should get on the root of monitor" do
38
+ it "gets on the root of monitor" do
39
39
  DeviceCloud::Monitor.all(client)
40
- a_request(:get, client.base_url + "/ws/Monitor").should have_been_made
40
+ expect(a_request(:get, client.base_url + "/ws/Monitor")).to have_been_made
41
41
  end
42
42
  end
43
- end
43
+ end
data/spec/spec_helper.rb CHANGED
@@ -10,4 +10,5 @@ require 'webmock/rspec'
10
10
 
11
11
  RSpec.configure do |config|
12
12
  config.include WebMock::API
13
+ config.raise_errors_for_deprecations!
13
14
  end
metadata CHANGED
@@ -1,240 +1,197 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: device-cloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
5
- prerelease:
4
+ version: 0.3.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Eric Nelson
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-02-07 00:00:00.000000000 Z
11
+ date: 2014-06-20 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: nokogiri
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: '1.6'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0'
26
+ version: '1.6'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rest-client
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
- version: '0'
33
+ version: '1.6'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
- version: '0'
40
+ version: '1.6'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '1.3'
47
+ version: '1.6'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: '1.3'
54
+ version: '1.6'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: '0'
61
+ version: '10.3'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: '0'
68
+ version: '10.3'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - "~>"
84
74
  - !ruby/object:Gem::Version
85
- version: '0'
75
+ version: '3.0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - "~>"
92
81
  - !ruby/object:Gem::Version
93
- version: '0'
82
+ version: '3.0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: webmock
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - "~>"
100
88
  - !ruby/object:Gem::Version
101
- version: '0'
89
+ version: '1.18'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - "~>"
108
95
  - !ruby/object:Gem::Version
109
- version: '0'
96
+ version: '1.18'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: pry
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: '0'
103
+ version: '0.10'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - "~>"
124
109
  - !ruby/object:Gem::Version
125
- version: '0'
110
+ version: '0.10'
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: debugger
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - "~>"
132
116
  - !ruby/object:Gem::Version
133
- version: '0'
117
+ version: '1.6'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - "~>"
140
123
  - !ruby/object:Gem::Version
141
- version: '0'
124
+ version: '1.6'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: guard
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ! '>='
129
+ - - "~>"
148
130
  - !ruby/object:Gem::Version
149
- version: '0'
131
+ version: '2.6'
150
132
  type: :development
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ! '>='
136
+ - - "~>"
156
137
  - !ruby/object:Gem::Version
157
- version: '0'
138
+ version: '2.6'
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: guard-rspec
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
- - - ! '>='
143
+ - - "~>"
164
144
  - !ruby/object:Gem::Version
165
- version: '0'
145
+ version: '4.2'
166
146
  type: :development
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
- - - ! '>='
150
+ - - "~>"
172
151
  - !ruby/object:Gem::Version
173
- version: '0'
152
+ version: '4.2'
174
153
  - !ruby/object:Gem::Dependency
175
154
  name: guard-bundler
176
155
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
156
  requirements:
179
- - - ! '>='
157
+ - - "~>"
180
158
  - !ruby/object:Gem::Version
181
- version: '0'
159
+ version: '2.0'
182
160
  type: :development
183
161
  prerelease: false
184
162
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
163
  requirements:
187
- - - ! '>='
164
+ - - "~>"
188
165
  - !ruby/object:Gem::Version
189
- version: '0'
190
- - !ruby/object:Gem::Dependency
191
- name: libnotify
192
- requirement: !ruby/object:Gem::Requirement
193
- none: false
194
- requirements:
195
- - - ! '>='
196
- - !ruby/object:Gem::Version
197
- version: '0'
198
- type: :development
199
- prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
- requirements:
203
- - - ! '>='
204
- - !ruby/object:Gem::Version
205
- version: '0'
166
+ version: '2.0'
206
167
  - !ruby/object:Gem::Dependency
207
168
  name: coveralls
208
169
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
170
  requirements:
211
- - - ! '>='
171
+ - - "~>"
212
172
  - !ruby/object:Gem::Version
213
- version: '0'
173
+ version: '0.7'
214
174
  type: :development
215
175
  prerelease: false
216
176
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
177
  requirements:
219
- - - ! '>='
178
+ - - "~>"
220
179
  - !ruby/object:Gem::Version
221
- version: '0'
180
+ version: '0.7'
222
181
  - !ruby/object:Gem::Dependency
223
182
  name: timecop
224
183
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
184
  requirements:
227
- - - ! '>='
185
+ - - "~>"
228
186
  - !ruby/object:Gem::Version
229
- version: '0'
187
+ version: '0.7'
230
188
  type: :development
231
189
  prerelease: false
232
190
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
191
  requirements:
235
- - - ! '>='
192
+ - - "~>"
236
193
  - !ruby/object:Gem::Version
237
- version: '0'
194
+ version: '0.7'
238
195
  description: REST Wrapper for Etherios Devicecloud
239
196
  email:
240
197
  - eric@clean-logix.com
@@ -242,8 +199,8 @@ executables: []
242
199
  extensions: []
243
200
  extra_rdoc_files: []
244
201
  files:
245
- - .gitignore
246
- - .travis.yml
202
+ - ".gitignore"
203
+ - ".travis.yml"
247
204
  - Gemfile
248
205
  - Guardfile
249
206
  - LICENSE.txt
@@ -269,30 +226,29 @@ files:
269
226
  - spec/device_cloud/monitor_spec.rb
270
227
  - spec/device_cloud/result_spec.rb
271
228
  - spec/spec_helper.rb
272
- homepage: ''
229
+ homepage: https://github.com/nelseric/device_cloud
273
230
  licenses:
274
231
  - MIT
232
+ metadata: {}
275
233
  post_install_message:
276
234
  rdoc_options: []
277
235
  require_paths:
278
236
  - lib
279
237
  required_ruby_version: !ruby/object:Gem::Requirement
280
- none: false
281
238
  requirements:
282
- - - ! '>='
239
+ - - ">="
283
240
  - !ruby/object:Gem::Version
284
241
  version: '0'
285
242
  required_rubygems_version: !ruby/object:Gem::Requirement
286
- none: false
287
243
  requirements:
288
- - - ! '>='
244
+ - - ">="
289
245
  - !ruby/object:Gem::Version
290
246
  version: '0'
291
247
  requirements: []
292
248
  rubyforge_project:
293
- rubygems_version: 1.8.23
249
+ rubygems_version: 2.2.2
294
250
  signing_key:
295
- specification_version: 3
251
+ specification_version: 4
296
252
  summary: REST Wrapper for Etherios Devicecloud
297
253
  test_files:
298
254
  - spec/device_cloud/client_spec.rb