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.
- checksums.yaml +4 -4
- data/History.txt +3 -0
- data/README.rdoc +32 -43
- data/Rakefile +4 -2
- data/bin/phidget +18 -72
- data/ext/phidgets/extconf.rb +5 -8
- data/ext/phidgets/phidgets.c +708 -173
- data/ext/phidgets/phidgets.h +54 -35
- data/ext/phidgets/phidgets_accelerometer.c +193 -109
- data/ext/phidgets/phidgets_bldc_motor.c +529 -0
- data/ext/phidgets/phidgets_capacitive_touch.c +302 -0
- data/ext/phidgets/phidgets_common.c +570 -315
- data/ext/phidgets/phidgets_current_input.c +229 -0
- data/ext/phidgets/phidgets_dc_motor.c +562 -0
- data/ext/phidgets/phidgets_dictionary.c +154 -213
- data/ext/phidgets/phidgets_digital_input.c +127 -0
- data/ext/phidgets/phidgets_digital_output.c +288 -0
- data/ext/phidgets/phidgets_distance_sensor.c +295 -0
- data/ext/phidgets/phidgets_encoder.c +211 -192
- data/ext/phidgets/phidgets_frequency_counter.c +310 -177
- data/ext/phidgets/phidgets_gps.c +226 -164
- data/ext/phidgets/phidgets_gyroscope.c +195 -0
- data/ext/phidgets/phidgets_hub.c +39 -0
- data/ext/phidgets/phidgets_humidity_sensor.c +200 -0
- data/ext/phidgets/phidgets_ir.c +211 -171
- data/ext/phidgets/phidgets_lcd.c +512 -0
- data/ext/phidgets/phidgets_light_sensor.c +200 -0
- data/ext/phidgets/phidgets_log.c +263 -0
- data/ext/phidgets/phidgets_magnetometer.c +279 -0
- data/ext/phidgets/phidgets_manager.c +86 -297
- data/ext/phidgets/phidgets_motor_position_controller.c +787 -0
- data/ext/phidgets/phidgets_phsensor.c +200 -152
- data/ext/phidgets/phidgets_power_guard.c +144 -0
- data/ext/phidgets/phidgets_pressure_sensor.c +200 -0
- data/ext/phidgets/phidgets_rc_servo.c +672 -0
- data/ext/phidgets/phidgets_resistance_input.c +227 -0
- data/ext/phidgets/phidgets_rfid.c +107 -221
- data/ext/phidgets/phidgets_sound_sensor.c +284 -0
- data/ext/phidgets/phidgets_spatial.c +124 -318
- data/ext/phidgets/phidgets_stepper.c +457 -430
- data/ext/phidgets/phidgets_temp_sensor.c +223 -228
- data/ext/phidgets/phidgets_voltage_input.c +428 -0
- data/ext/phidgets/phidgets_voltage_output.c +167 -0
- data/ext/phidgets/phidgets_voltage_ratio_input.c +435 -0
- data/lib/phidgets.rb +21 -14
- data/lib/phidgets/accelerometer.rb +11 -15
- data/lib/phidgets/bldc_motor.rb +45 -0
- data/lib/phidgets/capacitive_touch.rb +33 -0
- data/lib/phidgets/common.rb +40 -69
- data/lib/phidgets/current_input.rb +21 -0
- data/lib/phidgets/dc_motor.rb +45 -0
- data/lib/phidgets/dictionary.rb +30 -39
- data/lib/phidgets/digital_input.rb +21 -0
- data/lib/phidgets/digital_output.rb +56 -0
- data/lib/phidgets/distance_sensor.rb +33 -0
- data/lib/phidgets/encoder.rb +1 -29
- data/lib/phidgets/frequency_counter.rb +23 -14
- data/lib/phidgets/gps.rb +34 -26
- data/lib/phidgets/gyroscope.rb +21 -0
- data/lib/phidgets/humidity_sensor.rb +21 -0
- data/lib/phidgets/ir.rb +34 -39
- data/lib/phidgets/light_sensor.rb +21 -0
- data/lib/phidgets/magnetometer.rb +21 -0
- data/lib/phidgets/manager.rb +18 -66
- data/lib/phidgets/motor_position_controller.rb +45 -0
- data/lib/phidgets/ph_sensor.rb +2 -6
- data/lib/phidgets/pressure_sensor.rb +21 -0
- data/lib/phidgets/rc_servo.rb +58 -0
- data/lib/phidgets/resistance_input.rb +21 -0
- data/lib/phidgets/rfid.rb +22 -38
- data/lib/phidgets/sound_sensor.rb +21 -0
- data/lib/phidgets/spatial.rb +11 -15
- data/lib/phidgets/stepper.rb +48 -50
- data/lib/phidgets/temperature_sensor.rb +11 -15
- data/lib/phidgets/version.rb +5 -0
- data/lib/phidgets/voltage_input.rb +34 -0
- data/lib/phidgets/voltage_output.rb +23 -0
- data/lib/phidgets/voltage_ratio_input.rb +34 -0
- data/phidgets.gemspec +3 -22
- data/test/test_accelerometer.rb +42 -23
- data/test/test_bldc_motor.rb +134 -0
- data/test/test_capacitive_touch.rb +82 -0
- data/test/test_common.rb +125 -108
- data/test/test_current_input.rb +62 -0
- data/test/test_dc_motor.rb +146 -0
- data/test/test_dictionary.rb +22 -54
- data/test/test_digital_input.rb +30 -0
- data/test/test_digital_output.rb +70 -0
- data/test/test_distance_sensor.rb +76 -0
- data/test/test_encoder.rb +45 -38
- data/test/test_frequency_counter.rb +71 -36
- data/test/test_gps.rb +29 -38
- data/test/test_gyroscope.rb +54 -0
- data/test/test_helper.rb +0 -1
- data/test/test_hub.rb +14 -0
- data/test/test_humidity_sensor.rb +58 -0
- data/test/test_ir.rb +34 -34
- data/test/test_lcd.rb +146 -0
- data/test/test_light_sensor.rb +58 -0
- data/test/test_magnetometer.rb +78 -0
- data/test/test_manager.rb +10 -79
- data/test/test_motor_control.rb +146 -108
- data/test/test_phidgets.rb +2 -14
- data/test/test_phsensor.rb +46 -34
- data/test/test_power_guard.rb +42 -0
- data/test/test_pressure_sensor.rb +58 -0
- data/test/test_rc_servo.rb +174 -0
- data/test/test_resistance_input.rb +66 -0
- data/test/test_rfid.rb +15 -54
- data/test/test_sound_sensor.rb +78 -0
- data/test/test_spatial.rb +19 -85
- data/test/test_stepper.rb +89 -98
- data/test/test_temp_sensor.rb +42 -47
- data/test/test_voltage_input.rb +102 -0
- data/test/test_voltage_output.rb +46 -0
- data/test/test_voltage_ratio_input.rb +102 -0
- metadata +72 -89
- data/ext/phidgets/phidgets_advanced_servo.c +0 -567
- data/ext/phidgets/phidgets_analog.c +0 -139
- data/ext/phidgets/phidgets_bridge.c +0 -263
- data/ext/phidgets/phidgets_interface_kit.c +0 -340
- data/ext/phidgets/phidgets_led.c +0 -178
- data/ext/phidgets/phidgets_motor_control.c +0 -642
- data/ext/phidgets/phidgets_servo.c +0 -276
- data/ext/phidgets/phidgets_text_lcd.c +0 -381
- data/ext/phidgets/phidgets_text_led.c +0 -107
- data/ext/phidgets/phidgets_weight_sensor.c +0 -113
- data/lib/phidgets/advanced_servo.rb +0 -49
- data/lib/phidgets/analog.rb +0 -8
- data/lib/phidgets/bridge.rb +0 -25
- data/lib/phidgets/interfacekit.rb +0 -49
- data/lib/phidgets/led.rb +0 -8
- data/lib/phidgets/motor_control.rb +0 -110
- data/lib/phidgets/servo.rb +0 -23
- data/lib/phidgets/text_lcd.rb +0 -8
- data/lib/phidgets/text_led.rb +0 -8
- data/lib/phidgets/weight_sensor.rb +0 -25
- data/test/test_advanced_servo.rb +0 -152
- data/test/test_analog.rb +0 -45
- data/test/test_bridge.rb +0 -77
- data/test/test_interfacekit.rb +0 -97
- data/test/test_led.rb +0 -55
- data/test/test_servo.rb +0 -67
- data/test/test_text_lcd.rb +0 -115
- data/test/test_text_led.rb +0 -35
- data/test/test_weight_sensor.rb +0 -32
data/test/test_dictionary.rb
CHANGED
@@ -2,80 +2,48 @@ require File.dirname(__FILE__) + '/test_helper.rb'
|
|
2
2
|
|
3
3
|
class TestPhidgetsDictionary < Test::Unit::TestCase
|
4
4
|
|
5
|
-
def
|
6
|
-
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::Dictionary.new
|
7
7
|
end
|
8
8
|
|
9
|
-
def
|
10
|
-
|
11
|
-
assert_nothing_raised {dict.open :server_id => 'localhost', :password => 'password'}
|
12
|
-
dict.close
|
9
|
+
def test_add
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.add('some_key', 'some_value')}
|
13
11
|
end
|
14
12
|
|
15
|
-
def
|
16
|
-
|
17
|
-
assert_nothing_raised {dict.open :address => 'localhost', :port => 25000, :password => 'password'}
|
18
|
-
dict.close
|
13
|
+
def test_get
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.get('some_key')}
|
19
15
|
end
|
20
16
|
|
21
|
-
def
|
22
|
-
|
23
|
-
assert_raise(Phidgets::Error::InvalidArg) {dict.open({})}
|
24
|
-
dict.close
|
17
|
+
def test_remove
|
18
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.remove('some_key')}
|
25
19
|
end
|
26
20
|
|
27
|
-
def
|
28
|
-
|
29
|
-
assert_nothing_raised {dict.open_remote 'localhost', 'password'}
|
30
|
-
dict.close
|
21
|
+
def test_remove_all
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.remove_all}
|
31
23
|
end
|
32
24
|
|
33
|
-
def
|
34
|
-
|
35
|
-
assert_nothing_raised {dict.open_remote_ip 'localhost', 25000, 'password'}
|
36
|
-
dict.close
|
25
|
+
def test_scan
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.scan('some_key')}
|
37
27
|
end
|
38
28
|
|
39
|
-
def
|
40
|
-
|
41
|
-
dict.open_remote 'localhost', 'password'
|
42
|
-
assert_nothing_raised {dict.close}
|
29
|
+
def test_set
|
30
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.set('some_key', 'some_value')}
|
43
31
|
end
|
44
32
|
|
45
|
-
def
|
46
|
-
|
47
|
-
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.get_key 'random_key'}
|
33
|
+
def test_update
|
34
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.update('some_key', 'some_value')}
|
48
35
|
end
|
49
36
|
|
50
|
-
def
|
51
|
-
|
52
|
-
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.add_key 'random_key', 'random_value', false}
|
37
|
+
def test_set_on_add
|
38
|
+
assert_nothing_raised {@phidget.on_add {puts 'key_added'}}
|
53
39
|
end
|
54
40
|
|
55
|
-
def
|
56
|
-
|
57
|
-
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.remove_key 'random_key'}
|
41
|
+
def test_set_on_remove
|
42
|
+
assert_nothing_raised {@phidget.on_remove {puts 'key_removed'}}
|
58
43
|
end
|
59
44
|
|
60
|
-
def
|
61
|
-
|
62
|
-
dict.open_remote 'localhost', 'password'
|
63
|
-
assert_equal('localhost', dict.server_id)
|
64
|
-
dict.close
|
65
|
-
end
|
66
|
-
|
67
|
-
def test_get_server_address
|
68
|
-
dict = Phidgets::Dictionary.new
|
69
|
-
dict.open_remote_ip 'localhost', 25000, 'password'
|
70
|
-
assert_equal(['localhost',25000], dict.server_address)
|
71
|
-
dict.close
|
72
|
-
end
|
73
|
-
|
74
|
-
def test_get_server_status
|
75
|
-
dict = Phidgets::Dictionary.new
|
76
|
-
dict.open_remote 'localhost', 'password'
|
77
|
-
assert_equal(Phidgets::NOTATTACHED, dict.server_status)
|
78
|
-
dict.close
|
45
|
+
def test_set_on_update
|
46
|
+
assert_nothing_raised {@phidget.on_update {puts 'key_updated'}}
|
79
47
|
end
|
80
48
|
|
81
49
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsDigitalInput < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::DigitalInput.new
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_input_mode
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.input_mode}
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_set_input_mode
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.input_mode = Phidgets::INPUT_MODE_NPN}
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_get_power_supply
|
18
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply}
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_set_power_supply
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply = Phidgets::POWER_SUPPLY_12V}
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_get_state
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.state}
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
|
@@ -0,0 +1,70 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsDigitalOutput < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::DigitalOutput.new
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_duty_cycle
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.duty_cycle}
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_set_duty_cycle
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.duty_cycle = 2.5}
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_set_duty_cycle_async
|
18
|
+
assert_nothing_raised {@phidget.set_duty_cycle_async(2.5) {puts 'duty_cycle_set'}}
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_get_min_duty_cycle
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_duty_cycle}
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_get_max_duty_cycle
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_duty_cycle}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_get_led_current_limit
|
30
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.led_current_limit}
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_set_led_current_limit
|
34
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.led_current_limit = 2.5}
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_set_led_current_limit_async
|
38
|
+
assert_nothing_raised {@phidget.set_led_current_limit_async(2.5) {puts 'led_current_limit_set'}}
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_get_min_led_current_limit
|
42
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_led_current_limit}
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_get_max_led_current_limit
|
46
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_led_current_limit}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_get_led_forward_voltage
|
50
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.led_forward_voltage}
|
51
|
+
end
|
52
|
+
|
53
|
+
def test_set_led_forward_voltage
|
54
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.led_forward_voltage = Phidgets::DigitalOutput::LED_FORWARD_VOLTAGE_2_75V}
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_get_state
|
58
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.state}
|
59
|
+
end
|
60
|
+
|
61
|
+
def test_set_state
|
62
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.state = true}
|
63
|
+
end
|
64
|
+
|
65
|
+
def test_set_state_async
|
66
|
+
assert_nothing_raised {@phidget.set_state_async(true) {puts 'state_set'}}
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
@@ -0,0 +1,76 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsDistanceSensor < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::DistanceSensor.new
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_data_interval
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_set_data_interval
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_get_min_data_interval
|
18
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_data_interval}
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_get_max_data_interval
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_data_interval}
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_get_distance
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.distance}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_get_min_distance
|
30
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_distance}
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_get_max_distance
|
34
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_distance}
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_get_distance_change_trigger
|
38
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.distance_change_trigger}
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_set_distance_change_trigger
|
42
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.distance_change_trigger = 2.5}
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_get_min_distance_change_trigger
|
46
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_distance_change_trigger}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_get_max_distance_change_trigger
|
50
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_distance_change_trigger}
|
51
|
+
end
|
52
|
+
|
53
|
+
def test_get_sonar_quiet_mode
|
54
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.sonar_quiet_mode}
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_set_sonar_quiet_mode
|
58
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.sonar_quiet_mode = true}
|
59
|
+
end
|
60
|
+
|
61
|
+
def test_get_sonar_reflections
|
62
|
+
reflections = @phidget.sonar_reflections
|
63
|
+
assert_equal([], reflections['distances'])
|
64
|
+
assert_equal([], reflections['amplitudes'])
|
65
|
+
end
|
66
|
+
|
67
|
+
def test_set_on_distance_change
|
68
|
+
assert_nothing_raised {@phidget.on_distance_change {puts 'distance_changed'}}
|
69
|
+
end
|
70
|
+
|
71
|
+
def test_set_on_sonar_reflections_update
|
72
|
+
assert_nothing_raised {@phidget.on_sonar_reflections_update {puts 'sonar_reflections_updated'}}
|
73
|
+
end
|
74
|
+
|
75
|
+
end
|
76
|
+
|
data/test/test_encoder.rb
CHANGED
@@ -2,65 +2,72 @@ require File.dirname(__FILE__) + '/test_helper.rb'
|
|
2
2
|
|
3
3
|
class TestPhidgetsEncoder < Test::Unit::TestCase
|
4
4
|
|
5
|
-
def
|
6
|
-
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::Encoder.new
|
7
7
|
end
|
8
8
|
|
9
|
-
def
|
10
|
-
|
11
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.input_count}
|
9
|
+
def test_get_enabled
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.enabled?}
|
12
11
|
end
|
13
12
|
|
14
|
-
def
|
15
|
-
|
16
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.input_state 1}
|
13
|
+
def test_set_enabled
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.enabled = true}
|
17
15
|
end
|
18
16
|
|
19
|
-
def
|
20
|
-
|
21
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.encoder_count}
|
17
|
+
def test_get_data_interval
|
18
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
|
22
19
|
end
|
23
20
|
|
24
|
-
def
|
25
|
-
|
26
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.position 1}
|
21
|
+
def test_set_data_interval
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
|
27
23
|
end
|
28
24
|
|
29
|
-
def
|
30
|
-
|
31
|
-
|
25
|
+
def test_get_min_data_interval
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_data_interval}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_get_max_data_interval
|
30
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_data_interval}
|
32
31
|
end
|
33
32
|
|
34
33
|
def test_get_index_position
|
35
|
-
|
36
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.index_position 1}
|
34
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.index_position}
|
37
35
|
end
|
38
36
|
|
39
|
-
def
|
40
|
-
|
41
|
-
assert_raise(Phidgets::Error::NotAttached) {encoder.enabled? 1}
|
37
|
+
def test_get_io_mode
|
38
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.io_mode}
|
42
39
|
end
|
43
40
|
|
44
|
-
def
|
45
|
-
|
46
|
-
|
41
|
+
def test_set_io_mode
|
42
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.io_mode = Phidgets::Encoder::IO_MODE_LINE_DRIVER_2K2}
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_get_position
|
46
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.position}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_set_position
|
50
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.position = 1500}
|
51
|
+
end
|
52
|
+
|
53
|
+
def test_get_position_change_trigger
|
54
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.position_change_trigger}
|
47
55
|
end
|
48
56
|
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
assert_nothing_raised {encoder.on_input_change {puts 'hello'}}
|
53
|
-
end
|
57
|
+
def test_set_position_change_trigger
|
58
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.position_change_trigger = 500}
|
59
|
+
end
|
54
60
|
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
61
|
+
def test_get_min_position_change_trigger
|
62
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_position_change_trigger}
|
63
|
+
end
|
64
|
+
|
65
|
+
def test_get_max_position_change_trigger
|
66
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_position_change_trigger}
|
67
|
+
end
|
59
68
|
|
60
|
-
|
61
|
-
|
62
|
-
assert_nothing_raised {encoder.on_index {puts 'hello'}}
|
63
|
-
end
|
69
|
+
def test_on_position_change
|
70
|
+
assert_nothing_raised {@phidget.on_position_change {puts 'position_changed'}}
|
64
71
|
end
|
65
72
|
|
66
73
|
end
|
@@ -2,65 +2,100 @@ require File.dirname(__FILE__) + '/test_helper.rb'
|
|
2
2
|
|
3
3
|
class TestPhidgetsFrequencyCounter < Test::Unit::TestCase
|
4
4
|
|
5
|
-
def
|
6
|
-
|
5
|
+
def setup
|
6
|
+
@phidget = Phidgets::FrequencyCounter.new
|
7
7
|
end
|
8
8
|
|
9
|
-
def
|
10
|
-
|
11
|
-
|
9
|
+
def test_get_count
|
10
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.count}
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_get_enabled
|
14
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.enabled?}
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_set_enabled
|
18
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.enabled = true}
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_get_data_interval
|
22
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval}
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_set_data_interval
|
26
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.data_interval = 2}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_get_min_data_interval
|
30
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_data_interval}
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_get_max_data_interval
|
34
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_data_interval}
|
35
|
+
end
|
36
|
+
|
37
|
+
def test_get_filter_type
|
38
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.filter_type}
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_set_filter_type
|
42
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.filter_type = Phidgets::FrequencyCounter::FILTER_TYPE_ZERO_CROSSING}
|
12
43
|
end
|
13
44
|
|
14
45
|
def test_get_frequency
|
15
|
-
|
16
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.frequency 1}
|
46
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.frequency}
|
17
47
|
end
|
18
48
|
|
19
|
-
def
|
20
|
-
|
21
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.total_time 1}
|
49
|
+
def test_get_max_frequency
|
50
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_frequency}
|
22
51
|
end
|
23
52
|
|
24
|
-
def
|
25
|
-
|
26
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.total_count 1}
|
53
|
+
def test_get_frequency_cutoff
|
54
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.frequency_cutoff}
|
27
55
|
end
|
28
56
|
|
29
|
-
def
|
30
|
-
|
31
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.timeout 1}
|
57
|
+
def test_set_frequency_cutoff
|
58
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.frequency_cutoff = 2.5}
|
32
59
|
end
|
33
60
|
|
34
|
-
def
|
35
|
-
|
36
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.set_timeout 1, 100}
|
61
|
+
def test_get_min_frequency_cutoff
|
62
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.min_frequency_cutoff}
|
37
63
|
end
|
38
64
|
|
39
|
-
def
|
40
|
-
|
41
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.enabled? 1}
|
65
|
+
def test_get_max_frequency_cutoff
|
66
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.max_frequency_cutoff}
|
42
67
|
end
|
43
68
|
|
44
|
-
def
|
45
|
-
|
46
|
-
|
69
|
+
def test_get_input_mode
|
70
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.input_mode}
|
71
|
+
end
|
72
|
+
|
73
|
+
def test_set_input_mode
|
74
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.input_mode = Phidgets::INPUT_MODE_PNP}
|
75
|
+
end
|
76
|
+
|
77
|
+
def test_get_power_supply
|
78
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply}
|
79
|
+
end
|
80
|
+
|
81
|
+
def test_set_power_supply
|
82
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.power_supply = Phidgets::POWER_SUPPLY_12V}
|
83
|
+
end
|
84
|
+
|
85
|
+
def test_reset
|
86
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.reset}
|
47
87
|
end
|
48
88
|
|
49
|
-
def
|
50
|
-
|
51
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.filter 1}
|
89
|
+
def test_get_time_elapsed
|
90
|
+
assert_raise(Phidgets::Error::DeviceNotAttached) {@phidget.time_elapsed}
|
52
91
|
end
|
53
92
|
|
54
|
-
def
|
55
|
-
|
56
|
-
assert_raise(Phidgets::Error::NotAttached) {freq.set_filter 1, Phidgets::FrequencyCounter::FILTERTYPE_ZERO_CROSSING}
|
93
|
+
def test_set_on_count_change
|
94
|
+
assert_nothing_raised {@phidget.on_count_change {puts 'count_changed'}}
|
57
95
|
end
|
58
96
|
|
59
|
-
|
60
|
-
|
61
|
-
freq = Phidgets::FrequencyCounter.new
|
62
|
-
assert_nothing_raised {freq.on_count {puts 'hello'}}
|
63
|
-
end
|
97
|
+
def test_set_on_frequency_change
|
98
|
+
assert_nothing_raised {@phidget.on_frequency_change {puts 'frequency_changed'}}
|
64
99
|
end
|
65
100
|
|
66
101
|
end
|