phidgets 0.1.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|