phidgets 0.1.3 → 1.0.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.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/History.txt +3 -0
  3. data/README.rdoc +32 -43
  4. data/Rakefile +4 -2
  5. data/bin/phidget +18 -72
  6. data/ext/phidgets/extconf.rb +5 -8
  7. data/ext/phidgets/phidgets.c +708 -173
  8. data/ext/phidgets/phidgets.h +54 -35
  9. data/ext/phidgets/phidgets_accelerometer.c +193 -109
  10. data/ext/phidgets/phidgets_bldc_motor.c +529 -0
  11. data/ext/phidgets/phidgets_capacitive_touch.c +302 -0
  12. data/ext/phidgets/phidgets_common.c +570 -315
  13. data/ext/phidgets/phidgets_current_input.c +229 -0
  14. data/ext/phidgets/phidgets_dc_motor.c +562 -0
  15. data/ext/phidgets/phidgets_dictionary.c +154 -213
  16. data/ext/phidgets/phidgets_digital_input.c +127 -0
  17. data/ext/phidgets/phidgets_digital_output.c +288 -0
  18. data/ext/phidgets/phidgets_distance_sensor.c +295 -0
  19. data/ext/phidgets/phidgets_encoder.c +211 -192
  20. data/ext/phidgets/phidgets_frequency_counter.c +310 -177
  21. data/ext/phidgets/phidgets_gps.c +226 -164
  22. data/ext/phidgets/phidgets_gyroscope.c +195 -0
  23. data/ext/phidgets/phidgets_hub.c +39 -0
  24. data/ext/phidgets/phidgets_humidity_sensor.c +200 -0
  25. data/ext/phidgets/phidgets_ir.c +211 -171
  26. data/ext/phidgets/phidgets_lcd.c +512 -0
  27. data/ext/phidgets/phidgets_light_sensor.c +200 -0
  28. data/ext/phidgets/phidgets_log.c +263 -0
  29. data/ext/phidgets/phidgets_magnetometer.c +279 -0
  30. data/ext/phidgets/phidgets_manager.c +86 -297
  31. data/ext/phidgets/phidgets_motor_position_controller.c +787 -0
  32. data/ext/phidgets/phidgets_phsensor.c +200 -152
  33. data/ext/phidgets/phidgets_power_guard.c +144 -0
  34. data/ext/phidgets/phidgets_pressure_sensor.c +200 -0
  35. data/ext/phidgets/phidgets_rc_servo.c +672 -0
  36. data/ext/phidgets/phidgets_resistance_input.c +227 -0
  37. data/ext/phidgets/phidgets_rfid.c +107 -221
  38. data/ext/phidgets/phidgets_sound_sensor.c +284 -0
  39. data/ext/phidgets/phidgets_spatial.c +124 -318
  40. data/ext/phidgets/phidgets_stepper.c +457 -430
  41. data/ext/phidgets/phidgets_temp_sensor.c +223 -228
  42. data/ext/phidgets/phidgets_voltage_input.c +428 -0
  43. data/ext/phidgets/phidgets_voltage_output.c +167 -0
  44. data/ext/phidgets/phidgets_voltage_ratio_input.c +435 -0
  45. data/lib/phidgets.rb +21 -14
  46. data/lib/phidgets/accelerometer.rb +11 -15
  47. data/lib/phidgets/bldc_motor.rb +45 -0
  48. data/lib/phidgets/capacitive_touch.rb +33 -0
  49. data/lib/phidgets/common.rb +40 -69
  50. data/lib/phidgets/current_input.rb +21 -0
  51. data/lib/phidgets/dc_motor.rb +45 -0
  52. data/lib/phidgets/dictionary.rb +30 -39
  53. data/lib/phidgets/digital_input.rb +21 -0
  54. data/lib/phidgets/digital_output.rb +56 -0
  55. data/lib/phidgets/distance_sensor.rb +33 -0
  56. data/lib/phidgets/encoder.rb +1 -29
  57. data/lib/phidgets/frequency_counter.rb +23 -14
  58. data/lib/phidgets/gps.rb +34 -26
  59. data/lib/phidgets/gyroscope.rb +21 -0
  60. data/lib/phidgets/humidity_sensor.rb +21 -0
  61. data/lib/phidgets/ir.rb +34 -39
  62. data/lib/phidgets/light_sensor.rb +21 -0
  63. data/lib/phidgets/magnetometer.rb +21 -0
  64. data/lib/phidgets/manager.rb +18 -66
  65. data/lib/phidgets/motor_position_controller.rb +45 -0
  66. data/lib/phidgets/ph_sensor.rb +2 -6
  67. data/lib/phidgets/pressure_sensor.rb +21 -0
  68. data/lib/phidgets/rc_servo.rb +58 -0
  69. data/lib/phidgets/resistance_input.rb +21 -0
  70. data/lib/phidgets/rfid.rb +22 -38
  71. data/lib/phidgets/sound_sensor.rb +21 -0
  72. data/lib/phidgets/spatial.rb +11 -15
  73. data/lib/phidgets/stepper.rb +48 -50
  74. data/lib/phidgets/temperature_sensor.rb +11 -15
  75. data/lib/phidgets/version.rb +5 -0
  76. data/lib/phidgets/voltage_input.rb +34 -0
  77. data/lib/phidgets/voltage_output.rb +23 -0
  78. data/lib/phidgets/voltage_ratio_input.rb +34 -0
  79. data/phidgets.gemspec +3 -22
  80. data/test/test_accelerometer.rb +42 -23
  81. data/test/test_bldc_motor.rb +134 -0
  82. data/test/test_capacitive_touch.rb +82 -0
  83. data/test/test_common.rb +125 -108
  84. data/test/test_current_input.rb +62 -0
  85. data/test/test_dc_motor.rb +146 -0
  86. data/test/test_dictionary.rb +22 -54
  87. data/test/test_digital_input.rb +30 -0
  88. data/test/test_digital_output.rb +70 -0
  89. data/test/test_distance_sensor.rb +76 -0
  90. data/test/test_encoder.rb +45 -38
  91. data/test/test_frequency_counter.rb +71 -36
  92. data/test/test_gps.rb +29 -38
  93. data/test/test_gyroscope.rb +54 -0
  94. data/test/test_helper.rb +0 -1
  95. data/test/test_hub.rb +14 -0
  96. data/test/test_humidity_sensor.rb +58 -0
  97. data/test/test_ir.rb +34 -34
  98. data/test/test_lcd.rb +146 -0
  99. data/test/test_light_sensor.rb +58 -0
  100. data/test/test_magnetometer.rb +78 -0
  101. data/test/test_manager.rb +10 -79
  102. data/test/test_motor_control.rb +146 -108
  103. data/test/test_phidgets.rb +2 -14
  104. data/test/test_phsensor.rb +46 -34
  105. data/test/test_power_guard.rb +42 -0
  106. data/test/test_pressure_sensor.rb +58 -0
  107. data/test/test_rc_servo.rb +174 -0
  108. data/test/test_resistance_input.rb +66 -0
  109. data/test/test_rfid.rb +15 -54
  110. data/test/test_sound_sensor.rb +78 -0
  111. data/test/test_spatial.rb +19 -85
  112. data/test/test_stepper.rb +89 -98
  113. data/test/test_temp_sensor.rb +42 -47
  114. data/test/test_voltage_input.rb +102 -0
  115. data/test/test_voltage_output.rb +46 -0
  116. data/test/test_voltage_ratio_input.rb +102 -0
  117. metadata +72 -89
  118. data/ext/phidgets/phidgets_advanced_servo.c +0 -567
  119. data/ext/phidgets/phidgets_analog.c +0 -139
  120. data/ext/phidgets/phidgets_bridge.c +0 -263
  121. data/ext/phidgets/phidgets_interface_kit.c +0 -340
  122. data/ext/phidgets/phidgets_led.c +0 -178
  123. data/ext/phidgets/phidgets_motor_control.c +0 -642
  124. data/ext/phidgets/phidgets_servo.c +0 -276
  125. data/ext/phidgets/phidgets_text_lcd.c +0 -381
  126. data/ext/phidgets/phidgets_text_led.c +0 -107
  127. data/ext/phidgets/phidgets_weight_sensor.c +0 -113
  128. data/lib/phidgets/advanced_servo.rb +0 -49
  129. data/lib/phidgets/analog.rb +0 -8
  130. data/lib/phidgets/bridge.rb +0 -25
  131. data/lib/phidgets/interfacekit.rb +0 -49
  132. data/lib/phidgets/led.rb +0 -8
  133. data/lib/phidgets/motor_control.rb +0 -110
  134. data/lib/phidgets/servo.rb +0 -23
  135. data/lib/phidgets/text_lcd.rb +0 -8
  136. data/lib/phidgets/text_led.rb +0 -8
  137. data/lib/phidgets/weight_sensor.rb +0 -25
  138. data/test/test_advanced_servo.rb +0 -152
  139. data/test/test_analog.rb +0 -45
  140. data/test/test_bridge.rb +0 -77
  141. data/test/test_interfacekit.rb +0 -97
  142. data/test/test_led.rb +0 -55
  143. data/test/test_servo.rb +0 -67
  144. data/test/test_text_lcd.rb +0 -115
  145. data/test/test_text_led.rb +0 -35
  146. data/test/test_weight_sensor.rb +0 -32
@@ -2,165 +2,182 @@ require File.dirname(__FILE__) + '/test_helper.rb'
2
2
 
3
3
  class TestPhidgetsCommon < Test::Unit::TestCase
4
4
 
5
+ def setup
6
+ @phidget = Phidgets::CapacitiveTouch.new
7
+ end
8
+
5
9
  def test_open
6
- ik = Phidgets::InterfaceKit.new
7
- assert_nothing_raised {ik.open 12345}
8
- ik.close
10
+ assert_nothing_raised {@phidget.open}
11
+ @phidget.close
9
12
  end
10
13
 
11
- def test_open_with_hash_1
12
- ik = Phidgets::InterfaceKit.new
13
- assert_nothing_raised {ik.open :serial_number => 12345}
14
- ik.close
14
+ def test_open_wait_for_attachment
15
+ assert_raise(Phidgets::Error::TimedOut) {@phidget.open_wait_for_attachment(1)}
16
+ @phidget.close
15
17
  end
16
18
 
17
- def test_open_with_hash_2
18
- ik = Phidgets::InterfaceKit.new
19
- assert_nothing_raised {ik.open :label => 'test', :server_id => 'localhost', :password => ''}
20
- ik.close
19
+ def test_get_attached
20
+ @phidget.open
21
+ assert_false @phidget.attached?
22
+ @phidget.close
21
23
  end
22
24
 
23
- def test_open_with_hash_3
24
- ik = Phidgets::InterfaceKit.new
25
- assert_nothing_raised {ik.open :label => 'test', :address => 'localhost', :port => 25000, :password => ''}
26
- ik.close
25
+ def test_get_device_channel_count
26
+ # There seems to be a bug in the Phidgets Library, calling this before opening the device causes a SEGFAULT
27
+ #assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_channel_count(Phidgets::CHCLASS_NOTHING)}
27
28
  end
28
29
 
29
- def test_open_with_hash_4
30
- ik = Phidgets::InterfaceKit.new
31
- assert_raise(Phidgets::Error::InvalidArg) {ik.open :address => 'localhost', :port => 25000, :password => ''}
32
- ik.close
30
+ def test_get_device_class
31
+ # There seems to be a bug in the Phidgets Library, calling this before opening the device causes a SEGFAULT
32
+ #assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_class}
33
33
  end
34
-
35
- def test_open_label
36
- ik = Phidgets::InterfaceKit.new
37
- assert_nothing_raised {ik.open_label 'test'}
38
- ik.close
34
+
35
+ def test_get_device_class_name
36
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_class_name}
39
37
  end
40
38
 
41
- def test_open_remote
42
- ik = Phidgets::InterfaceKit.new
43
- assert_nothing_raised {ik.open_remote 12345, 'localhost', 'password'}
44
- ik.close
39
+ def test_get_device_id
40
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_id}
45
41
  end
46
42
 
47
- def test_open_label_remote
48
- ik = Phidgets::InterfaceKit.new
49
- assert_nothing_raised {ik.open_label_remote 'test', 'localhost', 'password'}
50
- ik.close
43
+ def test_get_device_name
44
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_name}
51
45
  end
52
46
 
53
- def test_open_remote_ip
54
- ik = Phidgets::InterfaceKit.new
55
- assert_nothing_raised {ik.open_remote_ip 12345, 'localhost', 25000, 'password'}
56
- ik.close
47
+ def test_get_device_serial_number
48
+ assert_equal(-1, @phidget.device_serial_number)
57
49
  end
58
50
 
59
- def test_open_label_remote_ip
60
- ik = Phidgets::InterfaceKit.new
61
- assert_nothing_raised {ik.open_label_remote_ip 'test', 'localhost', 25000, 'password'}
62
- ik.close
51
+ def test_set_device_serial_number
52
+ assert_nothing_raised {@phidget.device_serial_number = 12345}
63
53
  end
64
54
 
65
- def test_wait_for_attachment
66
- ik = Phidgets::InterfaceKit.new
67
- ik.open 12345
68
- assert_raise(Phidgets::Error::Timeout) {ik.wait_for_attachment 1}
69
- ik.close
55
+ def test_get_device_sku
56
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_sku}
70
57
  end
71
58
 
72
- def test_close
73
- ik = Phidgets::InterfaceKit.new
74
- ik.open 12345
75
- assert_nothing_raised {ik.close}
59
+ def test_get_device_version
60
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_version}
76
61
  end
77
62
 
78
- def test_get_serial_number
79
- ik = Phidgets::InterfaceKit.new
80
- assert_raise(Phidgets::Error::NotAttached) {ik.serial_number}
63
+ def test_get_device_label
64
+ assert_nil(@phidget.device_label)
81
65
  end
82
66
 
83
- def test_get_device_class
84
- ik = Phidgets::InterfaceKit.new
85
- assert_raise(Phidgets::Error::NotAttached) {ik.device_class}
67
+ def test_set_device_label
68
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.device_label = 'test'}
86
69
  end
87
70
 
88
- def test_get_device_id
89
- ik = Phidgets::InterfaceKit.new
90
- assert_raise(Phidgets::Error::NotAttached) {ik.device_id}
71
+ def test_write_device_label
72
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.write_device_label('test')}
91
73
  end
92
74
 
93
- def test_get_device_type
94
- ik = Phidgets::InterfaceKit.new
95
- assert_raise(Phidgets::Error::NotAttached) {ik.device_type}
75
+ def test_get_channel
76
+ assert_equal(0, @phidget.channel)
96
77
  end
97
78
 
98
- def test_get_device_name
99
- ik = Phidgets::InterfaceKit.new
100
- assert_raise(Phidgets::Error::NotAttached) {ik.device_name}
79
+ def test_set_channel
80
+ assert_nothing_raised {@phidget.channel = 1}
101
81
  end
102
82
 
103
- def test_get_device_version
104
- ik = Phidgets::InterfaceKit.new
105
- assert_raise(Phidgets::Error::NotAttached) {ik.device_version}
83
+ def test_get_channel_name
84
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.channel_name}
106
85
  end
107
86
 
108
- def test_get_device_status
109
- ik = Phidgets::InterfaceKit.new
110
- assert_equal(Phidgets::NOTATTACHED, ik.device_status)
87
+ def test_get_channel_class
88
+ assert_equal(Phidgets::CHCLASS_CAPACITIVETOUCH, @phidget.channel_class)
111
89
  end
112
90
 
113
- def test_get_device_label
114
- ik = Phidgets::InterfaceKit.new
115
- assert_raise(Phidgets::Error::NotAttached) {ik.device_label}
91
+ def test_get_channel_class_name
92
+ assert_equal('PhidgetCapacitiveTouch', @phidget.channel_class_name)
116
93
  end
117
94
 
118
- def test_set_device_label
119
- ik = Phidgets::InterfaceKit.new
120
- assert_raise(Phidgets::Error::NotAttached) {ik.device_label = 'test'}
95
+ def test_get_channel_subclass
96
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.channel_subclass}
97
+ end
98
+
99
+ def test_get_data_interval
100
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
121
101
  end
122
102
 
123
- def test_get_server_id
124
- ik = Phidgets::InterfaceKit.new
125
- ik.open_remote 12345, 'localhost', 'password'
126
- assert_equal('localhost', ik.server_id)
127
- ik.close
103
+ def test_set_data_interval
104
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
128
105
  end
129
106
 
130
- def test_get_server_address
131
- ik = Phidgets::InterfaceKit.new
132
- ik.open_remote_ip 12345, 'localhost', 25000, 'password'
133
- assert_equal(['localhost',25000], ik.server_address)
134
- ik.close
107
+ def test_get_hub_port
108
+ assert_equal(-1, @phidget.hub_port)
135
109
  end
136
110
 
137
- def test_get_server_status
138
- ik = Phidgets::InterfaceKit.new
139
- ik.open_remote 12345, 'localhost', 'password'
140
- assert_equal(Phidgets::NOTATTACHED, ik.server_status)
141
- ik.close
111
+ def test_set_hub_port
112
+ assert_nothing_raised {@phidget.hub_port = 2}
142
113
  end
143
114
 
144
- unless RUBY_VERSION < '1.9.0'
145
- def test_set_on_attach
146
- ik = Phidgets::InterfaceKit.new
147
- assert_nothing_raised {ik.on_attach {puts 'hello'}}
148
- end
115
+ def test_get_hub_port_count
116
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.hub_port_count}
117
+ end
118
+
119
+ def test_get_is_channel
120
+ assert(@phidget.is_channel?)
121
+ end
149
122
 
150
- def test_set_on_detach
151
- ik = Phidgets::InterfaceKit.new
152
- assert_nothing_raised {ik.on_detach {puts 'goodbye'}}
153
- end
123
+ def test_get_is_hub_port_device
124
+ assert_false(@phidget.is_hub_port_device?)
125
+ end
126
+
127
+ def test_set_is_hub_port_device
128
+ assert_raise(Phidgets::Error::InvalidArg) {@phidget.is_hub_port_device = true}
129
+ end
154
130
 
155
- def test_set_on_server_connect
156
- ik = Phidgets::InterfaceKit.new
157
- assert_nothing_raised {ik.on_server_connect {puts 'hello'}}
158
- end
131
+ def test_get_is_local
132
+ assert_false(@phidget.is_local?)
133
+ end
134
+
135
+ def test_set_is_local
136
+ assert_nothing_raised {@phidget.is_local = true}
137
+ end
138
+
139
+ def test_get_is_remote
140
+ assert_false(@phidget.is_remote?)
141
+ end
142
+
143
+ def test_set_is_remote
144
+ assert_nothing_raised {@phidget.is_remote = true}
145
+ end
146
+
147
+ def test_get_server_hostname
148
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.server_hostname}
149
+ end
150
+
151
+ def test_get_server_name
152
+ assert_nil(@phidget.server_name)
153
+ end
154
+
155
+ def test_set_server_name
156
+ assert_nothing_raised {@phidget.server_name = 'hostname'}
157
+ end
158
+
159
+ def test_get_server_peer_name
160
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.server_peer_name}
161
+ end
162
+
163
+ def test_get_server_unique_name
164
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.server_unique_name}
165
+ end
166
+
167
+ def test_set_on_attach
168
+ assert_nothing_raised {@phidget.on_attach {puts 'attached'}}
169
+ end
170
+
171
+ def test_set_on_detach
172
+ assert_nothing_raised {@phidget.on_detach {puts 'detached'}}
173
+ end
174
+
175
+ def test_set_on_error
176
+ assert_nothing_raised {@phidget.on_error {puts 'error'}}
177
+ end
159
178
 
160
- def test_set_on_server_disconnect
161
- ik = Phidgets::InterfaceKit.new
162
- assert_nothing_raised {ik.on_server_disconnect {puts 'goodbye'}}
163
- end
179
+ def test_set_on_property_change
180
+ assert_nothing_raised {@phidget.on_property_change {puts 'property_changed'}}
164
181
  end
165
182
 
166
183
  end
@@ -0,0 +1,62 @@
1
+ require File.dirname(__FILE__) + '/test_helper.rb'
2
+
3
+ class TestPhidgetsCurrentInput < Test::Unit::TestCase
4
+
5
+ def setup
6
+ @phidget = Phidgets::CurrentInput.new
7
+ end
8
+
9
+ def test_get_current
10
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current}
11
+ end
12
+
13
+ def test_get_min_current
14
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_current}
15
+ end
16
+
17
+ def test_get_max_current
18
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_current}
19
+ end
20
+
21
+ def test_get_current_change_trigger
22
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_change_trigger}
23
+ end
24
+
25
+ def test_set_current_change_trigger
26
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_change_trigger = 2.5}
27
+ end
28
+
29
+ def test_get_min_current_change_trigger
30
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_current_change_trigger}
31
+ end
32
+
33
+ def test_get_max_current_change_trigger
34
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_current_change_trigger}
35
+ end
36
+
37
+ def test_get_data_interval
38
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
39
+ end
40
+
41
+ def test_set_data_interval
42
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
43
+ end
44
+
45
+ def test_get_min_data_interval
46
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_data_interval}
47
+ end
48
+
49
+ def test_get_max_data_interval
50
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_data_interval}
51
+ end
52
+
53
+ def test_get_power_supply
54
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply}
55
+ end
56
+
57
+ def test_set_power_supply
58
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply = Phidgets::POWER_SUPPLY_12V}
59
+ end
60
+
61
+ end
62
+
@@ -0,0 +1,146 @@
1
+ require File.dirname(__FILE__) + '/test_helper.rb'
2
+
3
+ class TestPhidgetsDCMotor < Test::Unit::TestCase
4
+
5
+ def setup
6
+ @phidget = Phidgets::DCMotor.new
7
+ end
8
+
9
+ def test_get_acceleration
10
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.acceleration}
11
+ end
12
+
13
+ def test_set_acceleration
14
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.acceleration = 2.5}
15
+ end
16
+
17
+ def test_get_min_acceleration
18
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_acceleration}
19
+ end
20
+
21
+ def test_get_max_acceleration
22
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_acceleration}
23
+ end
24
+
25
+ def test_get_back_emf
26
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.back_emf}
27
+ end
28
+
29
+ def test_get_back_emf_sensing_state
30
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.back_emf_sensing_state}
31
+ end
32
+
33
+ def test_set_back_emf_sensing_state
34
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.back_emf_sensing_state = true}
35
+ end
36
+
37
+ def test_get_braking_strength
38
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.braking_strength}
39
+ end
40
+
41
+ def test_get_min_braking_strength
42
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_braking_strength}
43
+ end
44
+
45
+ def test_get_max_braking_strength
46
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_braking_strength}
47
+ end
48
+
49
+ def test_get_current_limit
50
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_limit}
51
+ end
52
+
53
+ def test_set_current_limit
54
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_limit = 2.5}
55
+ end
56
+
57
+ def test_get_min_current_limit
58
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_current_limit}
59
+ end
60
+
61
+ def test_get_max_current_limit
62
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_current_limit}
63
+ end
64
+
65
+ def test_get_current_regulator_gain
66
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_regulator_gain}
67
+ end
68
+
69
+ def test_set_current_regulator_gain
70
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.current_regulator_gain = 2.5}
71
+ end
72
+
73
+ def test_get_min_current_regulator_gain
74
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_current_regulator_gain}
75
+ end
76
+
77
+ def test_get_max_current_regulator_gain
78
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_current_regulator_gain}
79
+ end
80
+
81
+ def test_get_data_interval
82
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
83
+ end
84
+
85
+ def test_set_data_interval
86
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
87
+ end
88
+
89
+ def test_get_min_data_interval
90
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_data_interval}
91
+ end
92
+
93
+ def test_get_max_data_interval
94
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_data_interval}
95
+ end
96
+
97
+ def test_get_fan_mode
98
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.fan_mode}
99
+ end
100
+
101
+ def test_set_fan_mode
102
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.fan_mode = Phidgets::FAN_MODE_OFF}
103
+ end
104
+
105
+ def test_get_target_braking_strength
106
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.target_braking_strength}
107
+ end
108
+
109
+ def test_set_target_braking_strength
110
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.target_braking_strength = 2.5}
111
+ end
112
+
113
+ def test_get_target_velocity
114
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.target_velocity}
115
+ end
116
+
117
+ def test_set_target_velocity
118
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.target_velocity = 2.5}
119
+ end
120
+
121
+ def test_get_velocity
122
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.velocity}
123
+ end
124
+
125
+ def test_get_min_velocity
126
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_velocity}
127
+ end
128
+
129
+ def test_get_max_velocity
130
+ assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_velocity}
131
+ end
132
+
133
+ def test_set_on_back_emf_change
134
+ assert_nothing_raised {@phidget.on_back_emf_change {puts 'back_emf_changed'}}
135
+ end
136
+
137
+ def test_set_on_braking_strength_change
138
+ assert_nothing_raised {@phidget.on_braking_strength_change {puts 'braking_strength_changed'}}
139
+ end
140
+
141
+ def test_set_on_velocity_update
142
+ assert_nothing_raised {@phidget.on_velocity_update {puts 'velocity_updated'}}
143
+ end
144
+
145
+ end
146
+