dokkit 0.4.1 → 0.4.2

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 (68) hide show
  1. data/Manifest.txt +1 -59
  2. data/lib/dokkit.rb +1 -1
  3. data/lib/dokkit/environment/basic.rb +23 -8
  4. data/lib/dokkit/filters.rb +1 -0
  5. data/lib/dokkit/filters/erb.rb +3 -3
  6. data/lib/dokkit/filters/haml.rb +31 -0
  7. data/lib/dokkit/models/simple/doc/layouts/simple.html +1 -1
  8. data/lib/dokkit/resource/document.rb +59 -63
  9. metadata +3 -61
  10. data/spec/dokkit/application_spec.rb +0 -141
  11. data/spec/dokkit/cache/cache_spec.rb +0 -87
  12. data/spec/dokkit/dokkit_spec.rb +0 -20
  13. data/spec/dokkit/environment/basic_spec.rb +0 -138
  14. data/spec/dokkit/environment/helpers/extmap_spec.rb +0 -52
  15. data/spec/dokkit/environment/helpers/fileselection_spec.rb +0 -80
  16. data/spec/dokkit/environment/helpers/test_data/doc/pages/document_1.ext_1 +0 -0
  17. data/spec/dokkit/environment/helpers/test_data/doc/pages/document_2 +0 -0
  18. data/spec/dokkit/environment/helpers/test_data/doc/pages/document_3.ext_3 +0 -0
  19. data/spec/dokkit/environment/test_data/doc/data/data +0 -0
  20. data/spec/dokkit/environment/test_data/doc/pages/document_1 +0 -0
  21. data/spec/dokkit/environment/test_data/doc/pages/document_1.yaml +0 -3
  22. data/spec/dokkit/environment/test_data/doc/pages/document_2 +0 -0
  23. data/spec/dokkit/environment/test_data/doc/pages/subdir/document_1 +0 -0
  24. data/spec/dokkit/factory/factory_spec.rb +0 -69
  25. data/spec/dokkit/filters/deplate_spec.rb +0 -47
  26. data/spec/dokkit/filters/erb_spec.rb +0 -26
  27. data/spec/dokkit/filters/maruku_spec.rb +0 -28
  28. data/spec/dokkit/filters/nil_spec.rb +0 -29
  29. data/spec/dokkit/filters/tidy_spec.rb +0 -48
  30. data/spec/dokkit/hash_spec.rb +0 -89
  31. data/spec/dokkit/logging/logger_spec.rb +0 -138
  32. data/spec/dokkit/logging/observers/console_spec.rb +0 -68
  33. data/spec/dokkit/resource/data_spec.rb +0 -32
  34. data/spec/dokkit/resource/document_spec.rb +0 -523
  35. data/spec/dokkit/resource/extensions/html_spec.rb +0 -35
  36. data/spec/dokkit/resource/extensions/url_spec.rb +0 -29
  37. data/spec/dokkit/resource/filenamehelper_spec.rb +0 -33
  38. data/spec/dokkit/resource/test_data/doc/configs/config_1.yaml +0 -3
  39. data/spec/dokkit/resource/test_data/doc/configs/config_2.yaml +0 -3
  40. data/spec/dokkit/resource/test_data/doc/configs/required.yaml +0 -3
  41. data/spec/dokkit/resource/test_data/doc/configs/subdir/document.yaml +0 -3
  42. data/spec/dokkit/resource/test_data/doc/layouts/container.html +0 -6
  43. data/spec/dokkit/resource/test_data/doc/layouts/layout.html +0 -6
  44. data/spec/dokkit/resource/test_data/doc/layouts/layout.latex +0 -8
  45. data/spec/dokkit/resource/test_data/doc/layouts/nested/nested.html +0 -4
  46. data/spec/dokkit/resource/test_data/doc/layouts/subdir/document.html +0 -6
  47. data/spec/dokkit/resource/test_data/doc/layouts/subdir/document.latex +0 -8
  48. data/spec/dokkit/resource/test_data/doc/pages/COMMON.yaml +0 -4
  49. data/spec/dokkit/resource/test_data/doc/pages/document_with_many_config.ext +0 -7
  50. data/spec/dokkit/resource/test_data/doc/pages/document_with_many_errors.ext +0 -12
  51. data/spec/dokkit/resource/test_data/doc/pages/document_with_many_targets.ext +0 -19
  52. data/spec/dokkit/resource/test_data/doc/pages/document_with_nested_layout.ext +0 -13
  53. data/spec/dokkit/resource/test_data/doc/pages/document_with_nil_target.ext +0 -5
  54. data/spec/dokkit/resource/test_data/doc/pages/document_with_not_defined_target.ext +0 -6
  55. data/spec/dokkit/resource/test_data/doc/pages/document_with_one_target.ext +0 -8
  56. data/spec/dokkit/resource/test_data/doc/pages/document_with_postfilter.ext +0 -10
  57. data/spec/dokkit/resource/test_data/doc/pages/subdir/COMMON.yaml +0 -3
  58. data/spec/dokkit/resource/test_data/doc/pages/subdir/document.ext +0 -8
  59. data/spec/dokkit/resource/test_data/doc/pages/subdir/document.yaml +0 -5
  60. data/spec/dokkit/tasklib/clean_spec.rb +0 -75
  61. data/spec/dokkit/tasklib/render_spec.rb +0 -125
  62. data/spec/dokkit/tasklib/test_data/doc/data/data_1 +0 -0
  63. data/spec/dokkit/tasklib/test_data/doc/pages/document_1 +0 -0
  64. data/spec/dokkit/tasklib/test_data/doc/pages/document_2 +0 -0
  65. data/spec/dokkit/test_data/dokkit/models/model1/doc/pages/model1 +0 -0
  66. data/spec/dokkit/test_data/dokkit/models/model2/doc/pages/model2 +0 -0
  67. data/spec/spec.opts +0 -4
  68. data/spec/spec_helper.rb +0 -139
File without changes
@@ -1,3 +0,0 @@
1
- ---
2
- key: value
3
- ---
@@ -1,69 +0,0 @@
1
- #
2
- # File 'factory_spec.rb' created on 25 apr 2008 at 19:42:47.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c) 2006, 2007, 2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
- # To execute this spec run:
8
- #
9
- # spec spec/factory_spec.rb
10
- #
11
-
12
-
13
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
14
-
15
- require 'rubygems'
16
- require 'spec'
17
- require 'dokkit/factory/factory'
18
- require 'spec/spec_helper.rb'
19
-
20
- describe Dokkit::Factory do
21
- include SpecHelper::Logger, SpecHelper::Cache, SpecHelper::Configuration, SpecHelper::Resource
22
- before do
23
- class Foo
24
- attr_reader :arg1, :arg2
25
- def initialize(arg1, arg2)
26
- @arg1, @arg2 = arg1, arg2
27
- end
28
- end
29
- @foo_factory_method = lambda { |arg1, arg2| Foo.new(arg1, arg2) }
30
- end
31
- describe ' when adding new factory method' do
32
- before do
33
- @factory = Dokkit::Factory.new
34
- end
35
- it 'should add new factory method for a particular class of objects' do
36
- @factory.add(:foo => @foo_factory_method)
37
- @factory.methods[:foo].should == @foo_factory_method
38
- end
39
- end
40
- describe ' when client require an object instance' do
41
- before do
42
- @factory = Dokkit::Factory.new do |factory|
43
- factory.add(:foo => @foo_factory_method)
44
- end
45
- end
46
- it 'should construct an instance for the given class' do
47
- instance = @factory.get(:foo, 'arg1', 'arg2')
48
- instance.is_a?(Foo).should be_true
49
- end
50
- it 'should correctly process constructor arguments' do
51
- instance = @factory.get(:foo, 'arg1', 'arg2')
52
- instance.arg1.should == 'arg1'
53
- instance.arg2.should == 'arg2'
54
- end
55
- it 'should correctly store instances' do
56
- instance_1 = @factory.get(:foo, 'arg1', 'arg2')
57
- instance_2 = @factory.get(:foo, 'arg3', 'arg4')
58
- @factory.instances.should == { [:foo, 'arg1', 'arg2'] => instance_1, [:foo, 'arg3', 'arg4'] => instance_2}
59
- end
60
- it 'should instantiate only one object for a given class and arguments set' do
61
- instance_1 = @factory.get(:foo, 'arg1', 'arg2')
62
- instance_1.object_id.should == @factory.get(:foo, 'arg1', 'arg2').object_id
63
- instance_1.object_id.should_not == @factory.get(:foo, 'arg3', 'arg4').object_id
64
- instance_1.object_id.should == @factory.get(:foo, 'arg1', 'arg2').object_id
65
- end
66
- end
67
- end
68
-
69
-
@@ -1,47 +0,0 @@
1
- #
2
- # File 'filter_deplate_spec.rb' created on 18 feb 2008 at 15:22:35.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
- # To execute this spec run:
8
- #
9
- # spec spec/filter_deplate_spec.rb
10
- #
11
-
12
-
13
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
14
-
15
- require 'rubygems'
16
- require 'spec'
17
- require 'dokkit'
18
- require 'dokkit/filters/deplate'
19
-
20
- describe Dokkit::Filter::DeplateHTML do
21
- before do
22
- @deplate = Dokkit::Filter::DeplateHTML.new
23
- end
24
- it 'should transform deplate wiki text in html' do
25
- @deplate.filter('* Header').should =~ /\<h1.*\>1&nbsp;Header\<\/h1\>/
26
- end
27
- end
28
-
29
- describe Dokkit::Filter::DeplateLatex do
30
- before do
31
- @deplate = Dokkit::Filter::DeplateLatex.new
32
- end
33
- it 'should transform deplate wiki text in tex' do
34
- @deplate.filter('* Header').should =~ /\\section\{Header\}/
35
- end
36
- end
37
-
38
- describe Dokkit::Filter::DeplateText do
39
- before do
40
- @deplate = Dokkit::Filter::DeplateText.new
41
- end
42
- it 'should transform deplate wiki text in plain text' do
43
- @deplate.filter('* Header').should =~ /\n1 Header\n=+$/
44
- end
45
- end
46
-
47
-
@@ -1,26 +0,0 @@
1
- #
2
- # File 'erb_spec.rb' created on 23 lug 2008 at 15:38:04.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- # #
7
- # To execute this spec run:
8
- #
9
- # spec spec/dokkit/filters/erb_spec.rb
10
- #
11
-
12
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
13
-
14
- require 'rubygems'
15
- require 'spec'
16
- require 'dokkit'
17
- require 'dokkit/filters/erb'
18
-
19
- describe Dokkit::Filter::ERB do
20
- before do
21
- @erb = Dokkit::Filter::ERB.new(binding)
22
- end
23
- it 'should compile an erb template' do
24
- @erb.filter('<%= "process this" %>').should == "process this"
25
- end
26
- end
@@ -1,28 +0,0 @@
1
- #
2
- # File 'filter_maruku_spec.rb' created on 15 feb 2008 at 22:52:14.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
- # To execute this spec run:
8
- #
9
- # spec spec/filter_maruku_spec.rb
10
- #
11
-
12
-
13
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
14
-
15
- require 'rubygems'
16
- require 'spec'
17
- require 'dokkit'
18
- require 'dokkit/filters/maruku'
19
-
20
- describe Dokkit::Filter::MarukuHTML do
21
- before do
22
- @maruku = Dokkit::Filter::MarukuHTML.new
23
- end
24
- it 'should transform markdown text in html' do
25
- @result = @maruku.filter('# Header').should =~ /\<h1.*\>Header\<\/h1\>/
26
- end
27
- end
28
-
@@ -1,29 +0,0 @@
1
- #
2
- # File 'filter_nil_spec.rb' created on 18 mar 2008 at 12:39:00.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
- # To execute this spec run:
8
- #
9
- # spec spec/filter_nil_spec.rb
10
- #
11
-
12
-
13
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
14
-
15
- require 'rubygems'
16
- require 'spec'
17
- require 'dokkit'
18
- require 'dokkit/filters/nil'
19
-
20
- describe Dokkit::Filter::Nil do
21
- before do
22
- @nil = Dokkit::Filter::Nil.new
23
- end
24
- it 'should not transform source file' do
25
- @result = @nil.filter('Do *not* transform this text.').should == 'Do *not* transform this text.'
26
- end
27
- end
28
-
29
-
@@ -1,48 +0,0 @@
1
- #
2
- # File 'tidy_spec.rb' created on 27 lug 2008 at 14:30:55.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
-
8
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
9
-
10
- require 'rubygems'
11
- require 'spec'
12
- require 'dokkit'
13
- require 'dokkit/filters/tidy'
14
-
15
- INPUT = <<EOI
16
- <html>
17
- <body>
18
- <p>content</p>
19
- </body>
20
- </html>
21
- EOI
22
-
23
- OUTPUT = <<EOO
24
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
25
-
26
- <html>
27
- <head>
28
- <meta name="generator" content=
29
- "HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org">
30
-
31
- <title></title>
32
- </head>
33
-
34
- <body>
35
- <p>content</p>
36
- </body>
37
- </html>
38
- EOO
39
-
40
- describe Dokkit::Filter::Tidy do
41
- before do
42
- @tidy = Dokkit::Filter::Tidy.new
43
- end
44
- it 'should compile an erb template' do
45
- @tidy.filter(INPUT).should == OUTPUT
46
- end
47
- end
48
-
@@ -1,89 +0,0 @@
1
- #
2
- # File 'recursivemerge_spec.rb' created on 09 feb 2008 at 19:08:20.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2006-2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
-
8
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../lib')))
9
-
10
- require 'rubygems'
11
- require 'spec'
12
- require 'dokkit/hash'
13
-
14
- describe Hash do
15
- describe 'when two hash with depth 0 are merged' do
16
- before do
17
- @h1 = { :a => "a", :b => "b" }
18
- @h2 = { :c => "c" }
19
- end
20
- it 'should return a new hash with :a, :b, :c keys' do
21
- @h1.recursive_merge(@h2).should == { :a => "a", :b => "b", :c => "c"}
22
- end
23
- end
24
- describe 'when two hash with depth 1 are merged' do
25
- before do
26
- @h1 = { :depth1 => { :a => "a", :b => "b" }, :b => "b" }
27
- @h2 = { :depth1 => { :a => "a'", :c => "c" }, :b => "b'" }
28
- end
29
- it 'should return a new hash merging depth 1 values,' do
30
- @h1.recursive_merge(@h2).should == { :depth1 => { :a => "a'", :b => "b", :c => "c"}, :b => "b'" }
31
- end
32
- end
33
- describe 'when two hash with depth 2 and depth 1 are merged' do
34
- before do
35
- @h1 = { :depth1 => { :depth2 => { :a => "a", :b => "b" } }, :b => "b" }
36
- @h2 = { :depth1 => { :a => "a'", :b => "b'", :c => "c"}, :b => "b" }
37
- end
38
- it 'should return a new hash merging the depth 1 values adding the depth 2 key' do
39
- @h1.recursive_merge(@h2).should == { :depth1 => {:depth2 => { :a => "a", :b => "b" }, :a => "a'", :b => "b'", :c => "c"}, :b => "b" }
40
- end
41
- end
42
- describe 'when a block is passed to recursive_merge' do
43
- it 'should use the block to store values' do
44
- { :a => 'a' }.recursive_merge({ :a => ['b', 'c'] }) do |key, value, other_value|
45
- if(value.class == String && other_value.class == Array)
46
- value.to_a.concat(other_value)
47
- else
48
- store(key, other_value)
49
- end
50
- end.should == { :a => ['a', 'b', 'c'] }
51
- end
52
- end
53
- describe 'when a string and an array are merged' do
54
- before do
55
- @h1 = { :a => 'a' }
56
- @h2 = { :a => ['b', 'c'] }
57
- end
58
- it 'should concatenate the string and the array' do
59
- @h1.recursive_merge(@h2).should == { :a => ['a', 'b', 'c'] }
60
- @h2.recursive_merge(@h1).should == { :a => ['b', 'c', 'a'] }
61
- end
62
- end
63
- describe 'when two array are merged' do
64
- before do
65
- @h1 = { :a => { :b => ['a', 'b'] } }
66
- @h2 = { :a => { :b => ['c', 'd'] } }
67
- end
68
- it 'should concatenate the arrays' do
69
- @h1.recursive_merge(@h2).should == { :a => { :b => ['a', 'b', 'c', 'd'] } }
70
- end
71
- end
72
- describe 'when a :clear key is encountered' do
73
- it 'should stop merging string and string' do
74
- { :a => 'a', :b => 'b' }.recursive_merge({ :a => 'clear', :c => 'c' }).should == { :a => nil, :b => 'b', :c => 'c' }
75
- end
76
- it 'should stop merging symbol and string' do
77
- { :a => :a, :b => 'b' }.recursive_merge({ :a => 'clear', :c => 'c' }).should == { :a => nil, :b => 'b', :c => 'c' }
78
- end
79
- it 'should stop merging arrays' do
80
- { :a => ['a', 'b'], :b => 'b' }.recursive_merge({ :a => ['a', 'clear'], :c => 'c' }).should == { :a => ['a'], :b => 'b', :c => 'c' }
81
- end
82
- it 'should stop merging array and string' do
83
- { :a => ['a', 'b'], :b => 'b' }.recursive_merge({ :a => 'clear', :c => 'c' }).should == { :a => nil, :b => 'b', :c => 'c' }
84
- end
85
- it 'should stop merging string and array' do
86
- { :a => 'a', :b => 'b' }.recursive_merge({ :a => ['clear', 'b'], :c => 'c' }).should == { :a => ['b'], :b => 'b', :c => 'c' }
87
- end
88
- end
89
- end
@@ -1,138 +0,0 @@
1
- #
2
- # File 'logger_spec.rb' created on 23 feb 2008 at 15:47:50.
3
- # See 'dokkit.rb' or +LICENSE+ for licence information.
4
- #
5
- # (c)2008 Andrea Fazzi <andrea.fazzi@alca.le.it> (and contributors).
6
- #
7
- # To execute this spec run:
8
- #
9
- # spec spec/logger_spec.rb
10
- #
11
-
12
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__),'../../../lib')))
13
-
14
- require 'rubygems'
15
- require 'spec'
16
- require 'dokkit'
17
- require 'dokkit/logging/logger'
18
-
19
- describe Dokkit::Logging::Logger do
20
- before do
21
- @logger = Dokkit::Logging::Logger.new
22
- @observer = mock('observer')
23
- end
24
- it 'should be set with INFO log level by default' do
25
- @logger.level.should == Dokkit::Logging::INFO
26
- end
27
- it 'should fix log level if out of range' do
28
- @logger.level = 5
29
- @logger.level.should == Dokkit::Logging::DEBUG
30
- @logger.level = -2
31
- @logger.level.should == Dokkit::Logging::OFF
32
- end
33
- it 'should add observer to the observers list' do
34
- @logger.attach(@observer).should == @observer
35
- @logger.observers.should == [@observer]
36
- end
37
- it 'should remove the given observer from observers list' do
38
- @logger.attach(@observer)
39
- @logger.detach(@observer).should == @observer
40
- @logger.observers.should be_empty
41
- end
42
- it 'should send updated messages to the observers' do
43
- @observer.should_receive(:update)
44
- @logger.attach(@observer)
45
- @logger.notify
46
- end
47
- end
48
-
49
- describe Dokkit::Logging::Logger, ' when log level changes' do
50
- before do
51
- @logger = Dokkit::Logging::Logger.new
52
- end
53
- describe ' to OFF' do
54
- before do
55
- @logger.level = Dokkit::Logging::OFF
56
- end
57
- it 'should disable logging' do
58
- @logger.error('This is an error message.').should be_nil
59
- @logger.warn('This is a warning message').should be_nil
60
- @logger.info('This is an info message').should be_nil
61
- @logger.debug('This is a debug message').should be_nil
62
- end
63
- end
64
- describe ' to ERROR' do
65
- before do
66
- @logger.level = Dokkit::Logging::ERROR
67
- end
68
- it 'should send error messages only' do
69
- @logger.error('This is an error message.').should == {
70
- :text => 'This is an error message.',
71
- :level => Dokkit::Logging::ERROR
72
- }
73
- @logger.warn('This is a warning message').should be_nil
74
- @logger.info('This is an info message').should be_nil
75
- @logger.debug('This is a debug message').should be_nil
76
- end
77
- end
78
- describe ' to WARNING' do
79
- before do
80
- @logger.level = Dokkit::Logging::WARNING
81
- end
82
- it 'should send error and warning messages only' do
83
- @logger.error('This is an error message.').should == {
84
- :text => 'This is an error message.',
85
- :level => Dokkit::Logging::ERROR
86
- }
87
- @logger.warn('This is a warning message.').should == {
88
- :text => 'This is a warning message.',
89
- :level => Dokkit::Logging::WARNING
90
- }
91
- @logger.info('This is an info message').should be_nil
92
- @logger.debug('This is a debug message').should be_nil
93
- end
94
- end
95
- describe ' to INFO' do
96
- before do
97
- @logger.level = Dokkit::Logging::INFO
98
- end
99
- it 'should send error, warning and info messages only' do
100
- @logger.error('This is an error message.').should == {
101
- :text => 'This is an error message.',
102
- :level => Dokkit::Logging::ERROR
103
- }
104
- @logger.warn('This is a warning message.').should == {
105
- :text => 'This is a warning message.',
106
- :level => Dokkit::Logging::WARNING
107
- }
108
- @logger.info('This is an info message.').should == {
109
- :text => 'This is an info message.',
110
- :level => Dokkit::Logging::INFO
111
- }
112
- @logger.debug('This is a debug message').should be_nil
113
- end
114
- end
115
- describe ' to DEBUG' do
116
- before do
117
- @logger.level = Dokkit::Logging::DEBUG
118
- end
119
- it 'should send all messages' do
120
- @logger.error('This is an error message.').should == {
121
- :text => 'This is an error message.',
122
- :level => Dokkit::Logging::ERROR
123
- }
124
- @logger.warn('This is a warning message.').should == {
125
- :text => 'This is a warning message.',
126
- :level => Dokkit::Logging::WARNING
127
- }
128
- @logger.info('This is an info message.').should == {
129
- :text => 'This is an info message.',
130
- :level => Dokkit::Logging::INFO
131
- }
132
- @logger.debug('This is a debug message.').should == {
133
- :text => 'This is a debug message.',
134
- :level => Dokkit::Logging::DEBUG
135
- }
136
- end
137
- end
138
- end