vedeu 0.4.17 → 0.4.18

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 (127) hide show
  1. checksums.yaml +4 -4
  2. data/docs/dsl.md +54 -0
  3. data/docs/views.md +25 -25
  4. data/examples/cursor_app.rb +1 -1
  5. data/examples/material_colours_app.rb +1 -1
  6. data/lib/vedeu/all.rb +1 -0
  7. data/lib/vedeu/bindings.rb +2 -15
  8. data/lib/vedeu/buffers/buffer.rb +30 -7
  9. data/lib/vedeu/buffers/display_buffer.rb +1 -1
  10. data/lib/vedeu/configuration/configuration.rb +1 -1
  11. data/lib/vedeu/cursor/refresh_cursor.rb +4 -0
  12. data/lib/vedeu/dsl/components/border.rb +6 -1
  13. data/lib/vedeu/geometry/all.rb +0 -1
  14. data/lib/vedeu/geometry/area.rb +0 -20
  15. data/lib/vedeu/geometry/coordinate.rb +0 -50
  16. data/lib/vedeu/geometry/geometry.rb +1 -5
  17. data/lib/vedeu/geometry/position.rb +9 -0
  18. data/lib/vedeu/geometry/position_index.rb +19 -14
  19. data/lib/vedeu/geometry/position_validator.rb +3 -0
  20. data/lib/vedeu/models/all.rb +0 -3
  21. data/lib/vedeu/models/interface.rb +2 -4
  22. data/lib/vedeu/null/all.rb +5 -0
  23. data/lib/vedeu/null/border.rb +79 -0
  24. data/lib/vedeu/null/buffer.rb +44 -0
  25. data/lib/vedeu/null/generic.rb +52 -0
  26. data/lib/vedeu/null/geometry.rb +70 -0
  27. data/lib/vedeu/null/interface.rb +23 -0
  28. data/lib/vedeu/output/all.rb +0 -1
  29. data/lib/vedeu/output/border.rb +9 -9
  30. data/lib/vedeu/output/clear.rb +2 -1
  31. data/lib/vedeu/output/output.rb +1 -1
  32. data/lib/vedeu/output/refresh.rb +1 -1
  33. data/lib/vedeu/output/renderers/all.rb +7 -7
  34. data/lib/vedeu/output/renderers/escape_sequence.rb +47 -0
  35. data/lib/vedeu/output/renderers/{file_renderer.rb → file.rb} +11 -6
  36. data/lib/vedeu/output/renderers/{html_renderer.rb → html.rb} +4 -4
  37. data/lib/vedeu/output/renderers/{json_renderer.rb → json.rb} +4 -4
  38. data/lib/vedeu/output/renderers/{null_renderer.rb → null.rb} +2 -2
  39. data/lib/vedeu/output/renderers/{terminal_renderer.rb → terminal.rb} +4 -4
  40. data/lib/vedeu/output/renderers/{text_renderer.rb → text.rb} +4 -4
  41. data/lib/vedeu/output/text.rb +2 -2
  42. data/lib/vedeu/output/virtual_terminal.rb +2 -2
  43. data/lib/vedeu/repositories/all.rb +2 -0
  44. data/lib/vedeu/repositories/repositories/borders.rb +4 -2
  45. data/lib/vedeu/repositories/repositories/buffers.rb +11 -9
  46. data/lib/vedeu/repositories/repositories/cursors.rb +2 -0
  47. data/lib/vedeu/repositories/repositories/events_repository.rb +2 -0
  48. data/lib/vedeu/repositories/repositories/geometries.rb +4 -2
  49. data/lib/vedeu/repositories/repositories/groups.rb +2 -0
  50. data/lib/vedeu/repositories/repositories/interfaces_repository.rb +4 -2
  51. data/lib/vedeu/repositories/repositories/keymaps.rb +2 -0
  52. data/lib/vedeu/repositories/repositories/menus.rb +2 -0
  53. data/test/lib/vedeu/cursor/cursor_test.rb +1 -1
  54. data/test/lib/vedeu/cursor/move_test.rb +21 -33
  55. data/test/lib/vedeu/cursor/refresh_cursor_test.rb +16 -1
  56. data/test/lib/vedeu/distributed/test_application_test.rb +1 -1
  57. data/test/lib/vedeu/dsl/components/border_test.rb +1 -1
  58. data/test/lib/vedeu/dsl/components/geometry_test.rb +5 -5
  59. data/test/lib/vedeu/dsl/components/menu_test.rb +1 -1
  60. data/test/lib/vedeu/dsl/composition_test.rb +1 -1
  61. data/test/lib/vedeu/dsl/group_test.rb +1 -1
  62. data/test/lib/vedeu/dsl/interface_test.rb +1 -1
  63. data/test/lib/vedeu/dsl/stream_test.rb +1 -1
  64. data/test/lib/vedeu/events/event_test.rb +8 -8
  65. data/test/lib/vedeu/events/trigger_test.rb +1 -1
  66. data/test/lib/vedeu/geometry/area_test.rb +4 -36
  67. data/test/lib/vedeu/geometry/canvas_test.rb +2 -2
  68. data/test/lib/vedeu/geometry/coordinate_test.rb +0 -56
  69. data/test/lib/vedeu/geometry/dimension_test.rb +1 -1
  70. data/test/lib/vedeu/geometry/geometry_test.rb +1 -1
  71. data/test/lib/vedeu/geometry/grid_test.rb +1 -1
  72. data/test/lib/vedeu/geometry/position_index_test.rb +21 -23
  73. data/test/lib/vedeu/geometry/position_validator_test.rb +121 -3
  74. data/test/lib/vedeu/input/input_test.rb +1 -1
  75. data/test/lib/vedeu/input/key_test.rb +1 -1
  76. data/test/lib/vedeu/input/keymap_test.rb +1 -1
  77. data/test/lib/vedeu/models/interface_test.rb +14 -0
  78. data/test/lib/vedeu/null/border_test.rb +76 -0
  79. data/test/lib/vedeu/null/generic_test.rb +69 -0
  80. data/test/lib/vedeu/null/geometry_test.rb +63 -0
  81. data/test/lib/vedeu/null/interface_test.rb +13 -0
  82. data/test/lib/vedeu/output/clear_test.rb +1 -1
  83. data/test/lib/vedeu/output/compressor_test.rb +1 -1
  84. data/test/lib/vedeu/output/html_char_test.rb +1 -1
  85. data/test/lib/vedeu/output/output_test.rb +1 -1
  86. data/test/lib/vedeu/output/refresh_test.rb +17 -5
  87. data/test/lib/vedeu/output/renderers/escape_sequence_renderer_test.rb +4 -4
  88. data/test/lib/vedeu/output/renderers/{file_renderer_test.rb → file_test.rb} +4 -4
  89. data/test/lib/vedeu/output/renderers/{html_renderer_test.rb → html_test.rb} +4 -4
  90. data/test/lib/vedeu/output/renderers/{json_renderer_test.rb → json_test.rb} +4 -4
  91. data/test/lib/vedeu/output/renderers/{null_renderer_test.rb → null_test.rb} +3 -3
  92. data/test/lib/vedeu/output/renderers/{terminal_renderer_test.rb → terminal_test.rb} +4 -4
  93. data/test/lib/vedeu/output/renderers/{text_renderer_test.rb → text_test.rb} +4 -4
  94. data/test/lib/vedeu/output/style_test.rb +1 -1
  95. data/test/lib/vedeu/output/translator_test.rb +1 -1
  96. data/test/lib/vedeu/output/viewport_test.rb +1 -1
  97. data/test/lib/vedeu/output/virtual_terminal_test.rb +3 -3
  98. data/test/lib/vedeu/repositories/collection_test.rb +2 -2
  99. data/test/lib/vedeu/repositories/collections/chars_test.rb +1 -1
  100. data/test/lib/vedeu/repositories/collections/events_test.rb +1 -1
  101. data/test/lib/vedeu/repositories/collections/interfaces_test.rb +1 -1
  102. data/test/lib/vedeu/repositories/collections/keys_test.rb +1 -1
  103. data/test/lib/vedeu/repositories/collections/lines_test.rb +1 -1
  104. data/test/lib/vedeu/repositories/collections/streams_test.rb +1 -1
  105. data/test/lib/vedeu/repositories/repositories/borders_test.rb +1 -1
  106. data/test/lib/vedeu/repositories/repositories/buffers_test.rb +11 -23
  107. data/test/lib/vedeu/repositories/repositories/colours_test.rb +1 -1
  108. data/test/lib/vedeu/repositories/repositories/geometries_test.rb +1 -1
  109. data/test/lib/vedeu/repositories/repository_test.rb +1 -1
  110. data/test/lib/vedeu/storage/associative_store_test.rb +1 -1
  111. data/test/lib/vedeu/storage/conveyor_store_test.rb +1 -1
  112. data/test/lib/vedeu/storage/fifo_store_test.rb +1 -1
  113. data/test/lib/vedeu/support/template_test.rb +1 -1
  114. data/test/lib/vedeu/support/trace_test.rb +1 -1
  115. data/test/lib/vedeu/support/visibility_test.rb +2 -2
  116. data/test/test_helper.rb +1 -1
  117. data/vedeu.gemspec +1 -1
  118. metadata +36 -33
  119. data/lib/vedeu/geometry/null_geometry.rb +0 -70
  120. data/lib/vedeu/models/null.rb +0 -48
  121. data/lib/vedeu/models/null_interface.rb +0 -20
  122. data/lib/vedeu/output/null_border.rb +0 -75
  123. data/lib/vedeu/output/renderers/escape_sequence_renderer.rb +0 -43
  124. data/test/lib/vedeu/geometry/null_geometry_test.rb +0 -59
  125. data/test/lib/vedeu/models/null_interface_test.rb +0 -9
  126. data/test/lib/vedeu/models/null_test.rb +0 -66
  127. data/test/lib/vedeu/output/null_border_test.rb +0 -72
@@ -6,9 +6,31 @@ module Vedeu
6
6
 
7
7
  let(:described) { Vedeu::PositionValidator }
8
8
  let(:instance) { described.new(_name, x, y) }
9
- let(:_name) {}
10
- let(:x) {}
11
- let(:y) {}
9
+ let(:_name) { 'position_validator' }
10
+ let(:x) { 1 }
11
+ let(:y) { 1 }
12
+ let(:border) {
13
+ Vedeu::Border.new({
14
+ name: _name,
15
+ enabled: enabled,
16
+ })
17
+ }
18
+ let(:enabled) { true }
19
+ let(:geometry) {
20
+ Vedeu::Geometry.new({
21
+ name: _name,
22
+ x: 5,
23
+ xn: 35,
24
+ y: 5,
25
+ yn: 10
26
+ })
27
+ }
28
+
29
+ before do
30
+ IO.console.stubs(:size).returns([15, 40])
31
+ Vedeu.borders.stubs(:by_name).returns(border)
32
+ Vedeu.geometries.stubs(:by_name).returns(geometry)
33
+ end
12
34
 
13
35
  describe '#initialize' do
14
36
  it { instance.must_be_instance_of(described) }
@@ -25,10 +47,106 @@ module Vedeu
25
47
 
26
48
  describe '#y' do
27
49
  subject { described.validate(_name, x, y).y }
50
+
51
+ context 'when y is less than ty' do
52
+ let(:y) { -2 }
53
+
54
+ it { subject.must_equal(6) }
55
+ end
56
+
57
+ context 'when y is less than top' do
58
+ let(:y) { 2 }
59
+
60
+ it { subject.must_equal(6) }
61
+ end
62
+
63
+ context 'when y is less than by' do
64
+ let(:y) { 5 }
65
+
66
+ it { subject.must_equal(6) }
67
+
68
+ context 'when border is not enabled' do
69
+ let(:enabled) { false }
70
+
71
+ it { subject.must_equal(5) }
72
+ end
73
+ end
74
+
75
+ context 'when y is more than tyn' do
76
+ let(:y) { 17 }
77
+
78
+ it { subject.must_equal(9) }
79
+ end
80
+
81
+ context 'when y is more than bottom' do
82
+ let(:y) { 12 }
83
+
84
+ it { subject.must_equal(9) }
85
+ end
86
+
87
+ context 'when y is more than byn' do
88
+ let(:y) { 10 }
89
+
90
+ it { subject.must_equal(9) }
91
+
92
+ context 'when border is not enabled' do
93
+ let(:enabled) { false }
94
+
95
+ it { subject.must_equal(10) }
96
+ end
97
+ end
28
98
  end
29
99
 
30
100
  describe '#x' do
31
101
  subject { described.validate(_name, x, y).x }
102
+
103
+ context 'when x is less than tx' do
104
+ let(:x) { -2 }
105
+
106
+ it { subject.must_equal(6) }
107
+ end
108
+
109
+ context 'when x is less than left' do
110
+ let(:x) { 2 }
111
+
112
+ it { subject.must_equal(6) }
113
+ end
114
+
115
+ context 'when x is less than bx' do
116
+ let(:x) { 5 }
117
+
118
+ it { subject.must_equal(6) }
119
+
120
+ context 'when border is not enabled' do
121
+ let(:enabled) { false }
122
+
123
+ it { subject.must_equal(5) }
124
+ end
125
+ end
126
+
127
+ context 'when x is more than txn' do
128
+ let(:x) { 47 }
129
+
130
+ it { subject.must_equal(34) }
131
+ end
132
+
133
+ context 'when x is more than right' do
134
+ let(:x) { 37 }
135
+
136
+ it { subject.must_equal(34) }
137
+ end
138
+
139
+ context 'when x is more than bxn' do
140
+ let(:x) { 35 }
141
+
142
+ it { subject.must_equal(34) }
143
+
144
+ context 'when border is not enabled' do
145
+ let(:enabled) { false }
146
+
147
+ it { subject.must_equal(35) }
148
+ end
149
+ end
32
150
  end
33
151
 
34
152
  end # PositionValidator
@@ -16,7 +16,7 @@ module Vedeu
16
16
  end
17
17
 
18
18
  describe '#initialize' do
19
- it { instance.must_be_instance_of(Input) }
19
+ it { instance.must_be_instance_of(described) }
20
20
  it { instance.instance_variable_get('@reader').must_equal(reader) }
21
21
  end
22
22
 
@@ -9,7 +9,7 @@ module Vedeu
9
9
  let(:input) { 'a' }
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Key) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@input').must_equal(input) }
14
14
 
15
15
  context 'when the required block is not given' do
@@ -17,7 +17,7 @@ module Vedeu
17
17
  let(:key) { Vedeu::Key.new('a') { :output } }
18
18
 
19
19
  describe '#initialize' do
20
- it { instance.must_be_instance_of(Keymap) }
20
+ it { instance.must_be_instance_of(described) }
21
21
  it { instance.instance_variable_get('@name').must_equal(map_name) }
22
22
  it { instance.instance_variable_get('@keys').must_be_instance_of(Array) }
23
23
  it do
@@ -54,11 +54,25 @@ module Vedeu
54
54
  end
55
55
 
56
56
  describe '#render' do
57
+ let(:clear) { mock('Vedeu::Clear') }
58
+ let(:border) { mock('Vedeu::Border') }
59
+ let(:view) { mock('Vedeu::Viewport') }
60
+
61
+ before do
62
+ Vedeu::Clear.stubs(:new).returns(clear)
63
+ clear.stubs(:render).returns(:clear)
64
+ Vedeu.borders.stubs(:by_name).returns(border)
65
+ border.stubs(:render).returns(:border)
66
+ Vedeu::Viewport.stubs(:new).returns(view)
67
+ view.stubs(:render).returns(:view)
68
+ end
69
+
57
70
  subject { instance.render }
58
71
 
59
72
  it { subject.must_be_instance_of(Array) }
60
73
 
61
74
  context 'when the interface is visible' do
75
+ it { subject.must_equal(['', :clear, :border, :view, '']) }
62
76
  end
63
77
 
64
78
  context 'when the interface is not visible' do
@@ -0,0 +1,76 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Null
6
+
7
+ describe Border do
8
+
9
+ let(:described) { Vedeu::Null::Border }
10
+ let(:instance) { described.new(_name) }
11
+ let(:_name) { 'null_border' }
12
+ let(:geometry) {
13
+ Vedeu::Geometry.new(name: _name, x: 4, y: 6, xn: 10, yn: 12)
14
+ }
15
+
16
+ before { Vedeu.geometries.stubs(:by_name).returns(geometry) }
17
+
18
+ describe '#initialize' do
19
+ it { instance.must_be_instance_of(described) }
20
+ it { instance.instance_variable_get('@name').must_equal(_name) }
21
+ end
22
+
23
+ describe '#bx' do
24
+ subject { instance.bx }
25
+
26
+ it { subject.must_be_instance_of(Fixnum) }
27
+ it { subject.must_equal(4) }
28
+ end
29
+
30
+ describe '#by' do
31
+ subject { instance.by }
32
+
33
+ it { subject.must_be_instance_of(Fixnum) }
34
+ it { subject.must_equal(6) }
35
+ end
36
+
37
+ describe '#bxn' do
38
+ subject { instance.bxn }
39
+
40
+ it { subject.must_be_instance_of(Fixnum) }
41
+ it { subject.must_equal(10) }
42
+ end
43
+
44
+ describe '#byn' do
45
+ subject { instance.byn }
46
+
47
+ it { subject.must_be_instance_of(Fixnum) }
48
+ it { subject.must_equal(12) }
49
+ end
50
+
51
+ describe '#height' do
52
+ subject { instance.height }
53
+
54
+ it { subject.must_be_instance_of(Fixnum) }
55
+ it { subject.must_equal(7) }
56
+ end
57
+
58
+ describe '#render' do
59
+ subject { instance.render }
60
+
61
+ it { subject.must_be_instance_of(Array) }
62
+ it { subject.must_equal([]) }
63
+ end
64
+
65
+ describe '#width' do
66
+ subject { instance.width }
67
+
68
+ it { subject.must_be_instance_of(Fixnum) }
69
+ it { subject.must_equal(7) }
70
+ end
71
+
72
+ end # Border
73
+
74
+ end # Null
75
+
76
+ end # Vedeu
@@ -0,0 +1,69 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Null
6
+
7
+ describe Generic do
8
+
9
+ let(:described) { Vedeu::Null::Generic }
10
+ let(:instance) { described.new }
11
+
12
+ describe 'alias methods' do
13
+ it { instance.must_respond_to(:visible?) }
14
+ end
15
+
16
+ describe '#initialize' do
17
+ it { instance.must_be_instance_of(described) }
18
+ end
19
+
20
+ describe '#add' do
21
+ subject { instance.add }
22
+
23
+ it { subject.must_be_instance_of(NilClass) }
24
+ end
25
+
26
+ describe '#colour' do
27
+ subject { instance.colour }
28
+
29
+ it { subject.must_be_instance_of(NilClass) }
30
+ end
31
+
32
+ describe '#parent' do
33
+ subject { instance.parent }
34
+
35
+ it { subject.must_be_instance_of(NilClass) }
36
+ end
37
+
38
+ describe '#store' do
39
+ subject { instance.store }
40
+
41
+ it { subject.must_be_instance_of(described) }
42
+ end
43
+
44
+ describe '#style' do
45
+ subject { instance.style }
46
+
47
+ it { subject.must_be_instance_of(NilClass) }
48
+ end
49
+
50
+ describe '#visible' do
51
+ subject { instance.visible }
52
+
53
+ it { subject.must_be_instance_of(FalseClass) }
54
+ end
55
+
56
+ describe '#visible=' do
57
+ let(:_value) { :ignored }
58
+
59
+ subject { instance.visible = (_value) }
60
+
61
+ # This should be FalseClass, I'm explicitly returning false in the method.
62
+ it { subject.must_be_instance_of(Symbol) }
63
+ end
64
+
65
+ end # Generic
66
+
67
+ end # Null
68
+
69
+ end # Vedeu
@@ -0,0 +1,63 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Null
6
+
7
+ describe Geometry do
8
+
9
+ let(:described) { Vedeu::Null::Geometry }
10
+ let(:instance) { described.new(_name) }
11
+ let(:_name) { 'null_geometry' }
12
+
13
+ before do
14
+ Vedeu::Terminal.stubs(:height).returns(25)
15
+ Vedeu::Terminal.stubs(:width).returns(40)
16
+ end
17
+
18
+ describe '#initialize' do
19
+ it { instance.must_be_instance_of(described) }
20
+ it { instance.instance_variable_get('@name').must_equal(_name) }
21
+ end
22
+
23
+ describe '#centred' do
24
+ subject { instance.centred }
25
+
26
+ it { subject.must_equal(false) }
27
+ end
28
+
29
+ describe '#store' do
30
+ subject { instance.store }
31
+
32
+ it { subject.must_be_instance_of(described) }
33
+ end
34
+
35
+ describe '#height' do
36
+ it { instance.height.must_equal(25) }
37
+ end
38
+
39
+ describe '#width' do
40
+ it { instance.width.must_equal(40) }
41
+ end
42
+
43
+ describe '#x' do
44
+ it { instance.x.must_equal(1) }
45
+ end
46
+
47
+ describe '#xn' do
48
+ it { instance.xn.must_equal(40) }
49
+ end
50
+
51
+ describe '#y' do
52
+ it { instance.y.must_equal(1) }
53
+ end
54
+
55
+ describe '#yn' do
56
+ it { instance.yn.must_equal(25) }
57
+ end
58
+
59
+ end # Geometry
60
+
61
+ end # Null
62
+
63
+ end # Vedeu
@@ -0,0 +1,13 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Null
6
+
7
+ describe Interface do
8
+
9
+ end # Interface
10
+
11
+ end # Null
12
+
13
+ end # Vedeu
@@ -23,7 +23,7 @@ module Vedeu
23
23
  end
24
24
 
25
25
  describe '#initialize' do
26
- it { instance.must_be_instance_of(Vedeu::Clear) }
26
+ it { instance.must_be_instance_of(described) }
27
27
  it { instance.instance_variable_get('@interface').must_equal(interface) }
28
28
  it { instance.instance_variable_get('@options').must_equal(options) }
29
29
  end
@@ -9,7 +9,7 @@ module Vedeu
9
9
  let(:output) {}
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Vedeu::Compressor) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@output').must_equal(output) }
14
14
  it { instance.instance_variable_get('@colour').must_equal('') }
15
15
  it { instance.instance_variable_get('@style').must_equal('') }
@@ -22,7 +22,7 @@ module Vedeu
22
22
  let(:_value) {}
23
23
 
24
24
  describe '#initialize' do
25
- it { instance.must_be_instance_of(Vedeu::HTMLChar) }
25
+ it { instance.must_be_instance_of(described) }
26
26
  it { instance.instance_variable_get('@char').must_equal(char) }
27
27
  end
28
28
 
@@ -31,7 +31,7 @@ module Vedeu
31
31
 
32
32
  context 'when DRb is not enabled' do
33
33
  # it 'sends the rendered interface to the Terminal' do
34
- # Vedeu::TerminalRenderer.expects(:render)
34
+ # Vedeu::Renderers::Terminal.expects(:render)
35
35
  # subject.must_be_instance_of(Array)
36
36
  # end
37
37
  end
@@ -32,6 +32,9 @@ module Vedeu
32
32
  end
33
33
 
34
34
  describe '.by_group' do
35
+ let(:_name) { 'aluminium' }
36
+ let(:buffer) { Vedeu::Null::Buffer.new(_name) }
37
+
35
38
  subject { described.by_group(group_name) }
36
39
 
37
40
  context 'when there are no registered groups' do
@@ -46,19 +49,28 @@ module Vedeu
46
49
  let(:group_name) { 'elements' }
47
50
 
48
51
  before do
49
- Vedeu::Group.new(name: group_name, members: 'aluminium').store
52
+ Vedeu::Group.new(name: group_name, members: _name).store
50
53
  end
51
54
 
52
- it { Vedeu.buffers.expects(:render).with('aluminium'); subject }
55
+ it do
56
+ Vedeu.buffers.expects(:by_name).with(_name).returns(buffer)
57
+ buffer.expects(:render)
58
+ subject
59
+ end
53
60
  end
54
61
  end
55
62
 
56
63
  describe '.by_name' do
57
- let(:interface_name) { 'aluminium' }
64
+ let(:_name) { 'aluminium' }
65
+ let(:buffer) { Vedeu::Null::Buffer.new(_name) }
58
66
 
59
- subject { described.by_name(interface_name) }
67
+ subject { described.by_name(_name) }
60
68
 
61
- it { Vedeu.buffers.expects(:render).with(interface_name); subject }
69
+ it {
70
+ Vedeu.buffers.expects(:by_name).with(_name).returns(buffer)
71
+ buffer.expects(:render)
72
+ subject
73
+ }
62
74
  end
63
75
 
64
76
  end # Refresh
@@ -1,10 +1,10 @@
1
1
  require 'test_helper'
2
2
 
3
- module Vedeu
3
+ module Vedeu::Renderers
4
4
 
5
- describe EscapeSequenceRenderer do
5
+ describe EscapeSequence do
6
6
 
7
- let(:described) { Vedeu::EscapeSequenceRenderer }
7
+ let(:described) { Vedeu::Renderers::EscapeSequence }
8
8
  let(:instance) { described.new(output) }
9
9
  let(:output) {}
10
10
 
@@ -41,6 +41,6 @@ module Vedeu
41
41
  end
42
42
  end
43
43
 
44
- end # EscapeSequenceRenderer
44
+ end # EscapeSequence
45
45
 
46
46
  end # Vedeu
@@ -2,9 +2,9 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe FileRenderer do
5
+ describe Renderers::File do
6
6
 
7
- let(:described) { Vedeu::FileRenderer }
7
+ let(:described) { Vedeu::Renderers::File }
8
8
  let(:instance) { described.new(output, options) }
9
9
  let(:output) {}
10
10
  let(:options) {
@@ -15,7 +15,7 @@ module Vedeu
15
15
  let(:timestamp) { true }
16
16
 
17
17
  describe '#initialize' do
18
- it { instance.must_be_instance_of(Vedeu::FileRenderer) }
18
+ it { instance.must_be_instance_of(described) }
19
19
  it { instance.instance_variable_get('@output').must_equal(output) }
20
20
  it { instance.instance_variable_get('@options').must_equal(options) }
21
21
  end
@@ -42,6 +42,6 @@ module Vedeu
42
42
  # end
43
43
  end
44
44
 
45
- end # FileRenderer
45
+ end # Renderers::File
46
46
 
47
47
  end # Vedeu
@@ -2,14 +2,14 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe HTMLRenderer do
5
+ describe Renderers::HTML do
6
6
 
7
- let(:described) { Vedeu::HTMLRenderer }
7
+ let(:described) { Vedeu::Renderers::HTML }
8
8
  let(:instance) { described.new(output) }
9
9
  let(:output) {}
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Vedeu::HTMLRenderer) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@output').must_equal(output) }
14
14
  end
15
15
 
@@ -81,6 +81,6 @@ module Vedeu
81
81
  end
82
82
  end
83
83
 
84
- end # HTMLRenderer
84
+ end # Renderers::HTML
85
85
 
86
86
  end # Vedeu
@@ -2,14 +2,14 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe JSONRenderer do
5
+ describe Renderers::JSON do
6
6
 
7
- let(:described) { Vedeu::JSONRenderer }
7
+ let(:described) { Vedeu::Renderers::JSON }
8
8
  let(:instance) { described.new(output) }
9
9
  let(:output) {}
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Vedeu::JSONRenderer) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@output').must_equal(output) }
14
14
  end
15
15
 
@@ -47,6 +47,6 @@ module Vedeu
47
47
  end
48
48
  end
49
49
 
50
- end # JSONRenderer
50
+ end # Renderers::JSON
51
51
 
52
52
  end # Vedeu
@@ -2,9 +2,9 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe NullRenderer do
5
+ describe Renderers::Null do
6
6
 
7
- let(:described) { Vedeu::NullRenderer }
7
+ let(:described) { Vedeu::Renderers::Null }
8
8
 
9
9
  describe '.render' do
10
10
  let(:args) {}
@@ -14,6 +14,6 @@ module Vedeu
14
14
  it { subject.must_be_instance_of(NilClass) }
15
15
  end
16
16
 
17
- end # NullRenderer
17
+ end # Renderers::Null
18
18
 
19
19
  end # Vedeu
@@ -2,14 +2,14 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe TerminalRenderer do
5
+ describe Renderers::Terminal do
6
6
 
7
- let(:described) { Vedeu::TerminalRenderer }
7
+ let(:described) { Vedeu::Renderers::Terminal }
8
8
  let(:instance) { described.new(output) }
9
9
  let(:output) {}
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Vedeu::TerminalRenderer) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@output').must_equal([output]) }
14
14
  end
15
15
 
@@ -19,6 +19,6 @@ module Vedeu
19
19
  it { subject.must_be_instance_of(Array) }
20
20
  end
21
21
 
22
- end # TerminalRenderer
22
+ end # Renderers::Terminal
23
23
 
24
24
  end # Vedeu
@@ -2,14 +2,14 @@ require 'test_helper'
2
2
 
3
3
  module Vedeu
4
4
 
5
- describe TextRenderer do
5
+ describe Renderers::Text do
6
6
 
7
- let(:described) { Vedeu::TextRenderer }
7
+ let(:described) { Vedeu::Renderers::Text }
8
8
  let(:instance) { described.new(output) }
9
9
  let(:output) {}
10
10
 
11
11
  describe '#initialize' do
12
- it { instance.must_be_instance_of(Vedeu::TextRenderer) }
12
+ it { instance.must_be_instance_of(described) }
13
13
  it { instance.instance_variable_get('@output').must_equal([output]) }
14
14
  end
15
15
 
@@ -19,6 +19,6 @@ module Vedeu
19
19
  it { subject.must_be_instance_of(String) }
20
20
  end
21
21
 
22
- end # TextRenderer
22
+ end # Renderers::Text
23
23
 
24
24
  end # Vedeu