vedeu 0.7.4 → 0.8.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.
Files changed (277) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +3 -0
  3. data/docs/api.md +5 -1
  4. data/docs/borders.md +2 -26
  5. data/docs/dsl.md +4 -4
  6. data/docs/dsl_elements.md +100 -0
  7. data/docs/events/by_name/action.md +3 -0
  8. data/docs/events/by_name/cursor_hide.md +3 -0
  9. data/docs/events/by_name/cursor_reset.md +3 -0
  10. data/docs/events/by_name/cursor_show.md +3 -0
  11. data/docs/events/by_name/geometry_down.md +3 -0
  12. data/docs/events/by_name/geometry_left.md +3 -0
  13. data/docs/events/by_name/geometry_right.md +3 -0
  14. data/docs/events/by_name/geometry_up.md +3 -0
  15. data/docs/events/by_name/hide_view.md +3 -0
  16. data/docs/events/by_name/set_border_caption.md +13 -0
  17. data/docs/events/by_name/set_border_title.md +13 -0
  18. data/docs/events/by_name/show_view.md +3 -0
  19. data/docs/events/by_name/standalone.md +3 -0
  20. data/docs/events/by_name/toggle_view.md +3 -0
  21. data/docs/events/by_name/view_down.md +4 -0
  22. data/docs/events/by_name/view_left.md +4 -0
  23. data/docs/events/by_name/view_right.md +4 -0
  24. data/docs/events/by_name/view_up.md +4 -0
  25. data/examples/views/empty_template.rb +46 -0
  26. data/examples/views/expected/line.out +1 -0
  27. data/examples/views/expected/lines.out +1 -0
  28. data/examples/views/expected/lines_alignment.out +1 -0
  29. data/examples/views/line.rb +220 -0
  30. data/examples/views/lines.rb +281 -0
  31. data/examples/views/lines_alignment.rb +231 -0
  32. data/examples/views/lines_line_stream.rb +99 -0
  33. data/examples/views/lines_line_streams.rb +73 -0
  34. data/examples/views/lines_line_streams_stream.rb +83 -0
  35. data/examples/views/lines_line_streams_stream_stream.rb +53 -0
  36. data/examples/views/lines_streams.rb +50 -0
  37. data/examples/views/lines_streams_stream.rb +51 -0
  38. data/examples/views/runner.sh +27 -0
  39. data/lib/vedeu/all.rb +6 -2
  40. data/lib/vedeu/application/controller.rb +1 -1
  41. data/lib/vedeu/boolean.rb +35 -0
  42. data/lib/vedeu/borders/border.rb +3 -3
  43. data/lib/vedeu/borders/caption.rb +1 -1
  44. data/lib/vedeu/borders/dsl.rb +1 -20
  45. data/lib/vedeu/borders/title.rb +6 -8
  46. data/lib/vedeu/buffers/buffer.rb +2 -2
  47. data/lib/vedeu/buffers/refresh.rb +1 -1
  48. data/lib/vedeu/cells/border.rb +0 -11
  49. data/lib/vedeu/cells/empty.rb +4 -4
  50. data/lib/vedeu/{geometries/alignment → coercers}/alignment.rb +50 -53
  51. data/lib/vedeu/coercers/all.rb +16 -0
  52. data/lib/vedeu/coercers/colour.rb +78 -0
  53. data/lib/vedeu/coercers/colour_attributes.rb +122 -0
  54. data/lib/vedeu/coercers/horizontal_alignment.rb +28 -0
  55. data/lib/vedeu/coercers/vertical_alignment.rb +27 -0
  56. data/lib/vedeu/colours/all.rb +1 -0
  57. data/lib/vedeu/colours/background.rb +13 -2
  58. data/lib/vedeu/colours/colour.rb +16 -31
  59. data/lib/vedeu/colours/foreground.rb +13 -2
  60. data/lib/vedeu/colours/translator.rb +21 -59
  61. data/lib/vedeu/colours/validator.rb +84 -0
  62. data/lib/vedeu/common.rb +52 -0
  63. data/lib/vedeu/configuration/api.rb +4 -10
  64. data/lib/vedeu/configuration/configuration.rb +4 -4
  65. data/lib/vedeu/cursors/coordinate.rb +1 -1
  66. data/lib/vedeu/cursors/cursor.rb +1 -1
  67. data/lib/vedeu/cursors/dsl.rb +1 -28
  68. data/lib/vedeu/dsl/all.rb +7 -7
  69. data/lib/vedeu/dsl/attributes.rb +224 -0
  70. data/lib/vedeu/dsl/border.rb +127 -0
  71. data/lib/vedeu/dsl/cursors.rb +44 -0
  72. data/lib/vedeu/dsl/dsl.rb +9 -0
  73. data/lib/vedeu/dsl/elements.rb +335 -0
  74. data/lib/vedeu/dsl/geometry.rb +113 -0
  75. data/lib/vedeu/dsl/string/align.rb +127 -0
  76. data/lib/vedeu/dsl/string/all.rb +14 -0
  77. data/lib/vedeu/dsl/string/text.rb +107 -0
  78. data/lib/vedeu/dsl/string/truncate.rb +111 -0
  79. data/lib/vedeu/{output → dsl/string}/wordwrap.rb +10 -6
  80. data/lib/vedeu/dsl/view.rb +124 -248
  81. data/lib/vedeu/dsl/views.rb +244 -0
  82. data/lib/vedeu/editor/cursor.rb +1 -1
  83. data/lib/vedeu/editor/delete.rb +3 -1
  84. data/lib/vedeu/editor/insert.rb +22 -6
  85. data/lib/vedeu/editor/line.rb +15 -9
  86. data/lib/vedeu/editor/lines.rb +27 -18
  87. data/lib/vedeu/esc/actions.rb +73 -26
  88. data/lib/vedeu/esc/all.rb +2 -0
  89. data/lib/vedeu/esc/background.rb +219 -0
  90. data/lib/vedeu/esc/borders.rb +72 -26
  91. data/lib/vedeu/esc/colours.rb +26 -27
  92. data/lib/vedeu/esc/esc.rb +4 -4
  93. data/lib/vedeu/esc/foreground.rb +219 -0
  94. data/lib/vedeu/esc/mouse.rb +16 -13
  95. data/lib/vedeu/events/aliases.rb +2 -2
  96. data/lib/vedeu/events/event.rb +1 -1
  97. data/lib/vedeu/geometries/all.rb +0 -1
  98. data/lib/vedeu/geometries/area/dimension.rb +2 -2
  99. data/lib/vedeu/geometries/dsl/dsl.rb +3 -51
  100. data/lib/vedeu/geometries/dsl/validator.rb +4 -4
  101. data/lib/vedeu/geometries/geometry.rb +10 -10
  102. data/lib/vedeu/geometries/move.rb +4 -4
  103. data/lib/vedeu/groups/dsl.rb +1 -0
  104. data/lib/vedeu/groups/group.rb +1 -1
  105. data/lib/vedeu/input/all.rb +1 -0
  106. data/lib/vedeu/input/capture.rb +14 -10
  107. data/lib/vedeu/input/dsl.rb +20 -26
  108. data/lib/vedeu/input/key.rb +0 -6
  109. data/lib/vedeu/input/keymap.rb +4 -9
  110. data/lib/vedeu/input/keys.rb +13 -0
  111. data/lib/vedeu/input/mapper.rb +29 -14
  112. data/lib/vedeu/input/read.rb +4 -2
  113. data/lib/vedeu/interfaces/dsl.rb +23 -22
  114. data/lib/vedeu/interfaces/interface.rb +2 -2
  115. data/lib/vedeu/logging/debug.rb +33 -0
  116. data/lib/vedeu/logging/log.rb +42 -33
  117. data/lib/vedeu/menus/dsl.rb +7 -18
  118. data/lib/vedeu/menus/menu.rb +1 -1
  119. data/lib/vedeu/models/focus.rb +1 -1
  120. data/lib/vedeu/models/toggleable.rb +4 -4
  121. data/lib/vedeu/null/generic.rb +2 -2
  122. data/lib/vedeu/output/all.rb +0 -2
  123. data/lib/vedeu/output/compressor_cache.rb +1 -1
  124. data/lib/vedeu/output/output.rb +5 -20
  125. data/lib/vedeu/presentation/colour.rb +39 -7
  126. data/lib/vedeu/presentation/style.rb +25 -11
  127. data/lib/vedeu/renderers/html.rb +11 -11
  128. data/lib/vedeu/repositories/assemblage.rb +9 -0
  129. data/lib/vedeu/repositories/collection.rb +1 -0
  130. data/lib/vedeu/repositories/defaults.rb +4 -1
  131. data/lib/vedeu/repositories/model.rb +7 -37
  132. data/lib/vedeu/repositories/parent.rb +6 -6
  133. data/lib/vedeu/repositories/registerable.rb +16 -2
  134. data/lib/vedeu/repositories/repositories.rb +1 -1
  135. data/lib/vedeu/repositories/repository.rb +2 -12
  136. data/lib/vedeu/runtime/flags.rb +1 -1
  137. data/lib/vedeu/terminal/terminal.rb +7 -2
  138. data/lib/vedeu/version.rb +1 -1
  139. data/lib/vedeu/views/all.rb +4 -1
  140. data/lib/vedeu/views/char.rb +5 -4
  141. data/lib/vedeu/views/chars.rb +42 -0
  142. data/lib/vedeu/views/composition.rb +15 -30
  143. data/lib/vedeu/views/default_attributes.rb +74 -0
  144. data/lib/vedeu/views/html_char.rb +2 -2
  145. data/lib/vedeu/views/line.rb +27 -53
  146. data/lib/vedeu/views/lines.rb +31 -0
  147. data/lib/vedeu/views/stream.rb +31 -78
  148. data/lib/vedeu/views/streams.rb +42 -0
  149. data/lib/vedeu/views/value.rb +150 -0
  150. data/lib/vedeu/views/view.rb +32 -36
  151. data/lib/vedeu/views/{view_collection.rb → views.rb} +2 -2
  152. data/test/lib/vedeu/application/application_controller_test.rb +5 -0
  153. data/test/lib/vedeu/application/controller_test.rb +22 -28
  154. data/test/lib/vedeu/boolean_test.rb +57 -0
  155. data/test/lib/vedeu/borders/border_test.rb +130 -36
  156. data/test/lib/vedeu/borders/dsl_test.rb +63 -10
  157. data/test/lib/vedeu/borders/title_test.rb +16 -5
  158. data/test/lib/vedeu/buffers/buffer_test.rb +26 -10
  159. data/test/lib/vedeu/buffers/empty_test.rb +1 -1
  160. data/test/lib/vedeu/cells/border_test.rb +0 -6
  161. data/test/lib/vedeu/cells/clear_test.rb +2 -0
  162. data/test/lib/vedeu/cells/empty_test.rb +12 -2
  163. data/test/lib/vedeu/cells/escape_test.rb +7 -2
  164. data/test/lib/vedeu/{geometries/alignment → coercers}/alignment_test.rb +44 -19
  165. data/test/lib/vedeu/coercers/colour_attributes_test.rb +168 -0
  166. data/test/lib/vedeu/coercers/colour_test.rb +75 -0
  167. data/test/lib/vedeu/{geometries/alignment → coercers}/horizontal_alignment_test.rb +6 -6
  168. data/test/lib/vedeu/{geometries/alignment → coercers}/vertical_alignment_test.rb +6 -6
  169. data/test/lib/vedeu/colours/background_test.rb +17 -1
  170. data/test/lib/vedeu/colours/colour_test.rb +74 -2
  171. data/test/lib/vedeu/colours/foreground_test.rb +17 -1
  172. data/test/lib/vedeu/colours/repository_test.rb +1 -1
  173. data/test/lib/vedeu/colours/translator_test.rb +8 -1
  174. data/test/lib/vedeu/colours/validator_test.rb +60 -0
  175. data/test/lib/vedeu/common_test.rb +138 -0
  176. data/test/lib/vedeu/configuration/api_test.rb +96 -51
  177. data/test/lib/vedeu/cursors/coordinate_test.rb +58 -117
  178. data/test/lib/vedeu/cursors/cursor_test.rb +46 -17
  179. data/test/lib/vedeu/cursors/dsl_test.rb +19 -5
  180. data/test/lib/vedeu/distributed/client_test.rb +8 -3
  181. data/test/lib/vedeu/distributed/server_test.rb +8 -0
  182. data/test/lib/vedeu/distributed/test_application_test.rb +62 -19
  183. data/test/lib/vedeu/distributed/uri_test.rb +4 -2
  184. data/test/lib/vedeu/dsl/attributes_test.rb +212 -0
  185. data/test/lib/vedeu/dsl/border_test.rb +51 -0
  186. data/test/lib/vedeu/dsl/{lines_test.rb → cursors_test.rb} +2 -2
  187. data/test/lib/vedeu/dsl/dsl_test.rb +44 -0
  188. data/test/lib/vedeu/dsl/elements_test.rb +118 -0
  189. data/test/lib/vedeu/dsl/geometry_test.rb +35 -0
  190. data/test/lib/vedeu/dsl/presentation_test.rb +52 -11
  191. data/test/lib/vedeu/dsl/string/align_test.rb +147 -0
  192. data/test/lib/vedeu/dsl/string/text_test.rb +213 -0
  193. data/test/lib/vedeu/dsl/string/truncate_test.rb +97 -0
  194. data/test/lib/vedeu/{output → dsl/string}/wordwrap_test.rb +3 -3
  195. data/test/lib/vedeu/dsl/view_test.rb +30 -42
  196. data/test/lib/vedeu/dsl/views_test.rb +61 -0
  197. data/test/lib/vedeu/editor/cursor_test.rb +30 -12
  198. data/test/lib/vedeu/editor/document_test.rb +18 -10
  199. data/test/lib/vedeu/editor/line_test.rb +4 -1
  200. data/test/lib/vedeu/editor/lines_test.rb +11 -3
  201. data/test/lib/vedeu/esc/actions_test.rb +42 -4
  202. data/test/lib/vedeu/esc/background_test.rb +185 -0
  203. data/test/lib/vedeu/esc/borders_test.rb +37 -9
  204. data/test/lib/vedeu/esc/colours_test.rb +0 -59
  205. data/test/lib/vedeu/esc/foreground_test.rb +185 -0
  206. data/test/lib/vedeu/esc/mouse_test.rb +9 -4
  207. data/test/lib/vedeu/geometries/area/area_test.rb +34 -11
  208. data/test/lib/vedeu/geometries/dsl/dsl_test.rb +52 -61
  209. data/test/lib/vedeu/geometries/geometry_test.rb +62 -18
  210. data/test/lib/vedeu/geometries/position_test.rb +14 -7
  211. data/test/lib/vedeu/groups/dsl_test.rb +24 -15
  212. data/test/lib/vedeu/groups/group_test.rb +18 -8
  213. data/test/lib/vedeu/input/dsl_test.rb +33 -16
  214. data/test/lib/vedeu/input/key_test.rb +8 -1
  215. data/test/lib/vedeu/input/keymap_test.rb +4 -1
  216. data/test/lib/vedeu/input/keys_test.rb +16 -0
  217. data/test/lib/vedeu/interfaces/dsl_test.rb +24 -30
  218. data/test/lib/vedeu/interfaces/interface_test.rb +79 -24
  219. data/test/lib/vedeu/logging/ips_test.rb +10 -1
  220. data/test/lib/vedeu/menus/dsl_test.rb +24 -23
  221. data/test/lib/vedeu/menus/menu_test.rb +18 -8
  222. data/test/lib/vedeu/models/page_test.rb +5 -1
  223. data/test/lib/vedeu/models/row_test.rb +4 -0
  224. data/test/lib/vedeu/models/toggleable_test.rb +10 -6
  225. data/test/lib/vedeu/null/generic_test.rb +90 -1
  226. data/test/lib/vedeu/output/viewport_test.rb +11 -10
  227. data/test/lib/vedeu/plugins/plugin_test.rb +22 -9
  228. data/test/lib/vedeu/presentation/colour_test.rb +2 -1
  229. data/test/lib/vedeu/presentation/presentation_test.rb +13 -8
  230. data/test/lib/vedeu/presentation/style_test.rb +28 -13
  231. data/test/lib/vedeu/renderers/file_test.rb +4 -2
  232. data/test/lib/vedeu/renderers/options_test.rb +1 -1
  233. data/test/lib/vedeu/repositories/assemblage_test.rb +18 -0
  234. data/test/lib/vedeu/repositories/collection_test.rb +34 -10
  235. data/test/lib/vedeu/repositories/defaults_test.rb +6 -0
  236. data/test/lib/vedeu/repositories/model_test.rb +4 -13
  237. data/test/lib/vedeu/repositories/repository_test.rb +12 -5
  238. data/test/lib/vedeu/repositories/store_test.rb +9 -0
  239. data/test/lib/vedeu/runtime/flags_test.rb +6 -4
  240. data/test/lib/vedeu/runtime/launcher_test.rb +1 -1
  241. data/test/lib/vedeu/templating/helpers_test.rb +93 -65
  242. data/test/lib/vedeu/templating/view_template_test.rb +26 -26
  243. data/test/lib/vedeu/views/char_test.rb +36 -11
  244. data/test/lib/vedeu/views/chars_test.rb +71 -0
  245. data/test/lib/vedeu/views/composition_test.rb +17 -16
  246. data/test/lib/vedeu/views/default_attributes_test.rb +97 -0
  247. data/test/lib/vedeu/views/line_test.rb +20 -75
  248. data/test/lib/vedeu/views/lines_test.rb +47 -0
  249. data/test/lib/vedeu/views/stream_test.rb +38 -63
  250. data/test/lib/vedeu/views/streams_test.rb +9 -0
  251. data/test/lib/vedeu/views/value_test.rb +112 -0
  252. data/test/lib/vedeu/views/view_test.rb +67 -45
  253. data/test/lib/vedeu/views/views_test.rb +22 -0
  254. data/test/support/examples/material_colours_app.rb +2 -2
  255. data/test/support/helpers/model_test_class.rb +1 -0
  256. data/test/test_helper.rb +3 -1
  257. data/vedeu.gemspec +2 -2
  258. metadata +124 -58
  259. data/lib/vedeu/dsl/composition.rb +0 -150
  260. data/lib/vedeu/dsl/line.rb +0 -119
  261. data/lib/vedeu/dsl/lines.rb +0 -23
  262. data/lib/vedeu/dsl/shared.rb +0 -85
  263. data/lib/vedeu/dsl/stream.rb +0 -40
  264. data/lib/vedeu/dsl/streams.rb +0 -23
  265. data/lib/vedeu/dsl/text.rb +0 -98
  266. data/lib/vedeu/geometries/alignment/all.rb +0 -11
  267. data/lib/vedeu/geometries/alignment/horizontal_alignment.rb +0 -27
  268. data/lib/vedeu/geometries/alignment/vertical_alignment.rb +0 -27
  269. data/lib/vedeu/output/text.rb +0 -275
  270. data/test/lib/vedeu/dsl/composition_test.rb +0 -67
  271. data/test/lib/vedeu/dsl/line_test.rb +0 -85
  272. data/test/lib/vedeu/dsl/shared_test.rb +0 -66
  273. data/test/lib/vedeu/dsl/stream_test.rb +0 -30
  274. data/test/lib/vedeu/dsl/streams_test.rb +0 -13
  275. data/test/lib/vedeu/dsl/text_test.rb +0 -122
  276. data/test/lib/vedeu/output/text_test.rb +0 -156
  277. data/test/lib/vedeu/views/view_collection_test.rb +0 -13
@@ -6,9 +6,9 @@ module Vedeu
6
6
  #
7
7
  # @api private
8
8
  #
9
- class ViewCollection < Vedeu::Repositories::Collection
9
+ class Views < Vedeu::Repositories::Collection
10
10
 
11
- end # ViewCollection
11
+ end # Views
12
12
 
13
13
  end # Views
14
14
 
@@ -28,8 +28,13 @@ module Vedeu
28
28
  Vedeu.expects(:trigger).with(:_goto_, controller, action, params)
29
29
  subject
30
30
  end
31
+ end
31
32
 
33
+ describe '#redirect' do
32
34
  it { instance.must_respond_to(:redirect) }
35
+ end
36
+
37
+ describe '#goto' do
33
38
  it { instance.must_respond_to(:goto) }
34
39
  end
35
40
 
@@ -14,45 +14,39 @@ module Vedeu
14
14
  describe Controller do
15
15
 
16
16
  let(:described) { Vedeu::Controller }
17
-
18
17
  let(:described_model) { Vedeu::ControllerTestKlass }
19
18
  let(:instance_model) { described.new }
20
19
 
21
- describe 'ClassMethods' do
22
- let(:described) { Vedeu::Controller::ClassMethods }
23
-
24
- it { described_model.must_respond_to(:controller_name) }
25
- it { described_model.must_respond_to(:action_name) }
26
- it { described_model.must_respond_to(:controller) }
27
- it { described_model.must_respond_to(:action) }
28
-
29
- describe '.controller' do
30
- subject { described_model.controller(:some_controller) }
20
+ it { described_model.must_respond_to(:controller_name) }
21
+ it { described_model.must_respond_to(:action_name) }
22
+ it { described_model.must_respond_to(:controller) }
23
+ it { described_model.must_respond_to(:action) }
31
24
 
32
- it do
33
- Vedeu::Runtime::Router.expects(:add_controller).
34
- with(:some_controller, 'Vedeu::ControllerTestKlass')
35
- subject
36
- end
25
+ describe '.controller' do
26
+ subject { described_model.controller(:some_controller) }
37
27
 
38
- it { subject.must_be_instance_of(Hash) }
28
+ it do
29
+ Vedeu::Runtime::Router.expects(:add_controller).
30
+ with(:some_controller, 'Vedeu::ControllerTestKlass')
31
+ subject
39
32
  end
40
33
 
41
- describe '.action' do
42
- subject { described_model.action(:some_action, :other_action) }
34
+ it { subject.must_be_instance_of(Hash) }
35
+ end
43
36
 
44
- it do
45
- Vedeu::Runtime::Router.expects(:add_action).
46
- with(:some_controller, :some_action)
47
- Vedeu::Runtime::Router.expects(:add_action).
48
- with(:some_controller, :other_action)
49
- subject
50
- end
37
+ describe '.action' do
38
+ subject { described_model.action(:some_action, :other_action) }
51
39
 
52
- it { subject.must_be_instance_of(Array) }
40
+ it do
41
+ Vedeu::Runtime::Router.expects(:add_action).
42
+ with(:some_controller, :some_action)
43
+ Vedeu::Runtime::Router.expects(:add_action).
44
+ with(:some_controller, :other_action)
45
+ subject
53
46
  end
54
47
 
55
- end # ClassMethods
48
+ it { subject.must_be_instance_of(Array) }
49
+ end
56
50
 
57
51
  end # Controller
58
52
 
@@ -0,0 +1,57 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ describe Boolean do
6
+
7
+ let(:described) { Vedeu::Boolean }
8
+ let(:instance) { described.new(_value) }
9
+ let(:_value) {}
10
+
11
+ describe '#initialize' do
12
+ it { instance.must_be_instance_of(Vedeu::Boolean) }
13
+ end
14
+
15
+ describe '#false?' do
16
+ subject { instance.false? }
17
+
18
+ context 'when the value is nil' do
19
+ it { subject.must_equal(true) }
20
+ end
21
+
22
+ context 'when the value is false' do
23
+ let(:_value) { false }
24
+
25
+ it { subject.must_equal(true) }
26
+ end
27
+
28
+ context 'when the value is anything else' do
29
+ let(:_value) { :anything }
30
+
31
+ it { subject.must_equal(false) }
32
+ end
33
+ end
34
+
35
+ describe '#true?' do
36
+ subject { instance.true? }
37
+
38
+ context 'when the value is nil' do
39
+ it { subject.must_equal(false) }
40
+ end
41
+
42
+ context 'when the value is true' do
43
+ let(:_value) { true }
44
+
45
+ it { subject.must_equal(true) }
46
+ end
47
+
48
+ context 'when the value is anything else' do
49
+ let(:_value) { :anything }
50
+
51
+ it { subject.must_equal(true) }
52
+ end
53
+ end
54
+
55
+ end # Boolean
56
+
57
+ end # Vedeu
@@ -60,42 +60,136 @@ module Vedeu
60
60
  it { instance.must_be_instance_of(described) }
61
61
  end
62
62
 
63
- describe 'accessors' do
64
- it do
65
- instance.must_respond_to(:attributes)
66
- instance.must_respond_to(:bottom_horizontal=)
67
- instance.must_respond_to(:bottom_left=)
68
- instance.must_respond_to(:bottom_right=)
69
- instance.must_respond_to(:caption)
70
- instance.must_respond_to(:caption=)
71
- instance.must_respond_to(:horizontal)
72
- instance.must_respond_to(:horizontal=)
73
- instance.must_respond_to(:show_bottom)
74
- instance.must_respond_to(:bottom?)
75
- instance.must_respond_to(:show_bottom=)
76
- instance.must_respond_to(:show_left)
77
- instance.must_respond_to(:left?)
78
- instance.must_respond_to(:show_left=)
79
- instance.must_respond_to(:show_right)
80
- instance.must_respond_to(:right?)
81
- instance.must_respond_to(:show_right=)
82
- instance.must_respond_to(:show_top)
83
- instance.must_respond_to(:top?)
84
- instance.must_respond_to(:show_top=)
85
- instance.must_respond_to(:title)
86
- instance.must_respond_to(:title=)
87
- instance.must_respond_to(:top_horizontal=)
88
- instance.must_respond_to(:top_left=)
89
- instance.must_respond_to(:top_right=)
90
- instance.must_respond_to(:left_vertical=)
91
- instance.must_respond_to(:right_vertical=)
92
- instance.must_respond_to(:vertical)
93
- instance.must_respond_to(:vertical=)
94
- instance.must_respond_to(:name)
95
- instance.must_respond_to(:enabled)
96
- instance.must_respond_to(:enabled=)
97
- instance.must_respond_to(:enabled?)
98
- end
63
+ describe '#attributes' do
64
+ it { instance.must_respond_to(:attributes) }
65
+ end
66
+
67
+ describe '#bottom_horizontal=' do
68
+ it { instance.must_respond_to(:bottom_horizontal=) }
69
+ end
70
+
71
+ describe '#bottom_left=' do
72
+ it { instance.must_respond_to(:bottom_left=) }
73
+ end
74
+
75
+ describe '#bottom_right=' do
76
+ it { instance.must_respond_to(:bottom_right=) }
77
+ end
78
+
79
+ describe '#caption' do
80
+ it { instance.must_respond_to(:caption) }
81
+ end
82
+
83
+ describe '#caption=' do
84
+ it { instance.must_respond_to(:caption=) }
85
+ end
86
+
87
+ describe '#horizontal' do
88
+ it { instance.must_respond_to(:horizontal) }
89
+ end
90
+
91
+ describe '#horizontal=' do
92
+ it { instance.must_respond_to(:horizontal=) }
93
+ end
94
+
95
+ describe '#show_bottom' do
96
+ it { instance.must_respond_to(:show_bottom) }
97
+ end
98
+
99
+ describe '#bottom?' do
100
+ it { instance.must_respond_to(:bottom?) }
101
+ end
102
+
103
+ describe '#show_bottom=' do
104
+ it { instance.must_respond_to(:show_bottom=) }
105
+ end
106
+
107
+ describe '#show_left' do
108
+ it { instance.must_respond_to(:show_left) }
109
+ end
110
+
111
+ describe '#left?' do
112
+ it { instance.must_respond_to(:left?) }
113
+ end
114
+
115
+ describe '#show_left=' do
116
+ it { instance.must_respond_to(:show_left=) }
117
+ end
118
+
119
+ describe '#show_right' do
120
+ it { instance.must_respond_to(:show_right) }
121
+ end
122
+
123
+ describe '#right?' do
124
+ it { instance.must_respond_to(:right?) }
125
+ end
126
+
127
+ describe '#show_right=' do
128
+ it { instance.must_respond_to(:show_right=) }
129
+ end
130
+
131
+ describe '#show_top' do
132
+ it { instance.must_respond_to(:show_top) }
133
+ end
134
+
135
+ describe '#top?' do
136
+ it { instance.must_respond_to(:top?) }
137
+ end
138
+
139
+ describe '#show_top=' do
140
+ it { instance.must_respond_to(:show_top=) }
141
+ end
142
+
143
+ describe '#title' do
144
+ it { instance.must_respond_to(:title) }
145
+ end
146
+
147
+ describe '#title=' do
148
+ it { instance.must_respond_to(:title=) }
149
+ end
150
+
151
+ describe '#top_horizontal=' do
152
+ it { instance.must_respond_to(:top_horizontal=) }
153
+ end
154
+
155
+ describe '#top_left=' do
156
+ it { instance.must_respond_to(:top_left=) }
157
+ end
158
+
159
+ describe '#top_right=' do
160
+ it { instance.must_respond_to(:top_right=) }
161
+ end
162
+
163
+ describe '#left_vertical=' do
164
+ it { instance.must_respond_to(:left_vertical=) }
165
+ end
166
+
167
+ describe '#right_vertical=' do
168
+ it { instance.must_respond_to(:right_vertical=) }
169
+ end
170
+
171
+ describe '#vertical' do
172
+ it { instance.must_respond_to(:vertical) }
173
+ end
174
+
175
+ describe '#vertical=' do
176
+ it { instance.must_respond_to(:vertical=) }
177
+ end
178
+
179
+ describe '#name' do
180
+ it { instance.must_respond_to(:name) }
181
+ end
182
+
183
+ describe '#enabled' do
184
+ it { instance.must_respond_to(:enabled) }
185
+ end
186
+
187
+ describe '#enabled=' do
188
+ it { instance.must_respond_to(:enabled=) }
189
+ end
190
+
191
+ describe '#enabled?' do
192
+ it { instance.must_respond_to(:enabled?) }
99
193
  end
100
194
 
101
195
  describe '#deputy' do
@@ -43,6 +43,8 @@ module Vedeu
43
43
  subject { instance.bottom_left(char, options) }
44
44
 
45
45
  it { subject.must_be_instance_of(Vedeu::Cells::BottomLeft) }
46
+ end
47
+ describe '#bottom_left=' do
46
48
  it { instance.must_respond_to(:bottom_left=) }
47
49
  end
48
50
 
@@ -53,6 +55,8 @@ module Vedeu
53
55
  subject { instance.bottom_right(char, options) }
54
56
 
55
57
  it { subject.must_be_instance_of(Vedeu::Cells::BottomRight) }
58
+ end
59
+ describe '#bottom_right=' do
56
60
  it { instance.must_respond_to(:bottom_right=) }
57
61
  end
58
62
 
@@ -75,6 +79,9 @@ module Vedeu
75
79
  subject { instance.top_horizontal(char, options) }
76
80
 
77
81
  it { subject.must_be_instance_of(Vedeu::Cells::TopHorizontal) }
82
+ end
83
+
84
+ describe '#top_horizontal=' do
78
85
  it { instance.must_respond_to(:top_horizontal=) }
79
86
  end
80
87
 
@@ -85,6 +92,9 @@ module Vedeu
85
92
  subject { instance.bottom_horizontal(char, options) }
86
93
 
87
94
  it { subject.must_be_instance_of(Vedeu::Cells::BottomHorizontal) }
95
+ end
96
+
97
+ describe '#bottom_horizontal=' do
88
98
  it { instance.must_respond_to(:bottom_horizontal=) }
89
99
  end
90
100
 
@@ -95,13 +105,15 @@ module Vedeu
95
105
  subject { instance.horizontal(char, options) }
96
106
 
97
107
  it { subject.must_be_instance_of(Vedeu::Cells::Horizontal) }
108
+ end
109
+
110
+ describe '#horizontal=' do
98
111
  it { instance.must_respond_to(:horizontal=) }
99
112
  end
100
113
 
101
114
  describe '#show_bottom' do
102
115
  subject { instance.show_bottom(boolean) }
103
116
 
104
- it { instance.must_respond_to(:bottom) }
105
117
  it { subject.must_be_instance_of(TrueClass) }
106
118
 
107
119
  context 'when false' do
@@ -109,8 +121,13 @@ module Vedeu
109
121
 
110
122
  it { subject.must_be_instance_of(FalseClass) }
111
123
  end
124
+ end
112
125
 
126
+ describe '#bottom' do
113
127
  it { instance.must_respond_to(:bottom) }
128
+ end
129
+
130
+ describe '#bottom=' do
114
131
  it { instance.must_respond_to(:bottom=) }
115
132
  end
116
133
 
@@ -131,9 +148,6 @@ module Vedeu
131
148
 
132
149
  it { subject.must_be_instance_of(TrueClass) }
133
150
 
134
- it { instance.must_respond_to(:left) }
135
- it { instance.must_respond_to(:left=) }
136
-
137
151
  context 'when false' do
138
152
  let(:boolean) { false }
139
153
 
@@ -141,6 +155,14 @@ module Vedeu
141
155
  end
142
156
  end
143
157
 
158
+ describe '#left' do
159
+ it { instance.must_respond_to(:left) }
160
+ end
161
+
162
+ describe '#left=' do
163
+ it { instance.must_respond_to(:left=) }
164
+ end
165
+
144
166
  describe '#hide_left!' do
145
167
  subject { instance.hide_left! }
146
168
 
@@ -158,9 +180,6 @@ module Vedeu
158
180
 
159
181
  it { subject.must_be_instance_of(TrueClass) }
160
182
 
161
- it { instance.must_respond_to(:right) }
162
- it { instance.must_respond_to(:right=) }
163
-
164
183
  context 'when false' do
165
184
  let(:boolean) { false }
166
185
 
@@ -168,6 +187,14 @@ module Vedeu
168
187
  end
169
188
  end
170
189
 
190
+ describe '#right' do
191
+ it { instance.must_respond_to(:right) }
192
+ end
193
+
194
+ describe '#right=' do
195
+ it { instance.must_respond_to(:right=) }
196
+ end
197
+
171
198
  describe '#hide_right!' do
172
199
  subject { instance.hide_right! }
173
200
 
@@ -185,9 +212,6 @@ module Vedeu
185
212
 
186
213
  it { subject.must_be_instance_of(TrueClass) }
187
214
 
188
- it { instance.must_respond_to(:top) }
189
- it { instance.must_respond_to(:top=) }
190
-
191
215
  context 'when false' do
192
216
  let(:boolean) { false }
193
217
 
@@ -195,6 +219,14 @@ module Vedeu
195
219
  end
196
220
  end
197
221
 
222
+ describe '#top' do
223
+ it { instance.must_respond_to(:top) }
224
+ end
225
+
226
+ describe '#top=' do
227
+ it { instance.must_respond_to(:top=) }
228
+ end
229
+
198
230
  describe '#hide_top!' do
199
231
  subject { instance.hide_top! }
200
232
 
@@ -214,6 +246,9 @@ module Vedeu
214
246
 
215
247
  it { subject.must_be_instance_of(String) }
216
248
  it { subject.must_equal('Some title') }
249
+ end
250
+
251
+ describe '#title=' do
217
252
  it { instance.must_respond_to(:title=) }
218
253
  end
219
254
 
@@ -224,6 +259,9 @@ module Vedeu
224
259
 
225
260
  it { subject.must_be_instance_of(String) }
226
261
  it { subject.must_equal('Some caption') }
262
+ end
263
+
264
+ describe '#caption=' do
227
265
  it { instance.must_respond_to(:caption=) }
228
266
  end
229
267
 
@@ -234,6 +272,9 @@ module Vedeu
234
272
  subject { instance.top_left(char, options) }
235
273
 
236
274
  it { subject.must_be_instance_of(Vedeu::Cells::TopLeft) }
275
+ end
276
+
277
+ describe '#top_left=' do
237
278
  it { instance.must_respond_to(:top_left=) }
238
279
  end
239
280
 
@@ -244,6 +285,9 @@ module Vedeu
244
285
  subject { instance.top_right(char, options) }
245
286
 
246
287
  it { subject.must_be_instance_of(Vedeu::Cells::TopRight) }
288
+ end
289
+
290
+ describe '#top_right=' do
247
291
  it { instance.must_respond_to(:top_right=) }
248
292
  end
249
293
 
@@ -273,6 +317,9 @@ module Vedeu
273
317
  subject { instance.left_vertical(char, options) }
274
318
 
275
319
  it { subject.must_be_instance_of(Vedeu::Cells::LeftVertical) }
320
+ end
321
+
322
+ describe '#left_vertical=' do
276
323
  it { instance.must_respond_to(:left_vertical=) }
277
324
  end
278
325
 
@@ -283,6 +330,9 @@ module Vedeu
283
330
  subject { instance.right_vertical(char, options) }
284
331
 
285
332
  it { subject.must_be_instance_of(Vedeu::Cells::RightVertical) }
333
+ end
334
+
335
+ describe '#right_vertical=' do
286
336
  it { instance.must_respond_to(:right_vertical=) }
287
337
  end
288
338
 
@@ -293,6 +343,9 @@ module Vedeu
293
343
  subject { instance.vertical(char, options) }
294
344
 
295
345
  it { subject.must_be_instance_of(Vedeu::Cells::Vertical) }
346
+ end
347
+
348
+ describe '#vertical=' do
296
349
  it { instance.must_respond_to(:vertical=) }
297
350
  end
298
351