vedeu 0.8.23 → 0.8.24
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 +4 -4
- data/integrations/dsl_app_017.rb +5 -0
- data/integrations/expected/dsl_app_017.out +1 -0
- data/integrations/test_runner.rb +1 -0
- data/integrations/test_runner.sh +3 -0
- data/lib/vedeu/borders/border.rb +2 -0
- data/lib/vedeu/borders/dsl.rb +2 -0
- data/lib/vedeu/borders/repository.rb +2 -0
- data/lib/vedeu/buffers/buffer.rb +2 -0
- data/lib/vedeu/buffers/empty.rb +2 -2
- data/lib/vedeu/buffers/refresh.rb +2 -0
- data/lib/vedeu/buffers/repository.rb +2 -0
- data/lib/vedeu/colours/colour.rb +2 -0
- data/lib/vedeu/colours/repository.rb +2 -0
- data/lib/vedeu/configuration/api.rb +2 -0
- data/lib/vedeu/configuration/configuration.rb +2 -0
- data/lib/vedeu/cursors/repository.rb +2 -0
- data/lib/vedeu/distributed/client.rb +3 -0
- data/lib/vedeu/distributed/server.rb +3 -0
- data/lib/vedeu/distributed/subprocess.rb +2 -0
- data/lib/vedeu/distributed/uri.rb +2 -0
- data/lib/vedeu/dsl/view.rb +2 -0
- data/lib/vedeu/dsl/views.rb +2 -0
- data/lib/vedeu/editor/editor.rb +2 -0
- data/lib/vedeu/editor/repository.rb +2 -0
- data/lib/vedeu/events/event.rb +2 -13
- data/lib/vedeu/events/trigger.rb +21 -1
- data/lib/vedeu/geometries/dsl/dsl.rb +2 -0
- data/lib/vedeu/geometries/geometry.rb +2 -0
- data/lib/vedeu/geometries/move.rb +67 -42
- data/lib/vedeu/geometries/repository.rb +2 -0
- data/lib/vedeu/groups/clear.rb +2 -0
- data/lib/vedeu/groups/dsl.rb +2 -0
- data/lib/vedeu/groups/group.rb +2 -0
- data/lib/vedeu/groups/refresh.rb +2 -0
- data/lib/vedeu/groups/repository.rb +2 -0
- data/lib/vedeu/input/capture.rb +2 -0
- data/lib/vedeu/input/dsl.rb +2 -0
- data/lib/vedeu/input/key.rb +2 -0
- data/lib/vedeu/input/keymap.rb +2 -0
- data/lib/vedeu/input/repository.rb +2 -0
- data/lib/vedeu/input/translator.rb +2 -0
- data/lib/vedeu/interfaces/clear.rb +2 -0
- data/lib/vedeu/interfaces/dsl.rb +2 -0
- data/lib/vedeu/interfaces/interface.rb +2 -0
- data/lib/vedeu/interfaces/null.rb +2 -0
- data/lib/vedeu/interfaces/repository.rb +2 -0
- data/lib/vedeu/logging/timer.rb +2 -0
- data/lib/vedeu/menus/dsl.rb +2 -0
- data/lib/vedeu/menus/menu.rb +2 -0
- data/lib/vedeu/menus/repository.rb +2 -0
- data/lib/vedeu/models/page.rb +2 -0
- data/lib/vedeu/models/row.rb +2 -0
- data/lib/vedeu/null/generic.rb +2 -0
- data/lib/vedeu/output/refresh.rb +3 -0
- data/lib/vedeu/plugins/plugin.rb +2 -0
- data/lib/vedeu/plugins/plugins.rb +2 -0
- data/lib/vedeu/presentation/style.rb +2 -0
- data/lib/vedeu/renderers/escape.rb +2 -0
- data/lib/vedeu/renderers/html.rb +2 -0
- data/lib/vedeu/renderers/json.rb +2 -0
- data/lib/vedeu/renderers/support/file.rb +2 -0
- data/lib/vedeu/renderers/terminal.rb +2 -0
- data/lib/vedeu/renderers/text.rb +2 -0
- data/lib/vedeu/repositories/model.rb +2 -0
- data/lib/vedeu/repositories/repository.rb +2 -0
- data/lib/vedeu/runtime/bootstrap.rb +2 -0
- data/lib/vedeu/runtime/launcher.rb +2 -0
- data/lib/vedeu/runtime/main_loop.rb +2 -0
- data/lib/vedeu/runtime/traps.rb +62 -9
- data/lib/vedeu/templating/template.rb +2 -0
- data/lib/vedeu/templating/view_template.rb +2 -0
- data/lib/vedeu/version.rb +2 -2
- data/lib/vedeu/views/composition.rb +2 -0
- data/lib/vedeu/views/line.rb +2 -0
- data/lib/vedeu/views/stream.rb +2 -0
- data/lib/vedeu/views/view.rb +2 -0
- data/test/lib/vedeu/runtime/traps_test.rb +24 -2
- data/vedeu.gemspec +2 -2
- metadata +7 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: bba38d1b7b8c6befc6f778050e727f1afa5ec5aa
|
|
4
|
+
data.tar.gz: 2f92824ce2e8faafd9cad5ccd7b69dcb528d2b42
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8f685282146b350cbdff354b6990054d022812c9cf9dba3b068efc8ed28313d318a3ea23418fb2ed943f593658017f7a6588e3e46fb564b06d2b57f10235defe
|
|
7
|
+
data.tar.gz: 0253772378f8d3de47153617970963329548b5ed5021326454d4ba21e078fb51a5df3e3f0380a0760b3c12af780cbfd7ff24af04a7afcb1729b68e6d21cad4af
|
data/integrations/dsl_app_017.rb
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[0m[2;2H[39m[49m(0l(B[2;3H(0q(B[2;4H [2;5HT[2;6He[2;7Hs[2;8Ht[2;9H [2;10H(0q(B[2;11H(0q(B[2;12H(0q(B[2;13H(0q(B[2;14H(0q(B[2;15H(0q(B[2;16H(0q(B[2;17H(0q(B[2;18H(0q(B[2;19H(0q(B[2;20H(0q(B[2;21H(0q(B[2;22H(0q(B[2;23H(0q(B[2;24H(0q(B[2;25H(0q(B[2;26H(0q(B[2;27H(0q(B[2;28H(0q(B[2;29H(0q(B[2;30H(0q(B[2;31H(0q(B[2;32H(0k(B[0m[3;2H[39m[49m(0x(B[3;3H[38;5;231m[48;5;129mv[3;4H-[3;5H>[3;6Hl[3;7H-[3;8H>[3;9Hl[3;10He[3;11Hf[3;12Ht[3;13H[38;5;231m[48;5;59m [3;14H [3;15H [3;16H [3;17H [3;18H [3;19H [3;20H [3;21Hv[3;22H-[3;23H>[3;24Hl[3;25H-[3;26H>[3;27Hr[3;28Hi[3;29Hg[3;30Hh[3;31Ht[3;32H[39m[49m(0x(B[0m[4;2H[39m[49m(0x(B[4;3H [4;4H [4;5H [4;6H [4;7H [4;8H [4;9H [4;10H [4;11H [4;12H [4;13H [4;14H [4;15H [4;16H [4;17H [4;18H [4;19H [4;20H [4;21H [4;22H [4;23H [4;24H [4;25H [4;26H [4;27H [4;28H [4;29H [4;30H [4;31H [4;32H(0x(B[0m[5;2H[39m[49m(0x(B[5;3H [5;4H [5;5H [5;6H [5;7H [5;8H [5;9H [5;10H [5;11H [5;12H [5;13H [5;14H [5;15H [5;16H [5;17H [5;18H [5;19H [5;20H [5;21H [5;22H [5;23H [5;24H [5;25H [5;26H [5;27H [5;28H [5;29H [5;30H [5;31H [5;32H(0x(B[0m[6;2H[39m[49m(0m(B[6;3H(0q(B[6;4H(0q(B[6;5H(0q(B[6;6H(0q(B[6;7H(0q(B[6;8H(0q(B[6;9H(0q(B[6;10H(0q(B[6;11H(0q(B[6;12H(0q(B[6;13H(0q(B[6;14H(0q(B[6;15H(0q(B[6;16H(0q(B[6;17H(0q(B[6;18H(0q(B[6;19H(0q(B[6;20H(0q(B[6;21H(0q(B[6;22H(0q(B[6;23H(0q(B[6;24H(0q(B[6;25H(0q(B[6;26H(0q(B[6;27H(0q(B[6;28H(0q(B[6;29H(0q(B[6;30H(0q(B[6;31H(0q(B[6;32H(0j(B[0m
|
data/integrations/test_runner.rb
CHANGED
data/integrations/test_runner.sh
CHANGED
data/lib/vedeu/borders/border.rb
CHANGED
data/lib/vedeu/borders/dsl.rb
CHANGED
data/lib/vedeu/buffers/buffer.rb
CHANGED
data/lib/vedeu/buffers/empty.rb
CHANGED
data/lib/vedeu/colours/colour.rb
CHANGED
data/lib/vedeu/dsl/view.rb
CHANGED
data/lib/vedeu/dsl/views.rb
CHANGED
data/lib/vedeu/editor/editor.rb
CHANGED
data/lib/vedeu/events/event.rb
CHANGED
|
@@ -31,6 +31,8 @@ module Vedeu
|
|
|
31
31
|
# :do_stuff
|
|
32
32
|
# end
|
|
33
33
|
#
|
|
34
|
+
# @api private
|
|
35
|
+
#
|
|
34
36
|
class Event
|
|
35
37
|
|
|
36
38
|
include Vedeu::Repositories::Model
|
|
@@ -182,19 +184,6 @@ module Vedeu
|
|
|
182
184
|
@executed_at = @now # set execution time to now
|
|
183
185
|
@now = 0 # reset now
|
|
184
186
|
|
|
185
|
-
message = if args.size > 1
|
|
186
|
-
"Triggering: '#{name.inspect}' with #{args.inspect}"
|
|
187
|
-
|
|
188
|
-
elsif args.one?
|
|
189
|
-
"Triggering: '#{name.inspect}' for #{args.first.inspect}"
|
|
190
|
-
|
|
191
|
-
else
|
|
192
|
-
"Triggering: '#{name.inspect}'"
|
|
193
|
-
|
|
194
|
-
end
|
|
195
|
-
|
|
196
|
-
Vedeu.log(type: :event, message: message)
|
|
197
|
-
|
|
198
187
|
closure.call(*args)
|
|
199
188
|
end
|
|
200
189
|
|
data/lib/vedeu/events/trigger.rb
CHANGED
|
@@ -67,9 +67,29 @@ module Vedeu
|
|
|
67
67
|
|
|
68
68
|
private
|
|
69
69
|
|
|
70
|
+
# @return [String]
|
|
71
|
+
def message
|
|
72
|
+
if args.size > 1
|
|
73
|
+
"Triggering: '#{name.inspect}' with #{args.inspect}"
|
|
74
|
+
|
|
75
|
+
elsif args.one?
|
|
76
|
+
"Triggering: '#{name.inspect}' for #{args.first.inspect}"
|
|
77
|
+
|
|
78
|
+
else
|
|
79
|
+
"Triggering: '#{name.inspect}'"
|
|
80
|
+
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# Trigger each registered event for this name.
|
|
85
|
+
#
|
|
70
86
|
# @return [Array<void>|void]
|
|
71
87
|
def results
|
|
72
|
-
@results ||= registered_events.map
|
|
88
|
+
@results ||= registered_events.map do |event|
|
|
89
|
+
Vedeu.log(type: :event, message: message)
|
|
90
|
+
|
|
91
|
+
event.trigger(*args)
|
|
92
|
+
end
|
|
73
93
|
end
|
|
74
94
|
|
|
75
95
|
# Return all of the registered events for this name.
|
|
@@ -62,6 +62,17 @@ module Vedeu
|
|
|
62
62
|
|
|
63
63
|
private
|
|
64
64
|
|
|
65
|
+
# @return [Hash<Symbol => Symbol>]
|
|
66
|
+
def cursor_event
|
|
67
|
+
{
|
|
68
|
+
down: :_cursor_down_,
|
|
69
|
+
left: :_cursor_left_,
|
|
70
|
+
origin: :_cursor_origin_,
|
|
71
|
+
right: :_cursor_right_,
|
|
72
|
+
up: :_cursor_up_,
|
|
73
|
+
}[direction]
|
|
74
|
+
end
|
|
75
|
+
|
|
65
76
|
# @macro defaults_method
|
|
66
77
|
def defaults
|
|
67
78
|
{
|
|
@@ -76,52 +87,17 @@ module Vedeu
|
|
|
76
87
|
direction != :none
|
|
77
88
|
end
|
|
78
89
|
|
|
79
|
-
# Moves the geometry in the direction given by the offset also
|
|
80
|
-
# given.
|
|
81
|
-
#
|
|
82
90
|
# @return [Hash<Symbol => Hash<Symbol => Fixnum>>]
|
|
83
|
-
def
|
|
84
|
-
{
|
|
85
|
-
down: {
|
|
86
|
-
y: y + offset,
|
|
87
|
-
yn: yn + offset,
|
|
88
|
-
},
|
|
89
|
-
left: {
|
|
90
|
-
x: x - offset,
|
|
91
|
-
xn: xn - offset,
|
|
92
|
-
},
|
|
93
|
-
none: {},
|
|
94
|
-
origin: {
|
|
95
|
-
x: 1,
|
|
96
|
-
xn: (xn - x + 1),
|
|
97
|
-
y: 1,
|
|
98
|
-
yn: (yn - y + 1),
|
|
99
|
-
},
|
|
100
|
-
right: {
|
|
101
|
-
x: x + offset,
|
|
102
|
-
xn: xn + offset,
|
|
103
|
-
},
|
|
104
|
-
up: {
|
|
105
|
-
y: y - offset,
|
|
106
|
-
yn: yn - offset,
|
|
107
|
-
},
|
|
108
|
-
}
|
|
91
|
+
def directional_move
|
|
92
|
+
movement.fetch(direction, {})
|
|
109
93
|
end
|
|
110
94
|
|
|
111
|
-
# @return [Hash<Symbol =>
|
|
112
|
-
def
|
|
95
|
+
# @return [Hash<Symbol => Fixnum>]
|
|
96
|
+
def down
|
|
113
97
|
{
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
right: :_cursor_right_,
|
|
118
|
-
up: :_cursor_up_,
|
|
119
|
-
}[direction]
|
|
120
|
-
end
|
|
121
|
-
|
|
122
|
-
# @return [Hash<Symbol => Hash<Symbol => Fixnum>>]
|
|
123
|
-
def directional_move
|
|
124
|
-
movement.fetch(direction, {})
|
|
98
|
+
y: y + offset,
|
|
99
|
+
yn: yn + offset,
|
|
100
|
+
}
|
|
125
101
|
end
|
|
126
102
|
|
|
127
103
|
# @macro geometry_by_name
|
|
@@ -129,11 +105,52 @@ module Vedeu
|
|
|
129
105
|
@geometry ||= Vedeu.geometries.by_name(name)
|
|
130
106
|
end
|
|
131
107
|
|
|
108
|
+
# @return [Hash<Symbol => Fixnum>]
|
|
109
|
+
def left
|
|
110
|
+
{
|
|
111
|
+
x: x - offset,
|
|
112
|
+
xn: xn - offset,
|
|
113
|
+
}
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
# Moves the geometry in the direction given by the offset also
|
|
117
|
+
# given.
|
|
118
|
+
#
|
|
119
|
+
# @return [Hash<Symbol => Hash<Symbol => Fixnum>>]
|
|
120
|
+
def movement
|
|
121
|
+
{
|
|
122
|
+
down: down,
|
|
123
|
+
left: left,
|
|
124
|
+
none: {},
|
|
125
|
+
origin: origin,
|
|
126
|
+
right: right,
|
|
127
|
+
up: up,
|
|
128
|
+
}
|
|
129
|
+
end
|
|
130
|
+
|
|
132
131
|
# @return [Hash<Symbol => Boolean|String|Symbol>]
|
|
133
132
|
def new_attributes
|
|
134
133
|
geometry.attributes.merge!(unalign_unmaximise)
|
|
135
134
|
end
|
|
136
135
|
|
|
136
|
+
# @return [Hash<Symbol => Fixnum>]
|
|
137
|
+
def origin
|
|
138
|
+
{
|
|
139
|
+
x: 1,
|
|
140
|
+
xn: (xn - x + 1),
|
|
141
|
+
y: 1,
|
|
142
|
+
yn: (yn - y + 1),
|
|
143
|
+
}
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
# @return [Hash<Symbol => Fixnum>]
|
|
147
|
+
def right
|
|
148
|
+
{
|
|
149
|
+
x: x + offset,
|
|
150
|
+
xn: xn + offset,
|
|
151
|
+
}
|
|
152
|
+
end
|
|
153
|
+
|
|
137
154
|
# @return [Hash<Symbol => Boolean|Symbol]
|
|
138
155
|
def unalign_unmaximise
|
|
139
156
|
{
|
|
@@ -143,6 +160,14 @@ module Vedeu
|
|
|
143
160
|
}.merge(directional_move)
|
|
144
161
|
end
|
|
145
162
|
|
|
163
|
+
# @return [Hash<Symbol => Fixnum>]
|
|
164
|
+
def up
|
|
165
|
+
{
|
|
166
|
+
y: y - offset,
|
|
167
|
+
yn: yn - offset,
|
|
168
|
+
}
|
|
169
|
+
end
|
|
170
|
+
|
|
146
171
|
# Refresh the cursor after moving.
|
|
147
172
|
#
|
|
148
173
|
# @return [void]
|
data/lib/vedeu/groups/clear.rb
CHANGED
data/lib/vedeu/groups/dsl.rb
CHANGED
data/lib/vedeu/groups/group.rb
CHANGED
data/lib/vedeu/groups/refresh.rb
CHANGED
data/lib/vedeu/input/capture.rb
CHANGED
data/lib/vedeu/input/dsl.rb
CHANGED
data/lib/vedeu/input/key.rb
CHANGED
data/lib/vedeu/input/keymap.rb
CHANGED
data/lib/vedeu/interfaces/dsl.rb
CHANGED
data/lib/vedeu/logging/timer.rb
CHANGED
data/lib/vedeu/menus/dsl.rb
CHANGED
data/lib/vedeu/menus/menu.rb
CHANGED
data/lib/vedeu/models/page.rb
CHANGED
data/lib/vedeu/models/row.rb
CHANGED
data/lib/vedeu/null/generic.rb
CHANGED
data/lib/vedeu/output/refresh.rb
CHANGED
data/lib/vedeu/plugins/plugin.rb
CHANGED
data/lib/vedeu/renderers/html.rb
CHANGED
data/lib/vedeu/renderers/json.rb
CHANGED
data/lib/vedeu/renderers/text.rb
CHANGED
data/lib/vedeu/runtime/traps.rb
CHANGED
|
@@ -6,23 +6,76 @@ module Vedeu
|
|
|
6
6
|
|
|
7
7
|
# Vedeu can respond to various signals which are handled here.
|
|
8
8
|
#
|
|
9
|
+
# @api private
|
|
10
|
+
#
|
|
9
11
|
module Traps
|
|
10
12
|
|
|
11
13
|
# :nocov:
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
# @param keys [Array<Symbol>]
|
|
16
|
+
# @macro param_block
|
|
17
|
+
# @macro raise_requires_block
|
|
18
|
+
# @return [Array<Symbol>]
|
|
19
|
+
def self.add_signal_trap(*keys, &block)
|
|
20
|
+
raise Vedeu::Error::RequiresBlock unless block_given?
|
|
21
|
+
|
|
22
|
+
# fail Signal.list.inspect
|
|
16
23
|
|
|
17
|
-
|
|
18
|
-
|
|
24
|
+
keys.each do |key|
|
|
25
|
+
Signal.trap(key.to_s, &block) if Signal.list.key?(key.to_s)
|
|
26
|
+
end
|
|
19
27
|
end
|
|
20
28
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
29
|
+
# Resize terminal
|
|
30
|
+
add_signal_trap(:WINCH) { Vedeu.trigger(:_resize_) }
|
|
31
|
+
|
|
32
|
+
# Stop runtime (failure)
|
|
33
|
+
add_signal_trap(:INT, :TERM) { exit(1) }
|
|
34
|
+
|
|
35
|
+
# Read from terminal
|
|
36
|
+
add_signal_trap(:TTIN) {}
|
|
37
|
+
|
|
38
|
+
# User
|
|
39
|
+
add_signal_trap(:USR1, :USR2) {}
|
|
24
40
|
|
|
25
|
-
|
|
41
|
+
# Signals from Ubuntu Linux 16.04.
|
|
42
|
+
#
|
|
43
|
+
# {
|
|
44
|
+
# "EXIT" => 0,
|
|
45
|
+
# "HUP" => 1,
|
|
46
|
+
# "INT" => 2,
|
|
47
|
+
# "QUIT" => 3,
|
|
48
|
+
# "ILL" => 4,
|
|
49
|
+
# "TRAP" => 5,
|
|
50
|
+
# "ABRT" => 6,
|
|
51
|
+
# "IOT" => 6,
|
|
52
|
+
# "BUS" => 7,
|
|
53
|
+
# "FPE" => 8,
|
|
54
|
+
# "KILL" => 9,
|
|
55
|
+
# "USR1" => 10,
|
|
56
|
+
# "SEGV" => 11,
|
|
57
|
+
# "USR2" => 12,
|
|
58
|
+
# "PIPE" => 13,
|
|
59
|
+
# "ALRM" => 14,
|
|
60
|
+
# "TERM" => 15,
|
|
61
|
+
# "CHLD" => 17,
|
|
62
|
+
# "CLD" => 17,
|
|
63
|
+
# "STOP" => 19,
|
|
64
|
+
# "CONT" => 18,
|
|
65
|
+
# "TSTP" => 20,
|
|
66
|
+
# "TTIN" => 21,
|
|
67
|
+
# "TTOU" => 22,
|
|
68
|
+
# "URG" => 23,
|
|
69
|
+
# "XCPU" => 24,
|
|
70
|
+
# "XFSZ" => 25,
|
|
71
|
+
# "VTALRM" => 26,
|
|
72
|
+
# "PROF" => 27,
|
|
73
|
+
# "WINCH" => 28,
|
|
74
|
+
# "IO" => 29,
|
|
75
|
+
# "POLL" => 29,
|
|
76
|
+
# "PWR" => 30,
|
|
77
|
+
# "SYS" => 31,
|
|
78
|
+
# }
|
|
26
79
|
|
|
27
80
|
# :nocov:
|
|
28
81
|
|
data/lib/vedeu/version.rb
CHANGED
data/lib/vedeu/views/line.rb
CHANGED
data/lib/vedeu/views/stream.rb
CHANGED
data/lib/vedeu/views/view.rb
CHANGED
|
@@ -8,8 +8,30 @@ module Vedeu
|
|
|
8
8
|
|
|
9
9
|
describe Traps do
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
let(:described) { Vedeu::Runtime::Traps }
|
|
12
|
+
let(:keys) { :SIGWINCH }
|
|
13
|
+
|
|
14
|
+
describe '.add_signal_trap' do
|
|
15
|
+
subject { described.add_signal_trap(keys) { } }
|
|
16
|
+
|
|
17
|
+
context 'when the required block was given' do
|
|
18
|
+
context 'when signals were given' do
|
|
19
|
+
it { subject.must_equal([:SIGWINCH]) }
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
context 'when no signals were given' do
|
|
23
|
+
let(:keys) {}
|
|
24
|
+
|
|
25
|
+
it { subject.must_equal([nil]) }
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
context 'when the required block was not given' do
|
|
30
|
+
subject { described.add_signal_trap(keys) }
|
|
31
|
+
|
|
32
|
+
it { proc { subject }.must_raise(Vedeu::Error::RequiresBlock) }
|
|
33
|
+
end
|
|
34
|
+
end
|
|
13
35
|
|
|
14
36
|
end # Traps
|
|
15
37
|
|
data/vedeu.gemspec
CHANGED
|
@@ -33,7 +33,7 @@ Gem::Specification.new do |spec|
|
|
|
33
33
|
spec.add_development_dependency 'yard', '0.8.7.6'
|
|
34
34
|
|
|
35
35
|
spec.add_dependency 'bundler', '~> 1.10'
|
|
36
|
-
spec.add_dependency 'rake', '~> 10.
|
|
36
|
+
spec.add_dependency 'rake', '~> 10.5'
|
|
37
37
|
spec.add_dependency 'thor', '0.19.1'
|
|
38
|
-
spec.add_dependency 'vedeu_cli', '0.0.
|
|
38
|
+
spec.add_dependency 'vedeu_cli', '0.0.10'
|
|
39
39
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: vedeu
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.8.
|
|
4
|
+
version: 0.8.24
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Gavin Laking
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-
|
|
11
|
+
date: 2016-04-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: guard
|
|
@@ -170,14 +170,14 @@ dependencies:
|
|
|
170
170
|
requirements:
|
|
171
171
|
- - "~>"
|
|
172
172
|
- !ruby/object:Gem::Version
|
|
173
|
-
version: '10.
|
|
173
|
+
version: '10.5'
|
|
174
174
|
type: :runtime
|
|
175
175
|
prerelease: false
|
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
|
177
177
|
requirements:
|
|
178
178
|
- - "~>"
|
|
179
179
|
- !ruby/object:Gem::Version
|
|
180
|
-
version: '10.
|
|
180
|
+
version: '10.5'
|
|
181
181
|
- !ruby/object:Gem::Dependency
|
|
182
182
|
name: thor
|
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -198,14 +198,14 @@ dependencies:
|
|
|
198
198
|
requirements:
|
|
199
199
|
- - '='
|
|
200
200
|
- !ruby/object:Gem::Version
|
|
201
|
-
version: 0.0.
|
|
201
|
+
version: 0.0.10
|
|
202
202
|
type: :runtime
|
|
203
203
|
prerelease: false
|
|
204
204
|
version_requirements: !ruby/object:Gem::Requirement
|
|
205
205
|
requirements:
|
|
206
206
|
- - '='
|
|
207
207
|
- !ruby/object:Gem::Version
|
|
208
|
-
version: 0.0.
|
|
208
|
+
version: 0.0.10
|
|
209
209
|
description: A framework for building GUI/TUI terminal/console applications.
|
|
210
210
|
email:
|
|
211
211
|
- gavinlaking@gmail.com
|
|
@@ -587,6 +587,7 @@ files:
|
|
|
587
587
|
- integrations/expected/dsl_app_014.out
|
|
588
588
|
- integrations/expected/dsl_app_015.out
|
|
589
589
|
- integrations/expected/dsl_app_016.out
|
|
590
|
+
- integrations/expected/dsl_app_017.out
|
|
590
591
|
- integrations/expected/dsl_app_021.out
|
|
591
592
|
- integrations/expected/dsl_app_022.out
|
|
592
593
|
- integrations/expected/dsl_app_border_001.out
|