vedeu 0.7.4 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
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