phidgets 0.0.5 → 0.1.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.
- data/History.txt +10 -2
- data/README.rdoc +41 -18
- data/Rakefile +31 -20
- data/bin/phidget +29 -44
- data/ext/phidgets/extconf.rb +14 -0
- data/ext/phidgets/phidgets.c +272 -0
- data/ext/phidgets/phidgets.h +82 -0
- data/ext/phidgets/phidgets_accelerometer.c +165 -0
- data/ext/phidgets/phidgets_advanced_servo.c +567 -0
- data/ext/phidgets/phidgets_analog.c +139 -0
- data/ext/phidgets/phidgets_bridge.c +263 -0
- data/ext/phidgets/phidgets_common.c +454 -0
- data/ext/phidgets/phidgets_dictionary.c +279 -0
- data/ext/phidgets/phidgets_encoder.c +249 -0
- data/ext/phidgets/phidgets_frequency_counter.c +241 -0
- data/ext/phidgets/phidgets_gps.c +235 -0
- data/ext/phidgets/phidgets_interface_kit.c +340 -0
- data/ext/phidgets/phidgets_ir.c +251 -0
- data/ext/phidgets/phidgets_led.c +178 -0
- data/ext/phidgets/phidgets_manager.c +366 -0
- data/ext/phidgets/phidgets_motor_control.c +642 -0
- data/ext/phidgets/phidgets_phsensor.c +208 -0
- data/ext/phidgets/phidgets_rfid.c +281 -0
- data/ext/phidgets/phidgets_servo.c +276 -0
- data/ext/phidgets/phidgets_spatial.c +369 -0
- data/ext/phidgets/phidgets_stepper.c +560 -0
- data/ext/phidgets/phidgets_temp_sensor.c +295 -0
- data/ext/phidgets/phidgets_text_lcd.c +381 -0
- data/ext/phidgets/phidgets_text_led.c +107 -0
- data/ext/phidgets/phidgets_weight_sensor.c +113 -0
- data/lib/phidgets/accelerometer.rb +25 -0
- data/lib/phidgets/advanced_servo.rb +49 -0
- data/lib/phidgets/analog.rb +8 -0
- data/lib/phidgets/bridge.rb +25 -0
- data/lib/phidgets/common.rb +75 -190
- data/lib/phidgets/dictionary.rb +53 -0
- data/lib/phidgets/encoder.rb +49 -0
- data/lib/phidgets/frequency_counter.rb +25 -0
- data/lib/phidgets/gps.rb +37 -0
- data/lib/phidgets/interfacekit.rb +38 -128
- data/lib/phidgets/ir.rb +50 -0
- data/lib/phidgets/led.rb +8 -0
- data/lib/phidgets/manager.rb +67 -119
- data/lib/phidgets/motor_control.rb +110 -0
- data/lib/phidgets/ph_sensor.rb +25 -0
- data/lib/phidgets/rfid.rb +38 -111
- data/lib/phidgets/servo.rb +12 -95
- data/lib/phidgets/spatial.rb +25 -0
- data/lib/phidgets/stepper.rb +61 -0
- data/lib/phidgets/temperature_sensor.rb +25 -0
- data/lib/phidgets/text_lcd.rb +8 -0
- data/lib/phidgets/text_led.rb +8 -0
- data/lib/phidgets/weight_sensor.rb +25 -0
- data/lib/phidgets.rb +22 -3
- data/phidgets.gemspec +42 -0
- data/test/test_accelerometer.rb +47 -0
- data/test/test_advanced_servo.rb +152 -0
- data/test/test_analog.rb +45 -0
- data/test/test_bridge.rb +77 -0
- data/test/test_common.rb +167 -0
- data/test/test_dictionary.rb +82 -0
- data/test/test_encoder.rb +67 -0
- data/test/test_frequency_counter.rb +67 -0
- data/test/test_gps.rb +67 -0
- data/test/test_helper.rb +1 -0
- data/test/test_interfacekit.rb +86 -182
- data/test/test_ir.rb +57 -0
- data/test/test_led.rb +55 -0
- data/test/test_manager.rb +94 -0
- data/test/test_motor_control.rb +172 -0
- data/test/test_phidgets.rb +14 -6
- data/test/test_phsensor.rb +62 -0
- data/test/test_rfid.rb +77 -0
- data/test/test_servo.rb +67 -0
- data/test/test_spatial.rb +112 -0
- data/test/test_stepper.rb +163 -0
- data/test/test_temp_sensor.rb +87 -0
- data/test/test_text_lcd.rb +115 -0
- data/test/test_text_led.rb +35 -0
- data/test/test_weight_sensor.rb +32 -0
- metadata +165 -75
- data/Manifest.txt +0 -21
- data/PostInstall.txt +0 -3
- data/README.txt +0 -87
- data/lib/phidgets/phidgets.rb +0 -225
- data/script/console +0 -10
- data/script/destroy +0 -14
- data/script/generate +0 -14
@@ -0,0 +1,152 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsAdvancedServo < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::AdvancedServo.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_motor_count
|
10
|
+
servo = Phidgets::AdvancedServo.new
|
11
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.motor_count}
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_acceleration
|
15
|
+
servo = Phidgets::AdvancedServo.new
|
16
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.acceleration 1}
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_acceleration_min
|
20
|
+
servo = Phidgets::AdvancedServo.new
|
21
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.acceleration_min 1}
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_get_acceleration_max
|
25
|
+
servo = Phidgets::AdvancedServo.new
|
26
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.acceleration_max 1}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_set_acceleration
|
30
|
+
servo = Phidgets::AdvancedServo.new
|
31
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_acceleration 1, 2.14}
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_get_velocity
|
35
|
+
servo = Phidgets::AdvancedServo.new
|
36
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.velocity 1}
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_get_velocity_min
|
40
|
+
servo = Phidgets::AdvancedServo.new
|
41
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.velocity_min 1}
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_get_velocity_max
|
45
|
+
servo = Phidgets::AdvancedServo.new
|
46
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.velocity_max 1}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_get_velocity_limit
|
50
|
+
servo = Phidgets::AdvancedServo.new
|
51
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.velocity_limit 1}
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_set_velocity_limit
|
55
|
+
servo = Phidgets::AdvancedServo.new
|
56
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_velocity_limit 1, 2.14}
|
57
|
+
end
|
58
|
+
|
59
|
+
def test_get_position
|
60
|
+
servo = Phidgets::AdvancedServo.new
|
61
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.position 1}
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_get_position_min
|
65
|
+
servo = Phidgets::AdvancedServo.new
|
66
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.position_min 1}
|
67
|
+
end
|
68
|
+
|
69
|
+
def test_get_position_max
|
70
|
+
servo = Phidgets::AdvancedServo.new
|
71
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.position_max 1}
|
72
|
+
end
|
73
|
+
|
74
|
+
def test_set_position
|
75
|
+
servo = Phidgets::AdvancedServo.new
|
76
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_position 1, 2.14}
|
77
|
+
end
|
78
|
+
|
79
|
+
def test_set_position_min
|
80
|
+
servo = Phidgets::AdvancedServo.new
|
81
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_position_min 1, 2.14}
|
82
|
+
end
|
83
|
+
|
84
|
+
def test_set_position_max
|
85
|
+
servo = Phidgets::AdvancedServo.new
|
86
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_position_max 1, 2.14}
|
87
|
+
end
|
88
|
+
|
89
|
+
def test_get_current
|
90
|
+
servo = Phidgets::AdvancedServo.new
|
91
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.current 1}
|
92
|
+
end
|
93
|
+
|
94
|
+
def test_get_speed_ramping_on
|
95
|
+
servo = Phidgets::AdvancedServo.new
|
96
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.speed_ramping_on? 1}
|
97
|
+
end
|
98
|
+
|
99
|
+
def test_set_speed_ramping_on
|
100
|
+
servo = Phidgets::AdvancedServo.new
|
101
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_speed_ramping_on 1, true}
|
102
|
+
end
|
103
|
+
|
104
|
+
def test_get_engaged
|
105
|
+
servo = Phidgets::AdvancedServo.new
|
106
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.engaged? 1}
|
107
|
+
end
|
108
|
+
|
109
|
+
def test_set_engaged
|
110
|
+
servo = Phidgets::AdvancedServo.new
|
111
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_engaged 1, true}
|
112
|
+
end
|
113
|
+
|
114
|
+
def test_get_stopped
|
115
|
+
servo = Phidgets::AdvancedServo.new
|
116
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.stopped? 1}
|
117
|
+
end
|
118
|
+
|
119
|
+
def test_get_servo_type
|
120
|
+
servo = Phidgets::AdvancedServo.new
|
121
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.servo_type 1}
|
122
|
+
end
|
123
|
+
|
124
|
+
def test_set_servo_type
|
125
|
+
servo = Phidgets::AdvancedServo.new
|
126
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_servo_type 1, Phidgets::AdvancedServo::TOWERPRO_MG90}
|
127
|
+
end
|
128
|
+
|
129
|
+
def test_set_servo_parameters
|
130
|
+
servo = Phidgets::AdvancedServo.new
|
131
|
+
assert_raise(Phidgets::Error::NotAttached) {servo.set_servo_parameters 1, 0.1, 1.5, 98.5, 5.5}
|
132
|
+
end
|
133
|
+
|
134
|
+
unless RUBY_VERSION < '1.9.0'
|
135
|
+
def test_set_on_velocity_change
|
136
|
+
servo = Phidgets::AdvancedServo.new
|
137
|
+
assert_nothing_raised {servo.on_velocity_change {puts 'hello'}}
|
138
|
+
end
|
139
|
+
|
140
|
+
def test_set_on_position_change
|
141
|
+
servo = Phidgets::AdvancedServo.new
|
142
|
+
assert_nothing_raised {servo.on_position_change {puts 'hello'}}
|
143
|
+
end
|
144
|
+
|
145
|
+
def test_set_on_current_change
|
146
|
+
servo = Phidgets::AdvancedServo.new
|
147
|
+
assert_nothing_raised {servo.on_current_change {puts 'hello'}}
|
148
|
+
end
|
149
|
+
end
|
150
|
+
|
151
|
+
end
|
152
|
+
|
data/test/test_analog.rb
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsAnalog < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::Analog.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_output_count
|
10
|
+
analog = Phidgets::Analog.new
|
11
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.output_count}
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_voltage
|
15
|
+
analog = Phidgets::Analog.new
|
16
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.voltage 1}
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_voltage_min
|
20
|
+
analog = Phidgets::Analog.new
|
21
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.voltage_min 1}
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_get_voltage_max
|
25
|
+
analog = Phidgets::Analog.new
|
26
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.voltage_max 1}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_set_voltage
|
30
|
+
analog = Phidgets::Analog.new
|
31
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.set_voltage 1, 3.3}
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_get_enabled
|
35
|
+
analog = Phidgets::Analog.new
|
36
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.enabled? 1}
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_set_enabled
|
40
|
+
analog = Phidgets::Analog.new
|
41
|
+
assert_raise(Phidgets::Error::NotAttached) {analog.set_enabled 1, true}
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
45
|
+
|
data/test/test_bridge.rb
ADDED
@@ -0,0 +1,77 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsBridge < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::Bridge.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_input_count
|
10
|
+
bridge = Phidgets::Bridge.new
|
11
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.input_count}
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_bridge_value
|
15
|
+
bridge = Phidgets::Bridge.new
|
16
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.bridge_value 1}
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_bridge_min
|
20
|
+
bridge = Phidgets::Bridge.new
|
21
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.bridge_min 1}
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_get_bridge_max
|
25
|
+
bridge = Phidgets::Bridge.new
|
26
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.bridge_max 1}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_get_enabled
|
30
|
+
bridge = Phidgets::Bridge.new
|
31
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.enabled? 1}
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_set_enabled
|
35
|
+
bridge = Phidgets::Bridge.new
|
36
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.set_enabled 1, true}
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_get_gain
|
40
|
+
bridge = Phidgets::Bridge.new
|
41
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.gain 1}
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_set_gain
|
45
|
+
bridge = Phidgets::Bridge.new
|
46
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.set_gain 1, Phidgets::Bridge::GAIN_8}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_get_data_rate
|
50
|
+
bridge = Phidgets::Bridge.new
|
51
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.data_rate}
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_get_data_rate_min
|
55
|
+
bridge = Phidgets::Bridge.new
|
56
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.data_rate_min}
|
57
|
+
end
|
58
|
+
|
59
|
+
def test_get_data_rate_max
|
60
|
+
bridge = Phidgets::Bridge.new
|
61
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.data_rate_max}
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_set_data_rate
|
65
|
+
bridge = Phidgets::Bridge.new
|
66
|
+
assert_raise(Phidgets::Error::NotAttached) {bridge.data_rate = 200}
|
67
|
+
end
|
68
|
+
|
69
|
+
unless RUBY_VERSION < '1.9.0'
|
70
|
+
def test_set_on_bridge_data
|
71
|
+
bridge = Phidgets::Bridge.new
|
72
|
+
assert_nothing_raised {bridge.on_bridge_data {puts 'hello'}}
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
end
|
77
|
+
|
data/test/test_common.rb
ADDED
@@ -0,0 +1,167 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsCommon < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_open
|
6
|
+
ik = Phidgets::InterfaceKit.new
|
7
|
+
assert_nothing_raised {ik.open 12345}
|
8
|
+
ik.close
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_open_with_hash_1
|
12
|
+
ik = Phidgets::InterfaceKit.new
|
13
|
+
assert_nothing_raised {ik.open :serial_number => 12345}
|
14
|
+
ik.close
|
15
|
+
end
|
16
|
+
|
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
|
21
|
+
end
|
22
|
+
|
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
|
27
|
+
end
|
28
|
+
|
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
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_open_label
|
36
|
+
ik = Phidgets::InterfaceKit.new
|
37
|
+
assert_nothing_raised {ik.open_label 'test'}
|
38
|
+
ik.close
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_open_remote
|
42
|
+
ik = Phidgets::InterfaceKit.new
|
43
|
+
assert_nothing_raised {ik.open_remote 12345, 'localhost', 'password'}
|
44
|
+
ik.close
|
45
|
+
end
|
46
|
+
|
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
|
51
|
+
end
|
52
|
+
|
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
|
57
|
+
end
|
58
|
+
|
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
|
63
|
+
end
|
64
|
+
|
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
|
70
|
+
end
|
71
|
+
|
72
|
+
def test_close
|
73
|
+
ik = Phidgets::InterfaceKit.new
|
74
|
+
ik.open 12345
|
75
|
+
assert_nothing_raised {ik.close}
|
76
|
+
end
|
77
|
+
|
78
|
+
def test_get_serial_number
|
79
|
+
ik = Phidgets::InterfaceKit.new
|
80
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.serial_number}
|
81
|
+
end
|
82
|
+
|
83
|
+
def test_get_device_class
|
84
|
+
ik = Phidgets::InterfaceKit.new
|
85
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_class}
|
86
|
+
end
|
87
|
+
|
88
|
+
def test_get_device_id
|
89
|
+
ik = Phidgets::InterfaceKit.new
|
90
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_id}
|
91
|
+
end
|
92
|
+
|
93
|
+
def test_get_device_type
|
94
|
+
ik = Phidgets::InterfaceKit.new
|
95
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_type}
|
96
|
+
end
|
97
|
+
|
98
|
+
def test_get_device_name
|
99
|
+
ik = Phidgets::InterfaceKit.new
|
100
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_name}
|
101
|
+
end
|
102
|
+
|
103
|
+
def test_get_device_version
|
104
|
+
ik = Phidgets::InterfaceKit.new
|
105
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_version}
|
106
|
+
end
|
107
|
+
|
108
|
+
def test_get_device_status
|
109
|
+
ik = Phidgets::InterfaceKit.new
|
110
|
+
assert_equal(Phidgets::NOTATTACHED, ik.device_status)
|
111
|
+
end
|
112
|
+
|
113
|
+
def test_get_device_label
|
114
|
+
ik = Phidgets::InterfaceKit.new
|
115
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_label}
|
116
|
+
end
|
117
|
+
|
118
|
+
def test_set_device_label
|
119
|
+
ik = Phidgets::InterfaceKit.new
|
120
|
+
assert_raise(Phidgets::Error::NotAttached) {ik.device_label = 'test'}
|
121
|
+
end
|
122
|
+
|
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
|
128
|
+
end
|
129
|
+
|
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
|
135
|
+
end
|
136
|
+
|
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
|
142
|
+
end
|
143
|
+
|
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
|
149
|
+
|
150
|
+
def test_set_on_detach
|
151
|
+
ik = Phidgets::InterfaceKit.new
|
152
|
+
assert_nothing_raised {ik.on_detach {puts 'goodbye'}}
|
153
|
+
end
|
154
|
+
|
155
|
+
def test_set_on_server_connect
|
156
|
+
ik = Phidgets::InterfaceKit.new
|
157
|
+
assert_nothing_raised {ik.on_server_connect {puts 'hello'}}
|
158
|
+
end
|
159
|
+
|
160
|
+
def test_set_on_server_disconnect
|
161
|
+
ik = Phidgets::InterfaceKit.new
|
162
|
+
assert_nothing_raised {ik.on_server_disconnect {puts 'goodbye'}}
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
end
|
167
|
+
|
@@ -0,0 +1,82 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsDictionary < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::Dictionary.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_open_with_hash_1
|
10
|
+
dict = Phidgets::Dictionary.new
|
11
|
+
assert_nothing_raised {dict.open :server_id => 'localhost', :password => 'password'}
|
12
|
+
dict.close
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_open_with_hash_2
|
16
|
+
dict = Phidgets::Dictionary.new
|
17
|
+
assert_nothing_raised {dict.open :address => 'localhost', :port => 25000, :password => 'password'}
|
18
|
+
dict.close
|
19
|
+
end
|
20
|
+
|
21
|
+
def test_open_with_hash_3
|
22
|
+
dict = Phidgets::Dictionary.new
|
23
|
+
assert_raise(Phidgets::Error::InvalidArg) {dict.open({})}
|
24
|
+
dict.close
|
25
|
+
end
|
26
|
+
|
27
|
+
def test_open_remote
|
28
|
+
dict = Phidgets::Dictionary.new
|
29
|
+
assert_nothing_raised {dict.open_remote 'localhost', 'password'}
|
30
|
+
dict.close
|
31
|
+
end
|
32
|
+
|
33
|
+
def test_open_remote_ip
|
34
|
+
dict = Phidgets::Dictionary.new
|
35
|
+
assert_nothing_raised {dict.open_remote_ip 'localhost', 25000, 'password'}
|
36
|
+
dict.close
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_close
|
40
|
+
dict = Phidgets::Dictionary.new
|
41
|
+
dict.open_remote 'localhost', 'password'
|
42
|
+
assert_nothing_raised {dict.close}
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_get_key
|
46
|
+
dict = Phidgets::Dictionary.new
|
47
|
+
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.get_key 'random_key'}
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_add_key
|
51
|
+
dict = Phidgets::Dictionary.new
|
52
|
+
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.add_key 'random_key', 'random_value', false}
|
53
|
+
end
|
54
|
+
|
55
|
+
def test_remove_key
|
56
|
+
dict = Phidgets::Dictionary.new
|
57
|
+
assert_raise(Phidgets::Error::NetworkNotConnected) {dict.remove_key 'random_key'}
|
58
|
+
end
|
59
|
+
|
60
|
+
def test_get_server_id
|
61
|
+
dict = Phidgets::Dictionary.new
|
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
|
79
|
+
end
|
80
|
+
|
81
|
+
end
|
82
|
+
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsEncoder < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::Encoder.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_input_count
|
10
|
+
encoder = Phidgets::Encoder.new
|
11
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.input_count}
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_input_state
|
15
|
+
encoder = Phidgets::Encoder.new
|
16
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.input_state 1}
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_encoder_count
|
20
|
+
encoder = Phidgets::Encoder.new
|
21
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.encoder_count}
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_get_position
|
25
|
+
encoder = Phidgets::Encoder.new
|
26
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.position 1}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_set_position
|
30
|
+
encoder = Phidgets::Encoder.new
|
31
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.set_position 1, 1500}
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_get_index_position
|
35
|
+
encoder = Phidgets::Encoder.new
|
36
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.index_position 1}
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_get_enabled
|
40
|
+
encoder = Phidgets::Encoder.new
|
41
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.enabled? 1}
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_set_enabled
|
45
|
+
encoder = Phidgets::Encoder.new
|
46
|
+
assert_raise(Phidgets::Error::NotAttached) {encoder.set_enabled 1, true}
|
47
|
+
end
|
48
|
+
|
49
|
+
unless RUBY_VERSION < '1.9.0'
|
50
|
+
def test_set_on_input_change
|
51
|
+
encoder = Phidgets::Encoder.new
|
52
|
+
assert_nothing_raised {encoder.on_input_change {puts 'hello'}}
|
53
|
+
end
|
54
|
+
|
55
|
+
def test_set_on_position_change
|
56
|
+
encoder = Phidgets::Encoder.new
|
57
|
+
assert_nothing_raised {encoder.on_position_change {puts 'hello'}}
|
58
|
+
end
|
59
|
+
|
60
|
+
def test_set_on_index
|
61
|
+
encoder = Phidgets::Encoder.new
|
62
|
+
assert_nothing_raised {encoder.on_index {puts 'hello'}}
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|
@@ -0,0 +1,67 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/test_helper.rb'
|
2
|
+
|
3
|
+
class TestPhidgetsFrequencyCounter < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_create
|
6
|
+
assert_nothing_raised {Phidgets::FrequencyCounter.new}
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_get_frequency_input_count
|
10
|
+
freq = Phidgets::FrequencyCounter.new
|
11
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.frequency_input_count}
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_frequency
|
15
|
+
freq = Phidgets::FrequencyCounter.new
|
16
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.frequency 1}
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_total_time
|
20
|
+
freq = Phidgets::FrequencyCounter.new
|
21
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.total_time 1}
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_get_total_count
|
25
|
+
freq = Phidgets::FrequencyCounter.new
|
26
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.total_count 1}
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_timeout
|
30
|
+
freq = Phidgets::FrequencyCounter.new
|
31
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.timeout 1}
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_set_timeout
|
35
|
+
freq = Phidgets::FrequencyCounter.new
|
36
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.set_timeout 1, 100}
|
37
|
+
end
|
38
|
+
|
39
|
+
def test_get_enabled
|
40
|
+
freq = Phidgets::FrequencyCounter.new
|
41
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.enabled? 1}
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_set_enabled
|
45
|
+
freq = Phidgets::FrequencyCounter.new
|
46
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.set_enabled 1, true}
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_get_filter
|
50
|
+
freq = Phidgets::FrequencyCounter.new
|
51
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.filter 1}
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_set_filter
|
55
|
+
freq = Phidgets::FrequencyCounter.new
|
56
|
+
assert_raise(Phidgets::Error::NotAttached) {freq.set_filter 1, Phidgets::FrequencyCounter::FILTERTYPE_ZERO_CROSSING}
|
57
|
+
end
|
58
|
+
|
59
|
+
unless RUBY_VERSION < '1.9.0'
|
60
|
+
def test_set_on_count
|
61
|
+
freq = Phidgets::FrequencyCounter.new
|
62
|
+
assert_nothing_raised {freq.on_count {puts 'hello'}}
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|