vedeu 0.8.10 → 0.8.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +0 -1
  3. data/docs/api.md +1 -1
  4. data/docs/dsl/by_method/add_command.md +1 -0
  5. data/docs/dsl/by_method/add_keypress.md +1 -0
  6. data/docs/dsl/by_method/all_commands.md +1 -0
  7. data/docs/dsl/by_method/all_keypresses.md +1 -0
  8. data/docs/dsl/by_method/background_colours.md +1 -0
  9. data/docs/dsl/by_method/bind.md +1 -0
  10. data/docs/dsl/by_method/bind_alias.md +1 -0
  11. data/docs/dsl/by_method/borders.md +1 -0
  12. data/docs/dsl/by_method/bottom.md +1 -0
  13. data/docs/dsl/by_method/bottom_horizontal.md +1 -0
  14. data/docs/dsl/by_method/bottom_left.md +1 -0
  15. data/docs/dsl/by_method/bottom_right.md +1 -0
  16. data/docs/dsl/by_method/bound.md +1 -0
  17. data/docs/dsl/by_method/buffer_update.md +4 -1
  18. data/docs/dsl/by_method/buffer_write.md +5 -1
  19. data/docs/dsl/by_method/buffers.md +1 -0
  20. data/docs/dsl/by_method/caption.md +1 -0
  21. data/docs/dsl/by_method/clear.md +1 -0
  22. data/docs/dsl/by_method/clear_by_group.md +1 -0
  23. data/docs/dsl/by_method/clear_by_name.md +1 -0
  24. data/docs/dsl/by_method/clear_content_by_name.md +1 -0
  25. data/docs/dsl/by_method/configuration.md +1 -0
  26. data/docs/dsl/by_method/configure.md +1 -0
  27. data/docs/dsl/by_method/cursor.md +1 -0
  28. data/docs/dsl/by_method/cursors.md +1 -0
  29. data/docs/dsl/by_method/debug.md +1 -0
  30. data/docs/dsl/by_method/direct_write.md +6 -1
  31. data/docs/dsl/by_method/disable.md +1 -0
  32. data/docs/dsl/by_method/documents.md +1 -0
  33. data/docs/dsl/by_method/drb_restart.md +1 -0
  34. data/docs/dsl/by_method/drb_start.md +1 -0
  35. data/docs/dsl/by_method/drb_status.md +1 -0
  36. data/docs/dsl/by_method/drb_stop.md +1 -0
  37. data/docs/dsl/by_method/enable.md +1 -0
  38. data/docs/dsl/by_method/esc.md +50 -0
  39. data/docs/dsl/by_method/events.md +1 -0
  40. data/docs/dsl/by_method/exit.md +1 -0
  41. data/docs/dsl/by_method/focus.md +1 -0
  42. data/docs/dsl/by_method/focus_by_name.md +1 -0
  43. data/docs/dsl/by_method/focus_next.md +1 -0
  44. data/docs/dsl/by_method/focus_previous.md +1 -0
  45. data/docs/dsl/by_method/focussed.md +1 -0
  46. data/docs/dsl/by_method/foreground_colours.md +1 -0
  47. data/docs/dsl/by_method/geometries.md +1 -0
  48. data/docs/dsl/by_method/geometry.md +1 -0
  49. data/docs/dsl/by_method/goto.md +1 -0
  50. data/docs/dsl/by_method/group.md +1 -0
  51. data/docs/dsl/by_method/groups.md +1 -0
  52. data/docs/dsl/by_method/height.md +1 -0
  53. data/docs/dsl/by_method/hide_cursor.md +1 -0
  54. data/docs/dsl/by_method/hide_group.md +1 -0
  55. data/docs/dsl/by_method/hide_interface.md +1 -0
  56. data/docs/dsl/by_method/horizontal.md +1 -0
  57. data/docs/dsl/by_method/interface.md +1 -0
  58. data/docs/dsl/by_method/interfaces.md +1 -0
  59. data/docs/dsl/by_method/keymap.md +1 -0
  60. data/docs/dsl/by_method/keymaps.md +1 -0
  61. data/docs/dsl/by_method/keypress.md +2 -0
  62. data/docs/dsl/by_method/last_command.md +1 -0
  63. data/docs/dsl/by_method/last_keypress.md +1 -0
  64. data/docs/dsl/by_method/left.md +1 -0
  65. data/docs/dsl/by_method/left_vertical.md +1 -0
  66. data/docs/dsl/by_method/log.md +1 -0
  67. data/docs/dsl/by_method/log_stderr.md +1 -0
  68. data/docs/dsl/by_method/log_stdout.md +1 -0
  69. data/docs/dsl/by_method/log_timestamp.md +1 -0
  70. data/docs/dsl/by_method/menu.md +1 -0
  71. data/docs/dsl/by_method/menus.md +1 -0
  72. data/docs/dsl/by_method/profile.md +1 -0
  73. data/docs/dsl/by_method/ready.md +1 -0
  74. data/docs/dsl/by_method/refresh.md +1 -0
  75. data/docs/dsl/by_method/render_output.md +5 -1
  76. data/docs/dsl/by_method/renderer.md +1 -0
  77. data/docs/dsl/by_method/renderers.md +1 -0
  78. data/docs/dsl/by_method/resize.md +1 -0
  79. data/docs/dsl/by_method/right.md +1 -0
  80. data/docs/dsl/by_method/right_vertical.md +1 -0
  81. data/docs/dsl/by_method/show_cursor.md +1 -0
  82. data/docs/dsl/by_method/show_group.md +1 -0
  83. data/docs/dsl/by_method/show_interface.md +1 -0
  84. data/docs/dsl/by_method/timer.md +1 -0
  85. data/docs/dsl/by_method/title.md +1 -0
  86. data/docs/dsl/by_method/toggle_cursor.md +1 -0
  87. data/docs/dsl/by_method/toggle_group.md +1 -0
  88. data/docs/dsl/by_method/toggle_interface.md +1 -0
  89. data/docs/dsl/by_method/top.md +1 -0
  90. data/docs/dsl/by_method/top_horizontal.md +1 -0
  91. data/docs/dsl/by_method/top_left.md +1 -0
  92. data/docs/dsl/by_method/top_right.md +1 -0
  93. data/docs/dsl/by_method/trigger.md +1 -0
  94. data/docs/dsl/by_method/unbind.md +1 -0
  95. data/docs/dsl/by_method/unbind_alias.md +1 -0
  96. data/docs/dsl/by_method/vertical.md +1 -0
  97. data/docs/dsl/by_method/width.md +1 -0
  98. data/docs/dsl/by_method/write.md +1 -0
  99. data/docs/dsl_elements.md +107 -100
  100. data/examples/dsl_alignment.rb +1 -1
  101. data/examples/dsl_colours.rb +1 -1
  102. data/examples/dsl_editor.rb +1 -1
  103. data/examples/dsl_horizontal_alignment.rb +1 -1
  104. data/examples/dsl_vertical_alignment.rb +1 -1
  105. data/examples/views/misc_view.rb +1 -1
  106. data/lib/vedeu/application/application_controller.rb +2 -0
  107. data/lib/vedeu/application/application_view.rb +2 -0
  108. data/lib/vedeu/borders/dsl.rb +1 -0
  109. data/lib/vedeu/borders/repository.rb +1 -0
  110. data/lib/vedeu/buffers/empty.rb +1 -0
  111. data/lib/vedeu/buffers/repository.rb +1 -0
  112. data/lib/vedeu/buffers/terminal.rb +3 -1
  113. data/lib/vedeu/cells/border.rb +0 -5
  114. data/lib/vedeu/cells/char.rb +0 -5
  115. data/lib/vedeu/cells/clear.rb +0 -5
  116. data/lib/vedeu/cells/cursor.rb +0 -5
  117. data/lib/vedeu/cells/empty.rb +0 -5
  118. data/lib/vedeu/cells/escape.rb +0 -5
  119. data/lib/vedeu/cells/support/html.rb +2 -0
  120. data/lib/vedeu/colours/backgrounds.rb +1 -0
  121. data/lib/vedeu/colours/foregrounds.rb +1 -0
  122. data/lib/vedeu/common.rb +0 -9
  123. data/lib/vedeu/configuration/configuration.rb +5 -0
  124. data/lib/vedeu/cursors/cursor.rb +3 -0
  125. data/lib/vedeu/cursors/repository.rb +2 -0
  126. data/lib/vedeu/distributed/server.rb +4 -0
  127. data/lib/vedeu/dsl/helpers/attributes.rb +4 -0
  128. data/lib/vedeu/dsl/views.rb +3 -0
  129. data/lib/vedeu/editor/repository.rb +1 -0
  130. data/lib/vedeu/esc/background.rb +2 -0
  131. data/lib/vedeu/esc/foreground.rb +2 -0
  132. data/lib/vedeu/events/aliases.rb +2 -0
  133. data/lib/vedeu/events/all.rb +1 -1
  134. data/lib/vedeu/events/event.rb +4 -1
  135. data/lib/vedeu/events/{collection.rb → events.rb} +3 -2
  136. data/lib/vedeu/events/repository.rb +4 -1
  137. data/lib/vedeu/events/trigger.rb +3 -0
  138. data/lib/vedeu/geometries/dsl/dsl.rb +1 -0
  139. data/lib/vedeu/geometries/repository.rb +1 -0
  140. data/lib/vedeu/groups/clear.rb +1 -0
  141. data/lib/vedeu/groups/dsl.rb +1 -0
  142. data/lib/vedeu/groups/group.rb +3 -0
  143. data/lib/vedeu/groups/repository.rb +1 -0
  144. data/lib/vedeu/input/capture.rb +1 -1
  145. data/lib/vedeu/input/dsl.rb +1 -0
  146. data/lib/vedeu/input/mapper.rb +1 -0
  147. data/lib/vedeu/input/read.rb +1 -0
  148. data/lib/vedeu/input/repository.rb +1 -0
  149. data/lib/vedeu/input/store.rb +6 -0
  150. data/lib/vedeu/interfaces/clear.rb +3 -1
  151. data/lib/vedeu/interfaces/dsl.rb +1 -0
  152. data/lib/vedeu/interfaces/interface.rb +3 -0
  153. data/lib/vedeu/interfaces/repository.rb +1 -0
  154. data/lib/vedeu/logging/clock_time.rb +1 -0
  155. data/lib/vedeu/logging/debug.rb +2 -0
  156. data/lib/vedeu/logging/log.rb +4 -0
  157. data/lib/vedeu/logging/timer.rb +1 -0
  158. data/lib/vedeu/menus/menu.rb +1 -0
  159. data/lib/vedeu/menus/repository.rb +1 -0
  160. data/lib/vedeu/models/focus.rb +6 -0
  161. data/lib/vedeu/output/all.rb +1 -0
  162. data/lib/vedeu/output/compressor.rb +17 -104
  163. data/lib/vedeu/output/compressor_cache.rb +43 -20
  164. data/lib/vedeu/output/compressors/all.rb +26 -0
  165. data/lib/vedeu/output/compressors/character.rb +105 -0
  166. data/lib/vedeu/output/compressors/simple.rb +67 -0
  167. data/lib/vedeu/output/output.rb +30 -24
  168. data/lib/vedeu/output/write.rb +1 -0
  169. data/lib/vedeu/renderers/all.rb +1 -0
  170. data/lib/vedeu/renderers/options.rb +1 -1
  171. data/lib/vedeu/renderers/terminal.rb +8 -7
  172. data/lib/vedeu/repositories/storage.rb +2 -0
  173. data/lib/vedeu/runtime/application.rb +15 -2
  174. data/lib/vedeu/runtime/flags.rb +4 -0
  175. data/lib/vedeu/runtime/router.rb +1 -0
  176. data/lib/vedeu/sentence.rb +2 -0
  177. data/lib/vedeu/support/point.rb +2 -0
  178. data/lib/vedeu/terminal/terminal.rb +1 -0
  179. data/lib/vedeu/version.rb +1 -1
  180. data/lib/vedeu/views/all.rb +2 -0
  181. data/lib/vedeu/views/composition.rb +5 -1
  182. data/lib/vedeu/views/line.rb +2 -0
  183. data/lib/vedeu/views/stream.rb +2 -0
  184. data/lib/vedeu/views/view.rb +3 -1
  185. data/test/lib/vedeu/cells/border_test.rb +0 -6
  186. data/test/lib/vedeu/cells/char_test.rb +0 -6
  187. data/test/lib/vedeu/cells/clear_test.rb +0 -6
  188. data/test/lib/vedeu/cells/cursor_test.rb +0 -4
  189. data/test/lib/vedeu/cells/empty_test.rb +0 -6
  190. data/test/lib/vedeu/cells/escape_test.rb +0 -4
  191. data/test/lib/vedeu/common_test.rb +0 -10
  192. data/test/lib/vedeu/events/{collection_test.rb → events_test.rb} +3 -3
  193. data/test/lib/vedeu/events/repository_test.rb +1 -1
  194. data/test/lib/vedeu/output/compressor_cache_test.rb +87 -63
  195. data/test/lib/vedeu/output/compressor_test.rb +31 -8
  196. data/test/lib/vedeu/output/compressors/character_test.rb +40 -0
  197. data/test/lib/vedeu/output/compressors/simple_test.rb +42 -0
  198. data/test/lib/vedeu/repositories/storage_test.rb +2 -0
  199. data/test/lib/vedeu/sentence_test.rb +2 -0
  200. data/test/lib/vedeu/support/point_test.rb +2 -0
  201. data/test/support/coverage.rb +2 -0
  202. data/test/support/examples/drb_app.rb +2 -0
  203. data/test/support/examples/focus_app.rb +2 -0
  204. data/test/support/examples/hello_world.rb +2 -0
  205. data/test/support/examples/material_colours_app.rb +7 -4
  206. data/test/support/examples/view_templates_app/view_templates_app.rb +2 -0
  207. data/test/support/ttyrec.rb +2 -0
  208. data/test/support/who.rb +2 -0
  209. metadata +13 -5
@@ -18,94 +18,118 @@ module Vedeu
18
18
 
19
19
  before { described.reset! }
20
20
 
21
- describe '#read' do
22
- let(:key) {}
21
+ describe '#cache' do
22
+ subject { described.cache(content, compression) }
23
23
 
24
- subject { described.read(key) }
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
- context 'when the key is nil' do
27
- it { subject.must_equal([]) }
29
+ context 'when compression is not enabled' do
30
+ # @todo Write more tests.
31
+ end
28
32
  end
29
33
 
30
- context 'when the key is not :compressed or :original' do
31
- let(:key) { :invalid }
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
- it { subject.must_equal([]) }
39
+ context 'when compression is not enabled' do
40
+ # @todo Write more tests.
41
+ end
34
42
  end
43
+ end
35
44
 
36
- context 'when the key is :compressed' do
37
- let(:key) { :compressed }
45
+ # describe '#read' do
46
+ # let(:key) {}
38
47
 
39
- context 'when there is no compressed data stored' do
40
- it { subject.must_equal('') }
41
- end
48
+ # subject { described.read(key) }
42
49
 
43
- context 'when there is compressed data stored' do
44
- before { described.write(:compressed, 'compressed_data') }
50
+ # context 'when the key is nil' do
51
+ # it { subject.must_equal([]) }
52
+ # end
45
53
 
46
- it { subject.must_equal('compressed_data') }
47
- end
48
- end
54
+ # context 'when the key is not :compressed or :original' do
55
+ # let(:key) { :invalid }
49
56
 
50
- context 'when the key is :original' do
51
- let(:key) { :original }
57
+ # it { subject.must_equal([]) }
58
+ # end
52
59
 
53
- context 'when there is no original data stored' do
54
- it { subject.must_equal([]) }
55
- end
60
+ # context 'when the key is :compressed' do
61
+ # let(:key) { :compressed }
56
62
 
57
- context 'when there is original data stored' do
58
- before { described.write(:original, [:original_data]) }
63
+ # context 'when there is no compressed data stored' do
64
+ # it { subject.must_equal('') }
65
+ # end
59
66
 
60
- it { subject.must_equal([:original_data]) }
61
- end
62
- end
63
- end
67
+ # context 'when there is compressed data stored' do
68
+ # before { described.write(:compressed, 'compressed_data') }
64
69
 
65
- describe '#write' do
66
- let(:key) {}
67
- let(:_value) {}
70
+ # it { subject.must_equal('compressed_data') }
71
+ # end
72
+ # end
68
73
 
69
- subject { described.write(key, _value) }
74
+ # context 'when the key is :original' do
75
+ # let(:key) { :original }
70
76
 
71
- context 'when the key is invalid' do
72
- context 'when the key is nil' do
73
- it { subject.must_equal(empty) }
74
- end
77
+ # context 'when there is no original data stored' do
78
+ # it { subject.must_equal([]) }
79
+ # end
75
80
 
76
- context 'when the key is invalid' do
77
- let(:key) { :invalid }
81
+ # context 'when there is original data stored' do
82
+ # before { described.write(:original, [:original_data]) }
78
83
 
79
- it { subject.must_equal(empty) }
80
- end
81
- end
84
+ # it { subject.must_equal([:original_data]) }
85
+ # end
86
+ # end
87
+ # end
82
88
 
83
- context 'when the key is valid' do
84
- let(:key) { :compressed }
89
+ # describe '#write' do
90
+ # let(:key) {}
91
+ # let(:_value) {}
85
92
 
86
- context 'when the value is nil' do
87
- it { subject.must_equal(empty) }
88
- end
93
+ # subject { described.write(key, _value) }
89
94
 
90
- context 'when the value is empty' do
91
- let(:_value) { [] }
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
- it { subject.must_equal(empty) }
94
- end
100
+ # context 'when the key is invalid' do
101
+ # let(:key) { :invalid }
95
102
 
96
- context 'when the value is not nil or empty' do
97
- let(:_value) { 'compressed_data' }
98
- let(:expected) {
99
- {
100
- compressed: 'compressed_data',
101
- original: [],
102
- }
103
- }
103
+ # it { subject.must_equal(empty) }
104
+ # end
105
+ # end
104
106
 
105
- it { subject.must_equal(expected) }
106
- end
107
- end
108
- end
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
- it { subject.must_be_instance_of(String) }
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(Vedeu::Models::Row.coerce([
106
- Vedeu::Cells::Char.new(name: _name, value: 'A', position: [1, 1]),
107
- Vedeu::Cells::Escape.new(value: "\e[?25l"),
108
- Vedeu::Cells::Char.new(name: _name, value: 'B', position: [1, 3]),
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
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'test_helper'
2
4
 
3
5
  module Vedeu
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'test_helper'
2
4
 
3
5
  module Vedeu
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'test_helper'
2
4
 
3
5
  module Vedeu
@@ -1,5 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ # frozen_string_literal: true
4
+
3
5
  # Find all methods which don't have corresponding test method, or all test
4
6
  # methods without corresponding method. Produces quite a few false positives,
5
7
  # but useful for a quick check.
@@ -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
 
@@ -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
 
@@ -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
 
@@ -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(Vedeu::Renderers::Terminal.new,
27
- Vedeu::Renderers::File.new(filename: '/tmp/material_colours.out'))
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
 
@@ -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
 
@@ -1,5 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ # frozen_string_literal: true
4
+
3
5
  #
4
6
  # ttyrec -a -e ./material_colours_app.rb /tmp/ttyrecord
5
7
  #
data/test/support/who.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
+ # frozen_string_literal: true
4
+
3
5
  require 'net/http'
4
6
  require 'json'
5
7
 
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.10
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-01-31 00:00:00.000000000 Z
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