mios 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. data/.rubocop.yml +769 -0
  2. data/README.md +21 -3
  3. data/lib/mios/action.rb +25 -18
  4. data/lib/mios/category.rb +14 -0
  5. data/lib/mios/category_collection.rb +38 -0
  6. data/lib/mios/client.rb +35 -0
  7. data/lib/mios/device.rb +47 -55
  8. data/lib/mios/interface.rb +53 -37
  9. data/lib/mios/job.rb +33 -34
  10. data/lib/mios/room.rb +14 -0
  11. data/lib/mios/scene.rb +22 -0
  12. data/lib/mios/services/camera1.rb +4 -5
  13. data/lib/mios/services/dimmable_light1.rb +5 -6
  14. data/lib/mios/services/door_lock1.rb +12 -13
  15. data/lib/mios/services/energy_metering1.rb +5 -6
  16. data/lib/mios/services/generic_sensor1.rb +4 -4
  17. data/lib/mios/services/ha_device1.rb +7 -8
  18. data/lib/mios/services/humidity_sensor1.rb +4 -5
  19. data/lib/mios/services/hvac_fan_operating_mode1.rb +3 -4
  20. data/lib/mios/services/hvac_operating_state1.rb +3 -4
  21. data/lib/mios/services/hvac_user_operating_mode1.rb +3 -4
  22. data/lib/mios/services/light_sensor1.rb +4 -12
  23. data/lib/mios/services/scene_controller1.rb +4 -4
  24. data/lib/mios/services/security_sensor1.rb +11 -12
  25. data/lib/mios/services/switch_power1.rb +7 -8
  26. data/lib/mios/services/temperature_sensor1.rb +3 -4
  27. data/lib/mios/services/temperature_setpoint1_cool.rb +3 -4
  28. data/lib/mios/services/temperature_setpoint1_heat.rb +3 -4
  29. data/lib/mios/services/window_covering1.rb +5 -6
  30. data/lib/mios/services/zwave_device1.rb +3 -3
  31. data/lib/mios/services/zwave_network1.rb +3 -3
  32. data/lib/mios/type_conversion.rb +21 -0
  33. data/lib/mios/version.rb +1 -1
  34. data/lib/mios.rb +12 -6
  35. data/mios.gemspec +2 -3
  36. data/spec/integration/lights_spec.rb +17 -0
  37. data/spec/lib/mios/category_collection_spec.rb +37 -0
  38. data/spec/lib/mios/category_spec.rb +15 -0
  39. data/spec/lib/mios/client_spec.rb +28 -0
  40. data/spec/lib/mios/device_spec.rb +69 -6
  41. data/spec/lib/mios/interface_spec.rb +123 -7
  42. data/spec/lib/mios/job_spec.rb +54 -0
  43. data/spec/lib/mios/room_spec.rb +26 -0
  44. data/spec/lib/mios/scene_spec.rb +27 -0
  45. data/spec/lib/mios/services/energy_metering1_spec.rb +1 -1
  46. data/spec/lib/mios/services/hvac_fan_operating_mode1_spec.rb +1 -1
  47. data/spec/lib/mios/services/hvac_operating_state1_spec.rb +1 -1
  48. data/spec/lib/mios/services/hvac_user_operating_mode1_spec.rb +1 -1
  49. data/spec/lib/mios/services/temperature_setpoint1_cool_spec.rb +1 -1
  50. data/spec/lib/mios/services/temperature_setpoint1_heat_spec.rb +1 -1
  51. data/spec/spec_helper.rb +18 -0
  52. data/spec/support/device_data/category_filter.json +75 -0
  53. data/spec/support/device_data/data_request.json +7814 -0
  54. data/spec/support/device_data/device_attributes.json +21 -0
  55. data/spec/support/vcr_cassettes/data_request_failure.yml +28 -0
  56. data/spec/support/vcr_cassettes/run_scene.yml +28 -0
  57. data/spec/support/vcr_cassettes/turn_off_light.yml +2648 -0
  58. data/spec/support/vcr_cassettes/turn_on_light.yml +2647 -0
  59. metadata +57 -39
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mios
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 3
9
- - 0
10
- version: 0.3.0
9
+ - 1
10
+ version: 0.3.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Kelley Reynolds
@@ -15,8 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2014-03-17 00:00:00 -04:00
19
- default_executable:
18
+ date: 2014-12-24 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
21
  name: httpclient
@@ -34,26 +33,10 @@ dependencies:
34
33
  version: 2.2.0
35
34
  type: :runtime
36
35
  version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: multi_json
39
- prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 27
46
- segments:
47
- - 1
48
- - 3
49
- - 0
50
- version: 1.3.0
51
- type: :runtime
52
- version_requirements: *id002
53
36
  - !ruby/object:Gem::Dependency
54
37
  name: rspec
55
38
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
39
+ requirement: &id002 !ruby/object:Gem::Requirement
57
40
  none: false
58
41
  requirements:
59
42
  - - ">="
@@ -65,11 +48,11 @@ dependencies:
65
48
  - 0
66
49
  version: 2.8.0
67
50
  type: :development
68
- version_requirements: *id003
51
+ version_requirements: *id002
69
52
  - !ruby/object:Gem::Dependency
70
53
  name: syntax
71
54
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
55
+ requirement: &id003 !ruby/object:Gem::Requirement
73
56
  none: false
74
57
  requirements:
75
58
  - - ">="
@@ -79,11 +62,11 @@ dependencies:
79
62
  - 0
80
63
  version: "0"
81
64
  type: :development
82
- version_requirements: *id004
65
+ version_requirements: *id003
83
66
  - !ruby/object:Gem::Dependency
84
67
  name: rake
85
68
  prerelease: false
86
- requirement: &id005 !ruby/object:Gem::Requirement
69
+ requirement: &id004 !ruby/object:Gem::Requirement
87
70
  none: false
88
71
  requirements:
89
72
  - - ">="
@@ -95,11 +78,11 @@ dependencies:
95
78
  - 2
96
79
  version: 0.9.2
97
80
  type: :development
98
- version_requirements: *id005
81
+ version_requirements: *id004
99
82
  - !ruby/object:Gem::Dependency
100
83
  name: yard
101
84
  prerelease: false
102
- requirement: &id006 !ruby/object:Gem::Requirement
85
+ requirement: &id005 !ruby/object:Gem::Requirement
103
86
  none: false
104
87
  requirements:
105
88
  - - ">="
@@ -111,11 +94,11 @@ dependencies:
111
94
  - 2
112
95
  version: 0.7.2
113
96
  type: :development
114
- version_requirements: *id006
97
+ version_requirements: *id005
115
98
  - !ruby/object:Gem::Dependency
116
99
  name: pry
117
100
  prerelease: false
118
- requirement: &id007 !ruby/object:Gem::Requirement
101
+ requirement: &id006 !ruby/object:Gem::Requirement
119
102
  none: false
120
103
  requirements:
121
104
  - - ">="
@@ -125,11 +108,11 @@ dependencies:
125
108
  - 0
126
109
  version: "0"
127
110
  type: :development
128
- version_requirements: *id007
111
+ version_requirements: *id006
129
112
  - !ruby/object:Gem::Dependency
130
113
  name: vcr
131
114
  prerelease: false
132
- requirement: &id008 !ruby/object:Gem::Requirement
115
+ requirement: &id007 !ruby/object:Gem::Requirement
133
116
  none: false
134
117
  requirements:
135
118
  - - ">="
@@ -139,11 +122,11 @@ dependencies:
139
122
  - 0
140
123
  version: "0"
141
124
  type: :development
142
- version_requirements: *id008
125
+ version_requirements: *id007
143
126
  - !ruby/object:Gem::Dependency
144
127
  name: webmock
145
128
  prerelease: false
146
- requirement: &id009 !ruby/object:Gem::Requirement
129
+ requirement: &id008 !ruby/object:Gem::Requirement
147
130
  none: false
148
131
  requirements:
149
132
  - - ">="
@@ -153,11 +136,11 @@ dependencies:
153
136
  - 0
154
137
  version: "0"
155
138
  type: :development
156
- version_requirements: *id009
139
+ version_requirements: *id008
157
140
  - !ruby/object:Gem::Dependency
158
141
  name: simplecov
159
142
  prerelease: false
160
- requirement: &id010 !ruby/object:Gem::Requirement
143
+ requirement: &id009 !ruby/object:Gem::Requirement
161
144
  none: false
162
145
  requirements:
163
146
  - - ">="
@@ -167,7 +150,7 @@ dependencies:
167
150
  - 0
168
151
  version: "0"
169
152
  type: :development
170
- version_requirements: *id010
153
+ version_requirements: *id009
171
154
  description: Object-oriented interactions with MiOS from MiCasaVerde
172
155
  email:
173
156
  - kelley.reynolds@rubyscale.com
@@ -179,15 +162,21 @@ extra_rdoc_files: []
179
162
 
180
163
  files:
181
164
  - .gitignore
165
+ - .rubocop.yml
182
166
  - Gemfile
183
167
  - LICENSE.txt
184
168
  - README.md
185
169
  - Rakefile
186
170
  - lib/mios.rb
187
171
  - lib/mios/action.rb
172
+ - lib/mios/category.rb
173
+ - lib/mios/category_collection.rb
174
+ - lib/mios/client.rb
188
175
  - lib/mios/device.rb
189
176
  - lib/mios/interface.rb
190
177
  - lib/mios/job.rb
178
+ - lib/mios/room.rb
179
+ - lib/mios/scene.rb
191
180
  - lib/mios/services/camera1.rb
192
181
  - lib/mios/services/dimmable_light1.rb
193
182
  - lib/mios/services/door_lock1.rb
@@ -208,10 +197,18 @@ files:
208
197
  - lib/mios/services/window_covering1.rb
209
198
  - lib/mios/services/zwave_device1.rb
210
199
  - lib/mios/services/zwave_network1.rb
200
+ - lib/mios/type_conversion.rb
211
201
  - lib/mios/version.rb
212
202
  - mios.gemspec
203
+ - spec/integration/lights_spec.rb
204
+ - spec/lib/mios/category_collection_spec.rb
205
+ - spec/lib/mios/category_spec.rb
206
+ - spec/lib/mios/client_spec.rb
213
207
  - spec/lib/mios/device_spec.rb
214
208
  - spec/lib/mios/interface_spec.rb
209
+ - spec/lib/mios/job_spec.rb
210
+ - spec/lib/mios/room_spec.rb
211
+ - spec/lib/mios/scene_spec.rb
215
212
  - spec/lib/mios/services/energy_metering1_spec.rb
216
213
  - spec/lib/mios/services/hvac_fan_operating_mode1_spec.rb
217
214
  - spec/lib/mios/services/hvac_operating_state1_spec.rb
@@ -219,11 +216,17 @@ files:
219
216
  - spec/lib/mios/services/temperature_setpoint1_cool_spec.rb
220
217
  - spec/lib/mios/services/temperature_setpoint1_heat_spec.rb
221
218
  - spec/spec_helper.rb
219
+ - spec/support/device_data/category_filter.json
220
+ - spec/support/device_data/data_request.json
221
+ - spec/support/device_data/device_attributes.json
222
222
  - spec/support/device_data/echo-energy-manager.json
223
223
  - spec/support/device_data/power-meter.json
224
224
  - spec/support/device_data/thermostat.json
225
225
  - spec/support/vcr_cassettes/data_request.yml
226
- has_rdoc: true
226
+ - spec/support/vcr_cassettes/data_request_failure.yml
227
+ - spec/support/vcr_cassettes/run_scene.yml
228
+ - spec/support/vcr_cassettes/turn_off_light.yml
229
+ - spec/support/vcr_cassettes/turn_on_light.yml
227
230
  homepage: ""
228
231
  licenses: []
229
232
 
@@ -253,13 +256,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
253
256
  requirements: []
254
257
 
255
258
  rubyforge_project:
256
- rubygems_version: 1.6.2
259
+ rubygems_version: 1.8.15
257
260
  signing_key:
258
261
  specification_version: 3
259
262
  summary: Object-oriented interactions with MiOS from MiCasaVerde
260
263
  test_files:
264
+ - spec/integration/lights_spec.rb
265
+ - spec/lib/mios/category_collection_spec.rb
266
+ - spec/lib/mios/category_spec.rb
267
+ - spec/lib/mios/client_spec.rb
261
268
  - spec/lib/mios/device_spec.rb
262
269
  - spec/lib/mios/interface_spec.rb
270
+ - spec/lib/mios/job_spec.rb
271
+ - spec/lib/mios/room_spec.rb
272
+ - spec/lib/mios/scene_spec.rb
263
273
  - spec/lib/mios/services/energy_metering1_spec.rb
264
274
  - spec/lib/mios/services/hvac_fan_operating_mode1_spec.rb
265
275
  - spec/lib/mios/services/hvac_operating_state1_spec.rb
@@ -267,7 +277,15 @@ test_files:
267
277
  - spec/lib/mios/services/temperature_setpoint1_cool_spec.rb
268
278
  - spec/lib/mios/services/temperature_setpoint1_heat_spec.rb
269
279
  - spec/spec_helper.rb
280
+ - spec/support/device_data/category_filter.json
281
+ - spec/support/device_data/data_request.json
282
+ - spec/support/device_data/device_attributes.json
270
283
  - spec/support/device_data/echo-energy-manager.json
271
284
  - spec/support/device_data/power-meter.json
272
285
  - spec/support/device_data/thermostat.json
273
286
  - spec/support/vcr_cassettes/data_request.yml
287
+ - spec/support/vcr_cassettes/data_request_failure.yml
288
+ - spec/support/vcr_cassettes/run_scene.yml
289
+ - spec/support/vcr_cassettes/turn_off_light.yml
290
+ - spec/support/vcr_cassettes/turn_on_light.yml
291
+ has_rdoc: