ruby_expect 1.7.3 → 1.7.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d6b318f81f84c817eed5c819a2be81f935eb267
4
- data.tar.gz: f7cc87f01c9d49e2c81d451572c6c0b4805500d8
3
+ metadata.gz: 81ae9b14b956734e8da1670eddd7670fb9b56a1b
4
+ data.tar.gz: 9a66c895fc337a6aad9ffb262b0fd6789f9f0dcd
5
5
  SHA512:
6
- metadata.gz: 5be3b823a48dbab9075936c9ed8a1fb38a4e789b8d4cf135e7538f99917ffc7a279e63daf76eb1abce1cfd4a069b04226a5f253e7a83aad443e47b73557c0fde
7
- data.tar.gz: 7ffbd78c6b779042169e430a8732924b2dcc9ffc1685cb465fabbaa8143b773584ebff1b12d7b82d2278f93def350f1b03304177da179770c87452a405d51c25
6
+ metadata.gz: bded1369bd44f3ad4028ba6fad6e1238527ba04fa958a0f817c93ddadb8fdd59a5332ee24d2c5084f31ea5a1cb18bedea5626c1dd8439b0f2e0670c480cd5d68
7
+ data.tar.gz: b0e4f6871dca5d289277dd7acaea524908a711ae9f5d774babd369fb77e20bd816e8ca3ba492cf71217d5bdae2509b025bfa5bb9d63bfa318c5fe349e025c873
@@ -105,6 +105,7 @@ module RubyExpect
105
105
  end
106
106
 
107
107
  @buffer = ''
108
+ @log_buffer = ''
108
109
  @before = ''
109
110
  @match = ''
110
111
  @timeout = 0
@@ -257,7 +258,7 @@ module RubyExpect
257
258
  # end
258
259
  #
259
260
  def expect *patterns, &block
260
- @logger.debug("Expecting #{patterns.inspect}") if @logger.debug?
261
+ @logger.debug("Expecting: #{patterns.inspect}") if @logger.debug?
261
262
  patterns = pattern_escape(*patterns)
262
263
  @end_time = 0
263
264
  if (@timeout != 0)
@@ -272,7 +273,8 @@ module RubyExpect
272
273
  @last_match = nil
273
274
  patterns.each_index do |i|
274
275
  if (match = patterns[i].match(@buffer))
275
- @logger.debug("Matched #{match}") if @logger.debug?
276
+ log_buffer(true)
277
+ @logger.debug(" Matched: #{match}") if @logger.debug?
276
278
  @last_match = match
277
279
  @before = @buffer.slice!(0...match.begin(0))
278
280
  @match = @buffer.slice!(0...match.to_s.length)
@@ -323,6 +325,22 @@ module RubyExpect
323
325
  end
324
326
 
325
327
  private
328
+ def log_buffer incomplete_lines=false
329
+ return unless @logger.info?
330
+ if @log_buffer =~ /[\r\n]/
331
+ lines = @log_buffer.split(/[\r\n]+/, -1)
332
+ @log_buffer = lines.pop
333
+ lines.each do |line|
334
+ @logger.info(" Received: #{line.scan(/[[:print:]]/).join}")
335
+ end
336
+ end
337
+
338
+ if incomplete_lines and @log_buffer !~ /^\s*$/
339
+ @logger.info(" Received: #{@log_buffer.scan(/[[:print:]]/).join}")
340
+ @log_buffer = ''
341
+ end
342
+ end
343
+
326
344
  def interact_loop stdin
327
345
  done = false
328
346
  while (! done)
@@ -359,7 +377,10 @@ module RubyExpect
359
377
  else
360
378
  input = @read_fh.readpartial(4096)
361
379
  @buffer << input
362
- @logger.info(input) if (@logger.info?)
380
+ if @logger.info?
381
+ @log_buffer << input
382
+ log_buffer
383
+ end
363
384
  end
364
385
  end
365
386
  rescue EOFError => e
@@ -1,3 +1,3 @@
1
1
  module RubyExpect
2
- VERSION = "1.7.3"
2
+ VERSION = "1.7.4"
3
3
  end
data/ruby_expect.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: ruby_expect 1.7.3 ruby lib
2
+ # stub: ruby_expect 1.7.4 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "ruby_expect"
6
- s.version = "1.7.3"
6
+ s.version = "1.7.4"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_expect
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.3
4
+ version: 1.7.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Bates