vedeu 0.8.12 → 0.8.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. checksums.yaml +4 -4
  2. data/bin/vedeu +1 -1
  3. data/docs/dsl/by_method/profile.md +1 -1
  4. data/docs/dsl/by_method/view/repositories.md +4 -0
  5. data/integrations/342_streams.rb +1 -1
  6. data/integrations/dsl_app_001.rb +1 -0
  7. data/integrations/dsl_app_002.rb +1 -0
  8. data/integrations/dsl_app_003.rb +1 -0
  9. data/integrations/dsl_app_004.rb +1 -0
  10. data/integrations/dsl_app_005.rb +1 -0
  11. data/integrations/dsl_app_006.rb +1 -0
  12. data/integrations/dsl_app_007.rb +1 -0
  13. data/integrations/dsl_app_008.rb +1 -0
  14. data/integrations/dsl_app_009.rb +1 -0
  15. data/integrations/dsl_app_010.rb +1 -0
  16. data/integrations/dsl_app_011.rb +1 -0
  17. data/integrations/dsl_app_012.rb +1 -0
  18. data/integrations/dsl_app_013.rb +1 -0
  19. data/integrations/dsl_app_014.rb +1 -0
  20. data/integrations/dsl_app_015.rb +1 -0
  21. data/integrations/dsl_app_016.rb +1 -0
  22. data/integrations/dsl_app_017.rb +1 -0
  23. data/integrations/dsl_app_018.rb +1 -0
  24. data/integrations/dsl_app_019.rb +1 -0
  25. data/integrations/dsl_app_020.rb +1 -0
  26. data/integrations/dsl_app_021.rb +1 -0
  27. data/integrations/dsl_app_022.rb +1 -0
  28. data/integrations/dsl_app_border_001.rb +1 -0
  29. data/integrations/dsl_app_border_002.rb +1 -0
  30. data/integrations/dsl_app_border_003.rb +1 -0
  31. data/integrations/dsl_app_border_004.rb +1 -0
  32. data/integrations/dsl_app_border_005.rb +1 -0
  33. data/lib/vedeu/application/application_view.rb +3 -3
  34. data/lib/vedeu/borders/dsl.rb +2 -2
  35. data/lib/vedeu/borders/title.rb +1 -1
  36. data/lib/vedeu/buffers/view.rb +1 -11
  37. data/lib/vedeu/cells/empty.rb +2 -2
  38. data/lib/vedeu/coercers/alignment.rb +5 -5
  39. data/lib/vedeu/coercers/coercer.rb +4 -5
  40. data/lib/vedeu/coercers/colour_attributes.rb +1 -1
  41. data/lib/vedeu/coercers/horizontal_alignment.rb +3 -3
  42. data/lib/vedeu/coercers/position.rb +4 -9
  43. data/lib/vedeu/coercers/vertical_alignment.rb +3 -3
  44. data/lib/vedeu/colours/colour.rb +2 -1
  45. data/lib/vedeu/colours/translator.rb +2 -2
  46. data/lib/vedeu/common.rb +20 -1
  47. data/lib/vedeu/configuration/api.rb +8 -6
  48. data/lib/vedeu/configuration/configuration.rb +2 -2
  49. data/lib/vedeu/cursors/coordinate.rb +2 -2
  50. data/lib/vedeu/cursors/cursor.rb +3 -2
  51. data/lib/vedeu/dsl/border.rb +1 -1
  52. data/lib/vedeu/dsl/elements.rb +9 -9
  53. data/lib/vedeu/dsl/geometry.rb +3 -3
  54. data/lib/vedeu/dsl/helpers/wordwrap.rb +4 -4
  55. data/lib/vedeu/dsl/view.rb +9 -9
  56. data/lib/vedeu/dsl/views.rb +2 -2
  57. data/lib/vedeu/editor/document.rb +1 -1
  58. data/lib/vedeu/editor/item.rb +17 -15
  59. data/lib/vedeu/esc/colours.rb +21 -20
  60. data/lib/vedeu/geometries/area/area.rb +6 -2
  61. data/lib/vedeu/geometries/dsl/grid.rb +2 -2
  62. data/lib/vedeu/geometries/geometry.rb +34 -46
  63. data/lib/vedeu/geometries/move.rb +5 -4
  64. data/lib/vedeu/geometries/position.rb +1 -1
  65. data/lib/vedeu/groups/dsl.rb +2 -2
  66. data/lib/vedeu/groups/group.rb +1 -1
  67. data/lib/vedeu/groups/refresh.rb +2 -2
  68. data/lib/vedeu/input/capture.rb +2 -1
  69. data/lib/vedeu/input/dsl.rb +22 -16
  70. data/lib/vedeu/input/key.rb +1 -1
  71. data/lib/vedeu/input/mapper.rb +6 -6
  72. data/lib/vedeu/input/read.rb +2 -2
  73. data/lib/vedeu/interfaces/dsl.rb +2 -2
  74. data/lib/vedeu/logging/debug.rb +10 -10
  75. data/lib/vedeu/logging/timer.rb +7 -11
  76. data/lib/vedeu/menus/dsl.rb +2 -2
  77. data/lib/vedeu/models/focus.rb +3 -3
  78. data/lib/vedeu/models/page.rb +1 -1
  79. data/lib/vedeu/models/row.rb +1 -1
  80. data/lib/vedeu/presentation/style.rb +1 -1
  81. data/lib/vedeu/renderers/escape.rb +0 -6
  82. data/lib/vedeu/renderers/options.rb +3 -3
  83. data/lib/vedeu/renderers/text.rb +0 -6
  84. data/lib/vedeu/repositories/assemblage.rb +1 -1
  85. data/lib/vedeu/repositories/defaults.rb +2 -2
  86. data/lib/vedeu/repositories/repositories.rb +17 -1
  87. data/lib/vedeu/repositories/repository.rb +5 -5
  88. data/lib/vedeu/runtime/application.rb +3 -3
  89. data/lib/vedeu/runtime/main_loop.rb +2 -2
  90. data/lib/vedeu/runtime/router.rb +11 -11
  91. data/lib/vedeu/support/point.rb +18 -15
  92. data/lib/vedeu/templating/helpers.rb +1 -1
  93. data/lib/vedeu/templating/template.rb +4 -4
  94. data/lib/vedeu/terminal/terminal.rb +1 -1
  95. data/lib/vedeu/version.rb +1 -1
  96. data/lib/vedeu/views/chars.rb +3 -3
  97. data/lib/vedeu/views/line.rb +1 -1
  98. data/lib/vedeu/views/lines.rb +3 -3
  99. data/lib/vedeu/views/stream.rb +1 -1
  100. data/lib/vedeu/views/streams.rb +3 -3
  101. data/lib/vedeu/views/view.rb +2 -2
  102. data/test/lib/vedeu/common_test.rb +43 -0
  103. data/test/lib/vedeu/cursors/cursor_test.rb +1 -1
  104. data/test/lib/vedeu/esc/colours_test.rb +42 -0
  105. data/test/lib/vedeu/input/dsl_test.rb +8 -8
  106. data/test/lib/vedeu/logging/debug_test.rb +2 -2
  107. data/test/lib/vedeu/logging/timer_test.rb +4 -13
  108. data/test/lib/vedeu/renderers/escape_test.rb +24 -0
  109. data/test/lib/vedeu/repositories/repositories_test.rb +6 -0
  110. data/test/support/examples/material_colours_app.rb +30 -51
  111. data/vedeu.gemspec +2 -2
  112. metadata +9 -6
@@ -145,7 +145,7 @@ module Vedeu
145
145
 
146
146
  describe '#inspect' do
147
147
  let(:expected) {
148
- "name:'vedeu_cursors_cursor' x:19 y:8 ox:3 oy:2 visible:true"
148
+ "name: :vedeu_cursors_cursor x: 19 y: 8 ox: 3 oy: 2 visible: true"
149
149
  }
150
150
 
151
151
  subject { instance.inspect }
@@ -37,6 +37,14 @@ module Vedeu
37
37
  it { described.background_codes.must_equal(expected) }
38
38
  end
39
39
 
40
+ describe '.background_colour' do
41
+ subject { described.background_colour }
42
+ end
43
+
44
+ describe '.colour' do
45
+ subject { described.colour }
46
+ end
47
+
40
48
  describe '.foreground_codes' do
41
49
  let(:expected) {
42
50
  {
@@ -64,6 +72,40 @@ module Vedeu
64
72
  it { described.foreground_codes.must_equal(expected) }
65
73
  end
66
74
 
75
+ describe '.foreground_colour' do
76
+ it { described.must_respond_to(:foreground_colour) }
77
+ end
78
+
79
+ describe '.valid_codes' do
80
+ subject { described.valid_codes }
81
+
82
+ it { subject.must_be_instance_of(Array) }
83
+ end
84
+
85
+ describe '.valid_name?' do
86
+ let(:named_colour) {}
87
+
88
+ subject { described.valid_name?(named_colour) }
89
+
90
+ context 'when the named_colour is a Symbol' do
91
+ context 'and the named_colour is valid' do
92
+ let(:named_colour) { :on_light_green }
93
+
94
+ it { subject.must_equal(true) }
95
+ end
96
+
97
+ context 'and the named_colour is invalid' do
98
+ let(:named_colour) { :beige }
99
+
100
+ it { subject.must_equal(false) }
101
+ end
102
+ end
103
+
104
+ context 'when the named_colour is not a Symbol' do
105
+ it { subject.must_equal(false) }
106
+ end
107
+ end
108
+
67
109
  end # Colours
68
110
 
69
111
  end # EscapeSequences
@@ -44,32 +44,32 @@ module Vedeu
44
44
  end
45
45
 
46
46
  describe '#key' do
47
- let(:value_or_values) { ['j', :down] }
47
+ let(:keys) { ['j', :down] }
48
48
 
49
- subject { instance.key(*value_or_values) { :some_action } }
49
+ subject { instance.key(*keys) { :some_action } }
50
50
 
51
51
  context 'when a block was not given' do
52
- subject { instance.key(value_or_values) }
52
+ subject { instance.key(keys) }
53
53
 
54
54
  it { proc { subject }.must_raise(Vedeu::Error::InvalidSyntax) }
55
55
  end
56
56
 
57
57
  context 'when a key was not given' do
58
- let(:value_or_values) {}
58
+ let(:keys) {}
59
59
 
60
60
  it { proc { subject }.must_raise(Vedeu::Error::InvalidSyntax) }
61
61
  end
62
62
 
63
63
  context 'when an invalid key was given (nil)' do
64
- let(:value_or_values) { ['v', nil] }
64
+ let(:keys) { ['a', nil] }
65
65
 
66
- it { proc { subject }.must_raise(Vedeu::Error::InvalidSyntax) }
66
+ it { subject.must_equal(['a']) }
67
67
  end
68
68
 
69
69
  context 'when an invalid key was given (empty)' do
70
- let(:value_or_values) { ['v', ''] }
70
+ let(:keys) { ['b', ''] }
71
71
 
72
- it { proc { subject }.must_raise(Vedeu::Error::InvalidSyntax) }
72
+ it { subject.must_equal(['b']) }
73
73
  end
74
74
 
75
75
  context 'when the key is valid (not already defined)' do
@@ -11,7 +11,7 @@ module Vedeu
11
11
  let(:described) { Vedeu::Logging::Debug }
12
12
 
13
13
  before do
14
- File.stubs(:open).with('/tmp/profile.html', 'w').returns(:some_code)
14
+ File.stubs(:open).with('/tmp/vedeu_profile', 'w').returns(:some_code)
15
15
  end
16
16
 
17
17
  describe '.debug' do
@@ -32,7 +32,7 @@ module Vedeu
32
32
  end
33
33
 
34
34
  describe '.profile' do
35
- let(:filename) { 'profile.html' }
35
+ let(:filename) { 'vedeu_profile' }
36
36
  let(:some_code) { :some_code }
37
37
 
38
38
  subject { described.profile(filename) { some_code } }
@@ -35,8 +35,9 @@ module Vedeu
35
35
  before { Vedeu.config.stubs(:debug?).returns(true) }
36
36
 
37
37
  it do
38
- Vedeu.expects(:log).with(type: :timer,
39
- message: "Testing took 0.0ms.")
38
+ Vedeu.expects(:log)
39
+ .with(type: :timer,
40
+ message: "Testing took 0.0ms.")
40
41
  subject
41
42
  end
42
43
  end
@@ -51,17 +52,7 @@ module Vedeu
51
52
  context 'when the block is not given' do
52
53
  subject { instance.measure }
53
54
 
54
- context 'when debugging is enabled' do
55
- before { Vedeu.config.stubs(:debug?).returns(true) }
56
-
57
- it { proc { subject }.must_raise(Vedeu::Error::RequiresBlock) }
58
- end
59
-
60
- context 'when debugging is disabled' do
61
- before { Vedeu.config.stubs(:debug?).returns(false) }
62
-
63
- it { subject.must_equal(nil) }
64
- end
55
+ it { proc { subject }.must_raise(Vedeu::Error::RequiresBlock) }
65
56
  end
66
57
  end
67
58
 
@@ -0,0 +1,24 @@
1
+ require 'test_helper'
2
+
3
+ module Vedeu
4
+
5
+ module Renderers
6
+
7
+ describe Escape do
8
+
9
+ let(:described) { Vedeu::Renderers::Escape }
10
+ let(:instance) { described.new }
11
+
12
+ describe '#clear' do
13
+ let(:expected) { '[[:empty]]' }
14
+
15
+ subject { instance.clear }
16
+
17
+ it { subject.must_equal(expected) }
18
+ end
19
+
20
+ end # Escape
21
+
22
+ end # Renderers
23
+
24
+ end # Vedeu
@@ -42,6 +42,12 @@ module Vedeu
42
42
  # it { skip }
43
43
  end
44
44
 
45
+ describe '.repositories' do
46
+ it { described.must_respond_to(:repositories) }
47
+
48
+ it { Vedeu.must_respond_to(:repositories) }
49
+ end
50
+
45
51
  describe '.reset!' do
46
52
  subject { described.reset! }
47
53
 
@@ -20,13 +20,13 @@ class VedeuMaterialColoursApp
20
20
  debug!
21
21
  # profile!
22
22
  log '/tmp/vedeu_material_colours_app.log'
23
- log_except [:cursor, :update, :render]
23
+ # log_except [:cursor, :update, :render]
24
24
  # height 11
25
25
  # width 20
26
26
  renderers [
27
27
  Vedeu::Renderers::Terminal.new,
28
- Vedeu::Renderers::Text.new(
29
- filename: '/tmp/material_colours.out'),
28
+ # Vedeu::Renderers::Text.new(
29
+ # filename: '/tmp/material_colours.out'),
30
30
  ]
31
31
  threaded false
32
32
  end
@@ -35,7 +35,10 @@ class VedeuMaterialColoursApp
35
35
  def render
36
36
  Vedeu.render do
37
37
  view('cursor') do
38
- line "#{cursor_position}"
38
+ line do
39
+ stream 'Cursor: ', foreground: '#ff8800'
40
+ stream "#{cursor_position}"
41
+ end
39
42
  end
40
43
  end
41
44
  end
@@ -291,7 +294,7 @@ class VedeuMaterialColoursApp
291
294
  Vedeu.interface 'cursor' do
292
295
  geometry do
293
296
  x 2
294
- y 36
297
+ y 37
295
298
  height 1
296
299
  width 80
297
300
  end
@@ -337,44 +340,33 @@ class VedeuMaterialColoursApp
337
340
  key('3') { Vedeu.trigger(:_hide_interface_, 'other_interface') }
338
341
  key('4') { Vedeu.trigger(:_show_interface_, 'other_interface') }
339
342
 
340
- key('a') do
341
- Vedeu.trigger(:_view_left_, 'main_interface')
342
-
343
- CursorView.new.render
343
+ key('w') { Vedeu.trigger(:_toggle_group_, :my_group) }
344
+ key('e') { Vedeu.trigger(:_hide_group_, :my_group) }
345
+ key('r') { Vedeu.trigger(:_show_group_, :my_group) }
346
+ key('t') do
347
+ Vedeu.trigger(:_toggle_interface_, 'main_interface')
348
+ Vedeu.trigger(:_toggle_interface_, 'other_interface')
344
349
  end
345
- key('s') do
346
- Vedeu.trigger(:_view_down_, 'main_interface')
347
350
 
351
+ key('h') do
352
+ Vedeu.trigger(:_view_left_, Vedeu.focus)
348
353
  CursorView.new.render
349
354
  end
350
- key('d') do
351
- Vedeu.trigger(:_view_up_, 'main_interface')
352
-
355
+ key('j') do
356
+ Vedeu.trigger(:_view_down_, Vedeu.focus)
353
357
  CursorView.new.render
354
358
  end
355
- key('f') do
356
- Vedeu.trigger(:_view_right_, 'main_interface')
357
-
359
+ key('k') do
360
+ Vedeu.trigger(:_view_up_, Vedeu.focus)
358
361
  CursorView.new.render
359
362
  end
360
-
361
- key('w') { Vedeu.trigger(:_toggle_group_, :my_group) }
362
- key('e') { Vedeu.trigger(:_hide_group_, :my_group) }
363
- key('r') { Vedeu.trigger(:_show_group_, :my_group) }
364
- key('t') do
365
- Vedeu.trigger(:_toggle_interface_, 'main_interface')
366
- Vedeu.trigger(:_toggle_interface_, 'other_interface')
363
+ key('l') do
364
+ Vedeu.trigger(:_view_right_, Vedeu.focus)
365
+ CursorView.new.render
367
366
  end
368
367
 
369
- key('h') { Vedeu.trigger(:_view_left_, 'other_interface') }
370
- key('j') { Vedeu.trigger(:_view_down_, 'other_interface') }
371
- key('k') { Vedeu.trigger(:_view_up_, 'other_interface') }
372
- key('l') { Vedeu.trigger(:_view_right_, 'other_interface') }
373
-
374
- key('m') { Vedeu.trigger(:_maximise_, 'main_interface') }
375
- key('n') { Vedeu.trigger(:_unmaximise_, 'main_interface') }
376
- key('b') { Vedeu.trigger(:_maximise_, 'other_interface') }
377
- key('v') { Vedeu.trigger(:_unmaximise_, 'other_interface') }
368
+ key('m') { Vedeu.trigger(:_maximise_, Vedeu.focus) }
369
+ key('n') { Vedeu.trigger(:_unmaximise_, Vedeu.focus) }
378
370
 
379
371
  key('x') { Vedeu.trigger(:_set_border_caption_, Vedeu.focus, 'Amazing!') }
380
372
  key('z') { Vedeu.trigger(:_set_border_title_, Vedeu.focus, 'Surprise!') }
@@ -449,19 +441,12 @@ class VedeuMaterialColoursApp
449
441
  stream { left "Move cursor to last line" }
450
442
  }
451
443
  line {}
452
- line {
453
- stream {
454
- left 'a, s, d, f',
455
- foreground: '#ffff00', width: 15
456
- }
457
- stream { left "Move Rainbow! (\u2190 \u2193 \u2191 \u2192)" }
458
- }
459
444
  line {
460
445
  stream {
461
446
  left 'h, j, k, l',
462
447
  foreground: '#ffff00', width: 15
463
448
  }
464
- stream { left "Move Wow! (\u2190 \u2193 \u2191 \u2192)" }
449
+ stream { left "Move focussed view (\u2190 \u2193 \u2191 \u2192)" }
465
450
  }
466
451
  line {}
467
452
  line {
@@ -489,17 +474,10 @@ class VedeuMaterialColoursApp
489
474
  line {
490
475
  stream {
491
476
  left 'n, m',
492
- foreground: '#ffff00', width: 15
477
+ foreground: '#ffff00', width: 15
493
478
  }
494
479
  stream { left 'Un/Maximise Rainbow!' }
495
480
  }
496
- line {
497
- stream {
498
- left 'v, b',
499
- foreground: '#ffff00', width: 15
500
- }
501
- stream { left 'Un/Maximise Wow!' }
502
- }
503
481
  line {}
504
482
  line {
505
483
  stream {
@@ -511,14 +489,14 @@ class VedeuMaterialColoursApp
511
489
  line {
512
490
  stream {
513
491
  left 'shift+tab',
514
- foreground: '#ffff00', width: 15
492
+ foreground: '#ffff00', width: 15
515
493
  }
516
494
  stream { left 'Focus previous view' }
517
495
  }
518
496
  line {
519
497
  stream {
520
498
  left 'tab',
521
- foreground: '#ffff00', width: 15
499
+ foreground: '#ffff00', width: 15
522
500
  }
523
501
  stream { left 'Focus next view' }
524
502
  }
@@ -645,6 +623,7 @@ class VedeuMaterialColoursApp
645
623
  line 'style'
646
624
  end
647
625
  end
626
+ CursorView.new.render
648
627
  end
649
628
 
650
629
  Vedeu.focus_by_name 'main_interface'
data/vedeu.gemspec CHANGED
@@ -26,8 +26,8 @@ Gem::Specification.new do |spec|
26
26
  spec.add_development_dependency 'minitest', '5.8.4'
27
27
  spec.add_development_dependency 'minitest-reporters', '1.1.7'
28
28
  spec.add_development_dependency 'mocha', '1.1.0'
29
- spec.add_development_dependency 'rubocop', '0.36.0'
30
- spec.add_development_dependency 'simplecov', '0.11.1'
29
+ spec.add_development_dependency 'rubocop', '0.37.0'
30
+ spec.add_development_dependency 'simplecov', '0.11.2'
31
31
  spec.add_development_dependency 'simplecov-console', '0.3.0'
32
32
  spec.add_development_dependency 'yard', '0.8.7.6'
33
33
 
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.12
4
+ version: 0.8.13
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-02-05 00:00:00.000000000 Z
11
+ date: 2016-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: guard
@@ -100,28 +100,28 @@ dependencies:
100
100
  requirements:
101
101
  - - '='
102
102
  - !ruby/object:Gem::Version
103
- version: 0.36.0
103
+ version: 0.37.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - '='
109
109
  - !ruby/object:Gem::Version
110
- version: 0.36.0
110
+ version: 0.37.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: simplecov
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 0.11.1
117
+ version: 0.11.2
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 0.11.1
124
+ version: 0.11.2
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: simplecov-console
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -371,6 +371,7 @@ files:
371
371
  - docs/dsl/by_method/unbind_alias.md
372
372
  - docs/dsl/by_method/vertical.md
373
373
  - docs/dsl/by_method/view.md
374
+ - docs/dsl/by_method/view/repositories.md
374
375
  - docs/dsl/by_method/view/stream.md
375
376
  - docs/dsl/by_method/views.md
376
377
  - docs/dsl/by_method/width.md
@@ -1008,6 +1009,7 @@ files:
1008
1009
  - test/lib/vedeu/presentation/style_test.rb
1009
1010
  - test/lib/vedeu/presentation/styles_test.rb
1010
1011
  - test/lib/vedeu/renderers/all_test.rb
1012
+ - test/lib/vedeu/renderers/escape_test.rb
1011
1013
  - test/lib/vedeu/renderers/file_test.rb
1012
1014
  - test/lib/vedeu/renderers/html_test.rb
1013
1015
  - test/lib/vedeu/renderers/json_test.rb
@@ -1272,6 +1274,7 @@ test_files:
1272
1274
  - test/lib/vedeu/presentation/style_test.rb
1273
1275
  - test/lib/vedeu/presentation/styles_test.rb
1274
1276
  - test/lib/vedeu/renderers/all_test.rb
1277
+ - test/lib/vedeu/renderers/escape_test.rb
1275
1278
  - test/lib/vedeu/renderers/file_test.rb
1276
1279
  - test/lib/vedeu/renderers/html_test.rb
1277
1280
  - test/lib/vedeu/renderers/json_test.rb