tty-process-ctl 0.3.0 → 0.4.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/VERSION +1 -1
- data/lib/tty-process-ctl.rb +2 -0
- data/spec/tty-process-ctl_spec.rb +4 -4
- data/tty-process-ctl.gemspec +1 -1
- metadata +14 -14
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.4.0
|
data/lib/tty-process-ctl.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'thread'
|
2
2
|
require 'timeout'
|
3
3
|
require 'pty'
|
4
|
+
require 'io/console'
|
4
5
|
|
5
6
|
class TTYProcessCtl
|
6
7
|
class Timeout < Timeout::Error
|
@@ -17,6 +18,7 @@ class TTYProcessCtl
|
|
17
18
|
@messages = []
|
18
19
|
|
19
20
|
@r, @w, @pid = PTY.spawn(@command)
|
21
|
+
@w.echo = false # disable echoing of commands
|
20
22
|
@thread = Thread.start do
|
21
23
|
begin
|
22
24
|
abort_on_exception = true
|
@@ -60,10 +60,10 @@ describe TTYProcessCtl do
|
|
60
60
|
subject.each.to_a.last.should == "2011-09-19 22:12:00 [INFO] Saving chunks"
|
61
61
|
end
|
62
62
|
|
63
|
-
it 'should echo sent command' do
|
63
|
+
it 'should not echo sent command' do
|
64
64
|
subject.each_until(/Done/).to_a
|
65
65
|
subject.send_command 'stop'
|
66
|
-
subject.each.to_a.first.
|
66
|
+
subject.each.to_a.first.should_not == "stop"
|
67
67
|
end
|
68
68
|
|
69
69
|
it 'should raise error when sending command to dead process' do
|
@@ -86,7 +86,7 @@ describe TTYProcessCtl do
|
|
86
86
|
subject.messages.length.should == 20
|
87
87
|
end
|
88
88
|
|
89
|
-
describe '
|
89
|
+
describe 'flushing' do
|
90
90
|
subject do
|
91
91
|
TTYProcessCtl.new('spec/stub')
|
92
92
|
end
|
@@ -98,7 +98,7 @@ describe TTYProcessCtl do
|
|
98
98
|
subject.flush
|
99
99
|
|
100
100
|
subject.send_command 'list'
|
101
|
-
subject.each_until(/Connected players/).to_a.should == ["
|
101
|
+
subject.each_until(/Connected players/).to_a.should == ["2011-09-20 14:42:04 [INFO] Connected players: kazuya"]
|
102
102
|
|
103
103
|
subject.send_command 'stop'
|
104
104
|
end
|
data/tty-process-ctl.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tty-process-ctl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2012-11-18 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &70168846879920 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '2.8'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70168846879920
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rdoc
|
27
|
-
requirement: &
|
27
|
+
requirement: &70168846879440 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '3.12'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70168846879440
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: bundler
|
38
|
-
requirement: &
|
38
|
+
requirement: &70168846878880 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '1.1'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70168846878880
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: jeweler
|
49
|
-
requirement: &
|
49
|
+
requirement: &70168846878320 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '1.8'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70168846878320
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: simplecov
|
60
|
-
requirement: &
|
60
|
+
requirement: &70168846877760 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70168846877760
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: cli
|
71
|
-
requirement: &
|
71
|
+
requirement: &70168846877040 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '1.0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70168846877040
|
80
80
|
description: This gem was created to enable control of interactive terminal applications.
|
81
81
|
It is using pseudo tty to communicate with the process via simple API.
|
82
82
|
email: jpastuszek@gmail.com
|
@@ -117,7 +117,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
117
117
|
version: '0'
|
118
118
|
segments:
|
119
119
|
- 0
|
120
|
-
hash:
|
120
|
+
hash: 1843831823515240226
|
121
121
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
122
122
|
none: false
|
123
123
|
requirements:
|