modbus-cli 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -43,6 +43,10 @@ module Modbus
43
43
 
44
44
  def output_option
45
45
  end
46
+
47
+ def debug_option
48
+ option ["-D", "--debug"], :flag, "show debug messages"
49
+ end
46
50
  end
47
51
 
48
52
 
@@ -31,6 +31,8 @@ module Modbus
31
31
  o
32
32
  end
33
33
 
34
+ debug_option
35
+
34
36
  def execute
35
37
  host_ids = files.map {|d| d[:host] }.sort.uniq
36
38
  host_ids.each {|host_id| execute_host host_id }
@@ -45,6 +47,7 @@ module Modbus
45
47
 
46
48
  def execute_slave(host_id, slave_id, client)
47
49
  client.with_slave(slave_id) do |slave|
50
+ slave.debug = true if debug?
48
51
  files.select {|d| d[:host] == host_id && d[:slave] == slave_id }.each do |file_data|
49
52
  execute_single_file slave, file_data
50
53
  end
@@ -17,6 +17,7 @@ module Modbus
17
17
  host_option
18
18
  address_parameter
19
19
  option ["-o", "--output"], 'FILE', "write results to file FILE"
20
+ debug_option
20
21
 
21
22
  parameter 'COUNT', 'number of data to read', :attribute_name => :count do |c|
22
23
  result = Integer(c)
@@ -73,6 +74,8 @@ module Modbus
73
74
  def execute
74
75
  ModBus::TCPClient.connect(host, port) do |cl|
75
76
  cl.with_slave(slave) do |sl|
77
+ sl.debug = true if debug?
78
+
76
79
  if output then
77
80
  case addr_type
78
81
  when :bit
@@ -1,5 +1,5 @@
1
1
  module Modbus
2
2
  module Cli
3
- VERSION = "0.0.5"
3
+ VERSION = "0.0.6"
4
4
  end
5
5
  end
@@ -13,6 +13,7 @@ module Modbus
13
13
  host_parameter
14
14
  host_option
15
15
  address_parameter
16
+ debug_option
16
17
 
17
18
  parameter 'VALUES ...', 'values to write, nonzero counts as true for discrete values', :attribute_name => :values do |vv|
18
19
  case addr_type
@@ -35,6 +36,8 @@ module Modbus
35
36
  def execute
36
37
  ModBus::TCPClient.connect(host, port) do |cl|
37
38
  cl.with_slave(slave) do |sl|
39
+ sl.debug = true if debug?
40
+
38
41
  case addr_type
39
42
  when :bit
40
43
  write_coils sl
@@ -95,6 +95,18 @@ describe Modbus::Cli::DumpCommand do
95
95
  slave.should_receive(:write_holding_registers).with(100, [4, 5, 6])
96
96
  cmd.run %w(dump --offset %MW100 dump.yml)
97
97
  end
98
+
99
+ it 'has a --debug flag' do
100
+ client = mock 'client'
101
+ slave = mock 'slave'
102
+ YAML.should_receive(:load_file).with('dump.yml').and_return(:host => '1.2.3.4', :port => 502, :slave => 5, :offset => 400123, :data => [4, 5, 6])
103
+ ModBus::TCPClient.should_receive(:connect).with('1.2.3.4', 502).and_yield(client)
104
+ client.should_receive(:with_slave).with(5).and_yield(slave)
105
+ slave.should_receive(:write_holding_registers).with(122, [4, 5, 6])
106
+ slave.should_receive(:debug=).with(true)
107
+ cmd.run %w(dump --debug dump.yml)
108
+ end
109
+
98
110
  end
99
111
 
100
112
 
@@ -155,6 +155,13 @@ describe Modbus::Cli::ReadCommand do
155
155
  stdout.should_not match(/./)
156
156
  end
157
157
 
158
+ it 'has a --debug flag' do
159
+ client, slave = standard_connect_helper '1.2.3.4', 502
160
+ slave.should_receive(:read_holding_registers).with(100, 10).and_return((0..9).to_a)
161
+ slave.should_receive(:debug=).with(true)
162
+ cmd.run %w(read --debug 1.2.3.4 %MW100 10)
163
+ end
164
+
158
165
 
159
166
  end
160
167
 
@@ -101,6 +101,13 @@ describe Modbus::Cli::WriteCommand do
101
101
  cmd.run %w(write --slave 99 X 101 1)
102
102
  end
103
103
 
104
+ it 'has a --debug flag' do
105
+ client, slave = standard_connect_helper 'HOST', 502
106
+ slave.should_receive(:debug=).with(true)
107
+ slave.should_receive(:write_multiple_coils)
108
+ cmd.run %w(write --debug HOST 101 1)
109
+ end
110
+
104
111
  end
105
112
 
106
113
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: modbus-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-30 00:00:00.000000000 Z
12
+ date: 2012-01-02 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rmodbus
16
- requirement: &75774940 !ruby/object:Gem::Requirement
16
+ requirement: &73951000 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.1'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *75774940
24
+ version_requirements: *73951000
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: clamp
27
- requirement: &75774550 !ruby/object:Gem::Requirement
27
+ requirement: &73950700 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0.3'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *75774550
35
+ version_requirements: *73950700
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &75774310 !ruby/object:Gem::Requirement
38
+ requirement: &73950440 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '2.7'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *75774310
46
+ version_requirements: *73950440
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &75774000 !ruby/object:Gem::Requirement
49
+ requirement: &73950160 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0.9'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *75774000
57
+ version_requirements: *73950160
58
58
  description: Command line interface to communicate over Modbus TCP
59
59
  email:
60
60
  - tallak@tveide.net
@@ -106,3 +106,4 @@ signing_key:
106
106
  specification_version: 3
107
107
  summary: Modbus command line
108
108
  test_files: []
109
+ has_rdoc: