vedeu 0.8.10 → 0.8.12
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardopts +0 -1
- data/docs/api.md +1 -1
- data/docs/dsl/by_method/add_command.md +1 -0
- data/docs/dsl/by_method/add_keypress.md +1 -0
- data/docs/dsl/by_method/all_commands.md +1 -0
- data/docs/dsl/by_method/all_keypresses.md +1 -0
- data/docs/dsl/by_method/background_colours.md +1 -0
- data/docs/dsl/by_method/bind.md +1 -0
- data/docs/dsl/by_method/bind_alias.md +1 -0
- data/docs/dsl/by_method/borders.md +1 -0
- data/docs/dsl/by_method/bottom.md +1 -0
- data/docs/dsl/by_method/bottom_horizontal.md +1 -0
- data/docs/dsl/by_method/bottom_left.md +1 -0
- data/docs/dsl/by_method/bottom_right.md +1 -0
- data/docs/dsl/by_method/bound.md +1 -0
- data/docs/dsl/by_method/buffer_update.md +4 -1
- data/docs/dsl/by_method/buffer_write.md +5 -1
- data/docs/dsl/by_method/buffers.md +1 -0
- data/docs/dsl/by_method/caption.md +1 -0
- data/docs/dsl/by_method/clear.md +1 -0
- data/docs/dsl/by_method/clear_by_group.md +1 -0
- data/docs/dsl/by_method/clear_by_name.md +1 -0
- data/docs/dsl/by_method/clear_content_by_name.md +1 -0
- data/docs/dsl/by_method/configuration.md +1 -0
- data/docs/dsl/by_method/configure.md +1 -0
- data/docs/dsl/by_method/cursor.md +1 -0
- data/docs/dsl/by_method/cursors.md +1 -0
- data/docs/dsl/by_method/debug.md +1 -0
- data/docs/dsl/by_method/direct_write.md +6 -1
- data/docs/dsl/by_method/disable.md +1 -0
- data/docs/dsl/by_method/documents.md +1 -0
- data/docs/dsl/by_method/drb_restart.md +1 -0
- data/docs/dsl/by_method/drb_start.md +1 -0
- data/docs/dsl/by_method/drb_status.md +1 -0
- data/docs/dsl/by_method/drb_stop.md +1 -0
- data/docs/dsl/by_method/enable.md +1 -0
- data/docs/dsl/by_method/esc.md +50 -0
- data/docs/dsl/by_method/events.md +1 -0
- data/docs/dsl/by_method/exit.md +1 -0
- data/docs/dsl/by_method/focus.md +1 -0
- data/docs/dsl/by_method/focus_by_name.md +1 -0
- data/docs/dsl/by_method/focus_next.md +1 -0
- data/docs/dsl/by_method/focus_previous.md +1 -0
- data/docs/dsl/by_method/focussed.md +1 -0
- data/docs/dsl/by_method/foreground_colours.md +1 -0
- data/docs/dsl/by_method/geometries.md +1 -0
- data/docs/dsl/by_method/geometry.md +1 -0
- data/docs/dsl/by_method/goto.md +1 -0
- data/docs/dsl/by_method/group.md +1 -0
- data/docs/dsl/by_method/groups.md +1 -0
- data/docs/dsl/by_method/height.md +1 -0
- data/docs/dsl/by_method/hide_cursor.md +1 -0
- data/docs/dsl/by_method/hide_group.md +1 -0
- data/docs/dsl/by_method/hide_interface.md +1 -0
- data/docs/dsl/by_method/horizontal.md +1 -0
- data/docs/dsl/by_method/interface.md +1 -0
- data/docs/dsl/by_method/interfaces.md +1 -0
- data/docs/dsl/by_method/keymap.md +1 -0
- data/docs/dsl/by_method/keymaps.md +1 -0
- data/docs/dsl/by_method/keypress.md +2 -0
- data/docs/dsl/by_method/last_command.md +1 -0
- data/docs/dsl/by_method/last_keypress.md +1 -0
- data/docs/dsl/by_method/left.md +1 -0
- data/docs/dsl/by_method/left_vertical.md +1 -0
- data/docs/dsl/by_method/log.md +1 -0
- data/docs/dsl/by_method/log_stderr.md +1 -0
- data/docs/dsl/by_method/log_stdout.md +1 -0
- data/docs/dsl/by_method/log_timestamp.md +1 -0
- data/docs/dsl/by_method/menu.md +1 -0
- data/docs/dsl/by_method/menus.md +1 -0
- data/docs/dsl/by_method/profile.md +1 -0
- data/docs/dsl/by_method/ready.md +1 -0
- data/docs/dsl/by_method/refresh.md +1 -0
- data/docs/dsl/by_method/render_output.md +5 -1
- data/docs/dsl/by_method/renderer.md +1 -0
- data/docs/dsl/by_method/renderers.md +1 -0
- data/docs/dsl/by_method/resize.md +1 -0
- data/docs/dsl/by_method/right.md +1 -0
- data/docs/dsl/by_method/right_vertical.md +1 -0
- data/docs/dsl/by_method/show_cursor.md +1 -0
- data/docs/dsl/by_method/show_group.md +1 -0
- data/docs/dsl/by_method/show_interface.md +1 -0
- data/docs/dsl/by_method/timer.md +1 -0
- data/docs/dsl/by_method/title.md +1 -0
- data/docs/dsl/by_method/toggle_cursor.md +1 -0
- data/docs/dsl/by_method/toggle_group.md +1 -0
- data/docs/dsl/by_method/toggle_interface.md +1 -0
- data/docs/dsl/by_method/top.md +1 -0
- data/docs/dsl/by_method/top_horizontal.md +1 -0
- data/docs/dsl/by_method/top_left.md +1 -0
- data/docs/dsl/by_method/top_right.md +1 -0
- data/docs/dsl/by_method/trigger.md +1 -0
- data/docs/dsl/by_method/unbind.md +1 -0
- data/docs/dsl/by_method/unbind_alias.md +1 -0
- data/docs/dsl/by_method/vertical.md +1 -0
- data/docs/dsl/by_method/width.md +1 -0
- data/docs/dsl/by_method/write.md +1 -0
- data/docs/dsl_elements.md +107 -100
- data/examples/dsl_alignment.rb +1 -1
- data/examples/dsl_colours.rb +1 -1
- data/examples/dsl_editor.rb +1 -1
- data/examples/dsl_horizontal_alignment.rb +1 -1
- data/examples/dsl_vertical_alignment.rb +1 -1
- data/examples/views/misc_view.rb +1 -1
- data/lib/vedeu/application/application_controller.rb +2 -0
- data/lib/vedeu/application/application_view.rb +2 -0
- data/lib/vedeu/borders/dsl.rb +1 -0
- data/lib/vedeu/borders/repository.rb +1 -0
- data/lib/vedeu/buffers/empty.rb +1 -0
- data/lib/vedeu/buffers/repository.rb +1 -0
- data/lib/vedeu/buffers/terminal.rb +3 -1
- data/lib/vedeu/cells/border.rb +0 -5
- data/lib/vedeu/cells/char.rb +0 -5
- data/lib/vedeu/cells/clear.rb +0 -5
- data/lib/vedeu/cells/cursor.rb +0 -5
- data/lib/vedeu/cells/empty.rb +0 -5
- data/lib/vedeu/cells/escape.rb +0 -5
- data/lib/vedeu/cells/support/html.rb +2 -0
- data/lib/vedeu/colours/backgrounds.rb +1 -0
- data/lib/vedeu/colours/foregrounds.rb +1 -0
- data/lib/vedeu/common.rb +0 -9
- data/lib/vedeu/configuration/configuration.rb +5 -0
- data/lib/vedeu/cursors/cursor.rb +3 -0
- data/lib/vedeu/cursors/repository.rb +2 -0
- data/lib/vedeu/distributed/server.rb +4 -0
- data/lib/vedeu/dsl/helpers/attributes.rb +4 -0
- data/lib/vedeu/dsl/views.rb +3 -0
- data/lib/vedeu/editor/repository.rb +1 -0
- data/lib/vedeu/esc/background.rb +2 -0
- data/lib/vedeu/esc/foreground.rb +2 -0
- data/lib/vedeu/events/aliases.rb +2 -0
- data/lib/vedeu/events/all.rb +1 -1
- data/lib/vedeu/events/event.rb +4 -1
- data/lib/vedeu/events/{collection.rb → events.rb} +3 -2
- data/lib/vedeu/events/repository.rb +4 -1
- data/lib/vedeu/events/trigger.rb +3 -0
- data/lib/vedeu/geometries/dsl/dsl.rb +1 -0
- data/lib/vedeu/geometries/repository.rb +1 -0
- data/lib/vedeu/groups/clear.rb +1 -0
- data/lib/vedeu/groups/dsl.rb +1 -0
- data/lib/vedeu/groups/group.rb +3 -0
- data/lib/vedeu/groups/repository.rb +1 -0
- data/lib/vedeu/input/capture.rb +1 -1
- data/lib/vedeu/input/dsl.rb +1 -0
- data/lib/vedeu/input/mapper.rb +1 -0
- data/lib/vedeu/input/read.rb +1 -0
- data/lib/vedeu/input/repository.rb +1 -0
- data/lib/vedeu/input/store.rb +6 -0
- data/lib/vedeu/interfaces/clear.rb +3 -1
- data/lib/vedeu/interfaces/dsl.rb +1 -0
- data/lib/vedeu/interfaces/interface.rb +3 -0
- data/lib/vedeu/interfaces/repository.rb +1 -0
- data/lib/vedeu/logging/clock_time.rb +1 -0
- data/lib/vedeu/logging/debug.rb +2 -0
- data/lib/vedeu/logging/log.rb +4 -0
- data/lib/vedeu/logging/timer.rb +1 -0
- data/lib/vedeu/menus/menu.rb +1 -0
- data/lib/vedeu/menus/repository.rb +1 -0
- data/lib/vedeu/models/focus.rb +6 -0
- data/lib/vedeu/output/all.rb +1 -0
- data/lib/vedeu/output/compressor.rb +17 -104
- data/lib/vedeu/output/compressor_cache.rb +43 -20
- data/lib/vedeu/output/compressors/all.rb +26 -0
- data/lib/vedeu/output/compressors/character.rb +105 -0
- data/lib/vedeu/output/compressors/simple.rb +67 -0
- data/lib/vedeu/output/output.rb +30 -24
- data/lib/vedeu/output/write.rb +1 -0
- data/lib/vedeu/renderers/all.rb +1 -0
- data/lib/vedeu/renderers/options.rb +1 -1
- data/lib/vedeu/renderers/terminal.rb +8 -7
- data/lib/vedeu/repositories/storage.rb +2 -0
- data/lib/vedeu/runtime/application.rb +15 -2
- data/lib/vedeu/runtime/flags.rb +4 -0
- data/lib/vedeu/runtime/router.rb +1 -0
- data/lib/vedeu/sentence.rb +2 -0
- data/lib/vedeu/support/point.rb +2 -0
- data/lib/vedeu/terminal/terminal.rb +1 -0
- data/lib/vedeu/version.rb +1 -1
- data/lib/vedeu/views/all.rb +2 -0
- data/lib/vedeu/views/composition.rb +5 -1
- data/lib/vedeu/views/line.rb +2 -0
- data/lib/vedeu/views/stream.rb +2 -0
- data/lib/vedeu/views/view.rb +3 -1
- data/test/lib/vedeu/cells/border_test.rb +0 -6
- data/test/lib/vedeu/cells/char_test.rb +0 -6
- data/test/lib/vedeu/cells/clear_test.rb +0 -6
- data/test/lib/vedeu/cells/cursor_test.rb +0 -4
- data/test/lib/vedeu/cells/empty_test.rb +0 -6
- data/test/lib/vedeu/cells/escape_test.rb +0 -4
- data/test/lib/vedeu/common_test.rb +0 -10
- data/test/lib/vedeu/events/{collection_test.rb → events_test.rb} +3 -3
- data/test/lib/vedeu/events/repository_test.rb +1 -1
- data/test/lib/vedeu/output/compressor_cache_test.rb +87 -63
- data/test/lib/vedeu/output/compressor_test.rb +31 -8
- data/test/lib/vedeu/output/compressors/character_test.rb +40 -0
- data/test/lib/vedeu/output/compressors/simple_test.rb +42 -0
- data/test/lib/vedeu/repositories/storage_test.rb +2 -0
- data/test/lib/vedeu/sentence_test.rb +2 -0
- data/test/lib/vedeu/support/point_test.rb +2 -0
- data/test/support/coverage.rb +2 -0
- data/test/support/examples/drb_app.rb +2 -0
- data/test/support/examples/focus_app.rb +2 -0
- data/test/support/examples/hello_world.rb +2 -0
- data/test/support/examples/material_colours_app.rb +7 -4
- data/test/support/examples/view_templates_app/view_templates_app.rb +2 -0
- data/test/support/ttyrec.rb +2 -0
- data/test/support/who.rb +2 -0
- metadata +13 -5
@@ -18,94 +18,118 @@ module Vedeu
|
|
18
18
|
|
19
19
|
before { described.reset! }
|
20
20
|
|
21
|
-
describe '#
|
22
|
-
|
21
|
+
describe '#cache' do
|
22
|
+
subject { described.cache(content, compression) }
|
23
23
|
|
24
|
-
|
24
|
+
context 'when the content is empty' do
|
25
|
+
context 'when compression is enabled' do
|
26
|
+
# @todo Write more tests.
|
27
|
+
end
|
25
28
|
|
26
|
-
|
27
|
-
|
29
|
+
context 'when compression is not enabled' do
|
30
|
+
# @todo Write more tests.
|
31
|
+
end
|
28
32
|
end
|
29
33
|
|
30
|
-
context 'when the
|
31
|
-
|
34
|
+
context 'when the content is not empty' do
|
35
|
+
context 'when compression is enabled' do
|
36
|
+
# @todo Write more tests.
|
37
|
+
end
|
32
38
|
|
33
|
-
|
39
|
+
context 'when compression is not enabled' do
|
40
|
+
# @todo Write more tests.
|
41
|
+
end
|
34
42
|
end
|
43
|
+
end
|
35
44
|
|
36
|
-
|
37
|
-
|
45
|
+
# describe '#read' do
|
46
|
+
# let(:key) {}
|
38
47
|
|
39
|
-
|
40
|
-
it { subject.must_equal('') }
|
41
|
-
end
|
48
|
+
# subject { described.read(key) }
|
42
49
|
|
43
|
-
|
44
|
-
|
50
|
+
# context 'when the key is nil' do
|
51
|
+
# it { subject.must_equal([]) }
|
52
|
+
# end
|
45
53
|
|
46
|
-
|
47
|
-
|
48
|
-
end
|
54
|
+
# context 'when the key is not :compressed or :original' do
|
55
|
+
# let(:key) { :invalid }
|
49
56
|
|
50
|
-
|
51
|
-
|
57
|
+
# it { subject.must_equal([]) }
|
58
|
+
# end
|
52
59
|
|
53
|
-
|
54
|
-
|
55
|
-
end
|
60
|
+
# context 'when the key is :compressed' do
|
61
|
+
# let(:key) { :compressed }
|
56
62
|
|
57
|
-
|
58
|
-
|
63
|
+
# context 'when there is no compressed data stored' do
|
64
|
+
# it { subject.must_equal('') }
|
65
|
+
# end
|
59
66
|
|
60
|
-
|
61
|
-
|
62
|
-
end
|
63
|
-
end
|
67
|
+
# context 'when there is compressed data stored' do
|
68
|
+
# before { described.write(:compressed, 'compressed_data') }
|
64
69
|
|
65
|
-
|
66
|
-
|
67
|
-
|
70
|
+
# it { subject.must_equal('compressed_data') }
|
71
|
+
# end
|
72
|
+
# end
|
68
73
|
|
69
|
-
|
74
|
+
# context 'when the key is :original' do
|
75
|
+
# let(:key) { :original }
|
70
76
|
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
end
|
77
|
+
# context 'when there is no original data stored' do
|
78
|
+
# it { subject.must_equal([]) }
|
79
|
+
# end
|
75
80
|
|
76
|
-
|
77
|
-
|
81
|
+
# context 'when there is original data stored' do
|
82
|
+
# before { described.write(:original, [:original_data]) }
|
78
83
|
|
79
|
-
|
80
|
-
|
81
|
-
|
84
|
+
# it { subject.must_equal([:original_data]) }
|
85
|
+
# end
|
86
|
+
# end
|
87
|
+
# end
|
82
88
|
|
83
|
-
|
84
|
-
|
89
|
+
# describe '#write' do
|
90
|
+
# let(:key) {}
|
91
|
+
# let(:_value) {}
|
85
92
|
|
86
|
-
|
87
|
-
it { subject.must_equal(empty) }
|
88
|
-
end
|
93
|
+
# subject { described.write(key, _value) }
|
89
94
|
|
90
|
-
|
91
|
-
|
95
|
+
# context 'when the key is invalid' do
|
96
|
+
# context 'when the key is nil' do
|
97
|
+
# it { subject.must_equal(empty) }
|
98
|
+
# end
|
92
99
|
|
93
|
-
|
94
|
-
|
100
|
+
# context 'when the key is invalid' do
|
101
|
+
# let(:key) { :invalid }
|
95
102
|
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
{
|
100
|
-
compressed: 'compressed_data',
|
101
|
-
original: [],
|
102
|
-
}
|
103
|
-
}
|
103
|
+
# it { subject.must_equal(empty) }
|
104
|
+
# end
|
105
|
+
# end
|
104
106
|
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
107
|
+
# context 'when the key is valid' do
|
108
|
+
# let(:key) { :compressed }
|
109
|
+
|
110
|
+
# context 'when the value is nil' do
|
111
|
+
# it { subject.must_equal(empty) }
|
112
|
+
# end
|
113
|
+
|
114
|
+
# context 'when the value is empty' do
|
115
|
+
# let(:_value) { [] }
|
116
|
+
|
117
|
+
# it { subject.must_equal(empty) }
|
118
|
+
# end
|
119
|
+
|
120
|
+
# context 'when the value is not nil or empty' do
|
121
|
+
# let(:_value) { 'compressed_data' }
|
122
|
+
# let(:expected) {
|
123
|
+
# {
|
124
|
+
# compressed: 'compressed_data',
|
125
|
+
# original: [],
|
126
|
+
# }
|
127
|
+
# }
|
128
|
+
|
129
|
+
# it { subject.must_equal(expected) }
|
130
|
+
# end
|
131
|
+
# end
|
132
|
+
# end
|
109
133
|
|
110
134
|
end # CompressorCache
|
111
135
|
|
@@ -16,8 +16,6 @@ module Vedeu
|
|
16
16
|
describe '#initialize' do
|
17
17
|
it { instance.must_be_instance_of(described) }
|
18
18
|
it { instance.instance_variable_get('@output').must_equal(output) }
|
19
|
-
it { instance.instance_variable_get('@colour').must_equal('') }
|
20
|
-
it { instance.instance_variable_get('@style').must_equal('') }
|
21
19
|
end
|
22
20
|
|
23
21
|
describe '.render' do
|
@@ -34,7 +32,9 @@ module Vedeu
|
|
34
32
|
|
35
33
|
subject { described.render(output) }
|
36
34
|
|
37
|
-
|
35
|
+
context 'when there is no output' do
|
36
|
+
it { subject.must_be_instance_of(Array) }
|
37
|
+
end
|
38
38
|
|
39
39
|
context 'when compression is enabled' do
|
40
40
|
before { Vedeu.configure { compression(true) } }
|
@@ -62,6 +62,9 @@ module Vedeu
|
|
62
62
|
"\e[1;2H\e[38;2;255;0;0me\e[0m" \
|
63
63
|
"\e[1;3H\e[38;2;255;0;0ms\e[0m"
|
64
64
|
}
|
65
|
+
|
66
|
+
it { subject.must_be_instance_of(String) }
|
67
|
+
|
65
68
|
it 'converts the non-Vedeu::Cells::Char elements into String ' \
|
66
69
|
'elements' do
|
67
70
|
subject.must_equal(expected)
|
@@ -95,6 +98,9 @@ module Vedeu
|
|
95
98
|
"\e[1;3H\e[38;2;0;0;255mc\e[0m" \
|
96
99
|
"\e[1;4H\e[38;2;0;0;255md\e[0m"
|
97
100
|
}
|
101
|
+
|
102
|
+
it { subject.must_be_instance_of(String) }
|
103
|
+
|
98
104
|
it 'compresses multiple colours and styles where possible' do
|
99
105
|
subject.must_equal(expected)
|
100
106
|
end
|
@@ -102,14 +108,22 @@ module Vedeu
|
|
102
108
|
|
103
109
|
context 'when the output is not all Vedeu::Cells::Char elements' do
|
104
110
|
let(:output) {
|
105
|
-
Vedeu::Models::Page.coerce(
|
106
|
-
Vedeu::
|
107
|
-
|
108
|
-
|
109
|
-
|
111
|
+
Vedeu::Models::Page.coerce(
|
112
|
+
Vedeu::Models::Row.coerce([
|
113
|
+
Vedeu::Cells::Char.new(name: _name,
|
114
|
+
value: 'A',
|
115
|
+
position: [1, 1]),
|
116
|
+
Vedeu::Cells::Escape.new(value: "\e[?25l"),
|
117
|
+
Vedeu::Cells::Char.new(name: _name,
|
118
|
+
value: 'B',
|
119
|
+
position: [1, 3]),
|
120
|
+
])
|
121
|
+
)
|
110
122
|
}
|
111
123
|
let(:expected) { "\e[1;1HA\e[?25l\e[1;3HB\e[0m" }
|
112
124
|
|
125
|
+
it { subject.must_be_instance_of(String) }
|
126
|
+
|
113
127
|
it 'converts the non-Vedeu::Cells::Char elements into String ' \
|
114
128
|
'elements' do
|
115
129
|
subject.must_equal(expected)
|
@@ -139,6 +153,9 @@ module Vedeu
|
|
139
153
|
"\e[38;2;255;0;0me\e[0m" \
|
140
154
|
"\e[38;2;255;0;0ms\e[0m"
|
141
155
|
}
|
156
|
+
|
157
|
+
it { subject.must_be_instance_of(String) }
|
158
|
+
|
142
159
|
it 'converts the non-Vedeu::Cells::Char elements into String ' \
|
143
160
|
'elements' do
|
144
161
|
subject.must_equal(expected)
|
@@ -168,6 +185,9 @@ module Vedeu
|
|
168
185
|
"\e[38;2;0;0;255mc\e[0m" \
|
169
186
|
"\e[38;2;0;0;255md\e[0m"
|
170
187
|
}
|
188
|
+
|
189
|
+
it { subject.must_be_instance_of(String) }
|
190
|
+
|
171
191
|
it 'compresses multiple colours and styles where possible' do
|
172
192
|
subject.must_equal(expected)
|
173
193
|
end
|
@@ -183,6 +203,9 @@ module Vedeu
|
|
183
203
|
])
|
184
204
|
)
|
185
205
|
}
|
206
|
+
|
207
|
+
it { subject.must_be_instance_of(String) }
|
208
|
+
|
186
209
|
it 'converts the non-Vedeu::Cells::Char elements into String ' \
|
187
210
|
'elements' do
|
188
211
|
subject.must_equal("A\e[?25lB\e[0m")
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
|
5
|
+
module Vedeu
|
6
|
+
|
7
|
+
module Output
|
8
|
+
|
9
|
+
module Compressors
|
10
|
+
|
11
|
+
describe Character do
|
12
|
+
|
13
|
+
let(:described) { Vedeu::Output::Compressors::Character }
|
14
|
+
let(:instance) { described.new(content) }
|
15
|
+
let(:content) {}
|
16
|
+
|
17
|
+
describe '.with' do
|
18
|
+
subject { described.with(content) }
|
19
|
+
|
20
|
+
it { described.must_respond_to(:with) }
|
21
|
+
end
|
22
|
+
|
23
|
+
describe '#initialize' do
|
24
|
+
it { instance.must_be_instance_of(described) }
|
25
|
+
it { instance.instance_variable_get('@content').must_equal(content) }
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '.with' do
|
29
|
+
subject { instance.with }
|
30
|
+
|
31
|
+
it { instance.must_respond_to(:with) }
|
32
|
+
end
|
33
|
+
|
34
|
+
end # Character
|
35
|
+
|
36
|
+
end # Compressors
|
37
|
+
|
38
|
+
end # Output
|
39
|
+
|
40
|
+
end # Vedeu
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
|
5
|
+
module Vedeu
|
6
|
+
|
7
|
+
module Output
|
8
|
+
|
9
|
+
module Compressors
|
10
|
+
|
11
|
+
describe Simple do
|
12
|
+
|
13
|
+
let(:described) { Vedeu::Output::Compressors::Simple }
|
14
|
+
let(:instance) { described.new(content) }
|
15
|
+
let(:content) {}
|
16
|
+
|
17
|
+
describe '.with' do
|
18
|
+
subject { described.with(content) }
|
19
|
+
|
20
|
+
it { described.must_respond_to(:with) }
|
21
|
+
end
|
22
|
+
|
23
|
+
describe '#initialize' do
|
24
|
+
it { instance.must_be_instance_of(described) }
|
25
|
+
it { instance.instance_variable_get('@content').must_equal(content) }
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '.with' do
|
29
|
+
subject { instance.with }
|
30
|
+
|
31
|
+
it { instance.must_respond_to(:with) }
|
32
|
+
# @add more tests
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
end # Simple
|
37
|
+
|
38
|
+
end # Compressors
|
39
|
+
|
40
|
+
end # Output
|
41
|
+
|
42
|
+
end # Vedeu
|
data/test/support/coverage.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
+
# frozen_string_literal: true
|
4
|
+
|
3
5
|
require 'bundler/setup'
|
4
6
|
require 'vedeu'
|
5
7
|
|
@@ -12,8 +14,6 @@ require 'vedeu'
|
|
12
14
|
#
|
13
15
|
class VedeuMaterialColoursApp
|
14
16
|
|
15
|
-
Vedeu.bind(:_initialize_) { Vedeu.trigger(:_refresh_) }
|
16
|
-
|
17
17
|
# Be aware that running an application with debugging enabled will affect
|
18
18
|
# performance.
|
19
19
|
Vedeu.configure do
|
@@ -23,8 +23,11 @@ class VedeuMaterialColoursApp
|
|
23
23
|
log_except [:cursor, :update, :render]
|
24
24
|
# height 11
|
25
25
|
# width 20
|
26
|
-
renderers
|
27
|
-
|
26
|
+
renderers [
|
27
|
+
Vedeu::Renderers::Terminal.new,
|
28
|
+
Vedeu::Renderers::Text.new(
|
29
|
+
filename: '/tmp/material_colours.out'),
|
30
|
+
]
|
28
31
|
threaded false
|
29
32
|
end
|
30
33
|
|
data/test/support/ttyrec.rb
CHANGED
data/test/support/who.rb
CHANGED
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.12
|
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-02-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: guard
|
@@ -288,6 +288,7 @@ files:
|
|
288
288
|
- docs/dsl/by_method/drb_status.md
|
289
289
|
- docs/dsl/by_method/drb_stop.md
|
290
290
|
- docs/dsl/by_method/enable.md
|
291
|
+
- docs/dsl/by_method/esc.md
|
291
292
|
- docs/dsl/by_method/events.md
|
292
293
|
- docs/dsl/by_method/exit.md
|
293
294
|
- docs/dsl/by_method/focus.md
|
@@ -700,8 +701,8 @@ files:
|
|
700
701
|
- lib/vedeu/esc/mouse.rb
|
701
702
|
- lib/vedeu/events/aliases.rb
|
702
703
|
- lib/vedeu/events/all.rb
|
703
|
-
- lib/vedeu/events/collection.rb
|
704
704
|
- lib/vedeu/events/event.rb
|
705
|
+
- lib/vedeu/events/events.rb
|
705
706
|
- lib/vedeu/events/repository.rb
|
706
707
|
- lib/vedeu/events/trigger.rb
|
707
708
|
- lib/vedeu/geometries/all.rb
|
@@ -763,6 +764,9 @@ files:
|
|
763
764
|
- lib/vedeu/output/all.rb
|
764
765
|
- lib/vedeu/output/compressor.rb
|
765
766
|
- lib/vedeu/output/compressor_cache.rb
|
767
|
+
- lib/vedeu/output/compressors/all.rb
|
768
|
+
- lib/vedeu/output/compressors/character.rb
|
769
|
+
- lib/vedeu/output/compressors/simple.rb
|
766
770
|
- lib/vedeu/output/output.rb
|
767
771
|
- lib/vedeu/output/refresh.rb
|
768
772
|
- lib/vedeu/output/viewport.rb
|
@@ -938,8 +942,8 @@ files:
|
|
938
942
|
- test/lib/vedeu/esc/foreground_test.rb
|
939
943
|
- test/lib/vedeu/esc/mouse_test.rb
|
940
944
|
- test/lib/vedeu/events/aliases_test.rb
|
941
|
-
- test/lib/vedeu/events/collection_test.rb
|
942
945
|
- test/lib/vedeu/events/event_test.rb
|
946
|
+
- test/lib/vedeu/events/events_test.rb
|
943
947
|
- test/lib/vedeu/events/repository_test.rb
|
944
948
|
- test/lib/vedeu/events/trigger_test.rb
|
945
949
|
- test/lib/vedeu/geometries/area/area_test.rb
|
@@ -990,6 +994,8 @@ files:
|
|
990
994
|
- test/lib/vedeu/null/generic_test.rb
|
991
995
|
- test/lib/vedeu/output/compressor_cache_test.rb
|
992
996
|
- test/lib/vedeu/output/compressor_test.rb
|
997
|
+
- test/lib/vedeu/output/compressors/character_test.rb
|
998
|
+
- test/lib/vedeu/output/compressors/simple_test.rb
|
993
999
|
- test/lib/vedeu/output/output_test.rb
|
994
1000
|
- test/lib/vedeu/output/refresh_test.rb
|
995
1001
|
- test/lib/vedeu/output/viewport_test.rb
|
@@ -1200,8 +1206,8 @@ test_files:
|
|
1200
1206
|
- test/lib/vedeu/esc/foreground_test.rb
|
1201
1207
|
- test/lib/vedeu/esc/mouse_test.rb
|
1202
1208
|
- test/lib/vedeu/events/aliases_test.rb
|
1203
|
-
- test/lib/vedeu/events/collection_test.rb
|
1204
1209
|
- test/lib/vedeu/events/event_test.rb
|
1210
|
+
- test/lib/vedeu/events/events_test.rb
|
1205
1211
|
- test/lib/vedeu/events/repository_test.rb
|
1206
1212
|
- test/lib/vedeu/events/trigger_test.rb
|
1207
1213
|
- test/lib/vedeu/geometries/area/area_test.rb
|
@@ -1252,6 +1258,8 @@ test_files:
|
|
1252
1258
|
- test/lib/vedeu/null/generic_test.rb
|
1253
1259
|
- test/lib/vedeu/output/compressor_cache_test.rb
|
1254
1260
|
- test/lib/vedeu/output/compressor_test.rb
|
1261
|
+
- test/lib/vedeu/output/compressors/character_test.rb
|
1262
|
+
- test/lib/vedeu/output/compressors/simple_test.rb
|
1255
1263
|
- test/lib/vedeu/output/output_test.rb
|
1256
1264
|
- test/lib/vedeu/output/refresh_test.rb
|
1257
1265
|
- test/lib/vedeu/output/viewport_test.rb
|