ghost_writer 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +2 -1
- data/bin/ghost_writer +2 -0
- data/ghost_writer.gemspec +2 -2
- data/lib/ghost_writer.rb +14 -6
- data/lib/ghost_writer/document.rb +18 -18
- data/lib/ghost_writer/document_index.rb +4 -2
- data/lib/ghost_writer/format/markdown.rb +4 -1
- data/lib/ghost_writer/format/rst.rb +45 -0
- data/lib/ghost_writer/version.rb +1 -1
- data/spec/lib/ghost_writer_spec.rb +1 -1
- data/spec/rails_app/config/environments/development.rb +2 -3
- data/spec/rails_app/config/environments/production.rb +2 -0
- data/spec/rails_app/config/environments/test.rb +2 -3
- data/spec/rails_app/config/initializers/secret_token.rb +1 -1
- metadata +26 -40
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 967ed54744c35d63d0a06e6665ae69ab314f6f34
|
4
|
+
data.tar.gz: 20c5650513d18bc21298317222409fd8986b7ad8
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 642ed40681a6b8a79aac3988029b8a96e347a4ab2d98809ef3bdbddd7af285114852a069aca3f2a21ffb871d21da1d2c4fd43bce2ccbdd4d91e3f10e33a47a30
|
7
|
+
data.tar.gz: e59c1e45a4bf4ce60770970c9c26d52f7a8d9bf30b111ed7385b8f22442cb52d30843f585c23506f361db6e747adc58e6247e134a34df50158c8a24cb232f046
|
data/README.md
CHANGED
@@ -28,6 +28,7 @@ Write controller spec:
|
|
28
28
|
RSpec.configure do |config|
|
29
29
|
# The difference with previous version. already no need including Module and Defining after hook
|
30
30
|
GhostWriter.output_dir = "api_docs" # Optional (default is "api_examples")
|
31
|
+
GhostWriter.output_format = :rst # Optional (default is :markdown)
|
31
32
|
GhostWriter.github_base_url = "https://github.com/joker1007/ghost_writer/tree/master/output_examples" # Optional
|
32
33
|
end
|
33
34
|
|
@@ -49,7 +50,7 @@ describe PostsController do
|
|
49
50
|
end
|
50
51
|
```
|
51
52
|
|
52
|
-
And set environment variable
|
53
|
+
And set environment variable GENERATE\_API\_DOC at runtime
|
53
54
|
```
|
54
55
|
bundle exec ghost_writer spec/controllers
|
55
56
|
-> generate docs at [Rails.root]/doc/api_examples
|
data/bin/ghost_writer
CHANGED
@@ -18,6 +18,7 @@ where [options] are:
|
|
18
18
|
EOS
|
19
19
|
|
20
20
|
opt :output, "Output directory", :type => String
|
21
|
+
opt :format, "Output doc format (default: markdown, availables: markdown, rst)", :type => String
|
21
22
|
opt :clear, "[Caution] Clear Output directory before running specs", :default => false
|
22
23
|
end
|
23
24
|
|
@@ -29,6 +30,7 @@ end
|
|
29
30
|
RSpec.configure do |c|
|
30
31
|
c.include GhostWriter
|
31
32
|
GhostWriter.output_dir = opts[:output]
|
33
|
+
GhostWriter.output_format = opts[:format].to_sym if opts[:format]
|
32
34
|
c.after(:suite) do
|
33
35
|
GhostWriter.generate_api_doc
|
34
36
|
end
|
data/ghost_writer.gemspec
CHANGED
@@ -21,8 +21,8 @@ Gem::Specification.new do |gem|
|
|
21
21
|
gem.add_dependency "rspec-rails", "~> 2.11"
|
22
22
|
gem.add_dependency "trollop"
|
23
23
|
|
24
|
-
gem.add_development_dependency "rspec", "~> 2.12"
|
24
|
+
gem.add_development_dependency "rspec-rails", "~> 2.12"
|
25
25
|
gem.add_development_dependency 'rake', ['>= 0']
|
26
|
-
gem.add_development_dependency 'rails', ['
|
26
|
+
gem.add_development_dependency 'rails', ['>= 3.2.9', '< 5']
|
27
27
|
gem.add_development_dependency 'tapp'
|
28
28
|
end
|
data/lib/ghost_writer.rb
CHANGED
@@ -8,13 +8,15 @@ module GhostWriter
|
|
8
8
|
|
9
9
|
module Format
|
10
10
|
autoload "Markdown", "ghost_writer/format/markdown"
|
11
|
+
autoload "Rst", "ghost_writer/format/rst"
|
11
12
|
end
|
12
13
|
|
13
|
-
DEFAULT_OUTPUT_DIR = "api_examples"
|
14
|
-
|
14
|
+
DEFAULT_OUTPUT_DIR = "api_examples".freeze
|
15
|
+
DEFAULT_FORMAT = :markdown
|
16
|
+
DOCUMENT_INDEX_FILENAME = "document_index".freeze
|
15
17
|
|
16
18
|
class << self
|
17
|
-
attr_writer :output_dir, :output_flag
|
19
|
+
attr_writer :output_dir, :output_flag, :output_format
|
18
20
|
attr_accessor :github_base_url
|
19
21
|
|
20
22
|
def document_group
|
@@ -27,7 +29,7 @@ module GhostWriter
|
|
27
29
|
unless File.exist?(output_path)
|
28
30
|
FileUtils.mkdir_p(output_path)
|
29
31
|
end
|
30
|
-
document_index = GhostWriter::DocumentIndex.new(output_path + DOCUMENT_INDEX_FILENAME, document_group)
|
32
|
+
document_index = GhostWriter::DocumentIndex.new(output_path + "#{DOCUMENT_INDEX_FILENAME}.#{output_format}", document_group, GhostWriter.output_format)
|
31
33
|
document_index.write_file
|
32
34
|
document_group.each do |output, docs|
|
33
35
|
docs.sort_by!(&:description)
|
@@ -50,10 +52,14 @@ module GhostWriter
|
|
50
52
|
def output_path
|
51
53
|
Rails.root + "doc" + output_dir
|
52
54
|
end
|
55
|
+
|
56
|
+
def output_format
|
57
|
+
@output_format || DEFAULT_FORMAT
|
58
|
+
end
|
53
59
|
end
|
54
60
|
|
55
61
|
def collect_example
|
56
|
-
output = File.join(doc_dir, "#{doc_name}.
|
62
|
+
output = File.join(doc_dir, "#{doc_name}.#{GhostWriter.output_format}")
|
57
63
|
document = GhostWriter::Document.new(output, {
|
58
64
|
title: "#{described_class} #{doc_name.titleize}",
|
59
65
|
description: example.full_description.dup,
|
@@ -62,7 +68,9 @@ module GhostWriter
|
|
62
68
|
param_example: controller.params.reject {|key, val| key == "controller" || key == "action"},
|
63
69
|
status_example: response.status.inspect,
|
64
70
|
response_example: response.body,
|
71
|
+
format: GhostWriter.output_format
|
65
72
|
})
|
73
|
+
|
66
74
|
GhostWriter.document_group[output] ||= []
|
67
75
|
GhostWriter.document_group[output] << document
|
68
76
|
end
|
@@ -82,7 +90,7 @@ module GhostWriter
|
|
82
90
|
|
83
91
|
included do
|
84
92
|
after do
|
85
|
-
if example.metadata[:type] == :controller && example.metadata[:generate_api_doc]
|
93
|
+
if (example.metadata[:type] == :controller || example.metadata[:type] == :request) && example.metadata[:generate_api_doc]
|
86
94
|
collect_example if GhostWriter.output_flag
|
87
95
|
end
|
88
96
|
end
|
@@ -2,7 +2,9 @@ class GhostWriter::Document
|
|
2
2
|
attr_reader :title, :description, :location, :url_example, :param_example, :status_example, :response_example, :output, :relative_path
|
3
3
|
|
4
4
|
def initialize(output, attrs)
|
5
|
-
|
5
|
+
format_module = "GhostWriter::Format::#{attrs[:format].to_s.classify}"
|
6
|
+
extend(format_module.constantize)
|
7
|
+
|
6
8
|
@output = output
|
7
9
|
@relative_path = Pathname.new(output).relative_path_from(GhostWriter.output_path)
|
8
10
|
@title = attrs[:title]
|
@@ -23,46 +25,44 @@ class GhostWriter::Document
|
|
23
25
|
doc = File.open(output, mode)
|
24
26
|
|
25
27
|
if overwrite
|
26
|
-
doc.write paragraph(
|
28
|
+
doc.write paragraph(document_header)
|
29
|
+
end
|
30
|
+
|
31
|
+
doc.write(document_body)
|
32
|
+
|
33
|
+
doc.close
|
34
|
+
end
|
35
|
+
|
36
|
+
def document_header
|
37
|
+
<<EOP
|
27
38
|
#{headword(title, 1)}
|
28
39
|
|
29
|
-
|
40
|
+
#{separator(32)}
|
30
41
|
|
31
42
|
EOP
|
32
|
-
|
43
|
+
end
|
33
44
|
|
34
|
-
|
45
|
+
def document_body
|
46
|
+
<<EOP
|
35
47
|
#{headword(description, 2)}
|
36
|
-
EOP
|
37
48
|
|
38
|
-
doc.write paragraph(<<EOP)
|
39
49
|
#{headword("access path:", 3)}
|
40
50
|
#{quote(url_example)}
|
41
|
-
EOP
|
42
51
|
|
43
|
-
doc.write paragraph(<<EOP)
|
44
52
|
#{headword("request params:", 3)}
|
45
53
|
#{quote(param_example.inspect, :ruby)}
|
46
|
-
EOP
|
47
54
|
|
48
|
-
doc.write paragraph(<<EOP)
|
49
55
|
#{headword("status code:", 3)}
|
50
56
|
#{quote(status_example)}
|
51
|
-
EOP
|
52
57
|
|
53
|
-
doc.write paragraph(<<EOP)
|
54
58
|
#{headword("response:", 3)}
|
55
59
|
#{quote_response(response_example)}
|
56
|
-
EOP
|
57
60
|
|
58
|
-
doc.write paragraph(<<EOP)
|
59
61
|
Generated by "#{description}\" at #{location}
|
60
62
|
|
61
|
-
|
63
|
+
#{separator(32)}
|
62
64
|
|
63
65
|
EOP
|
64
|
-
|
65
|
-
doc.close
|
66
66
|
end
|
67
67
|
|
68
68
|
private
|
@@ -1,8 +1,10 @@
|
|
1
1
|
class GhostWriter::DocumentIndex
|
2
2
|
attr_reader :output, :documents
|
3
3
|
|
4
|
-
def initialize(output, documents)
|
5
|
-
|
4
|
+
def initialize(output, documents, format)
|
5
|
+
format_module = "GhostWriter::Format::#{format.to_s.classify}"
|
6
|
+
extend(format_module.constantize)
|
7
|
+
|
6
8
|
@output = output
|
7
9
|
@documents = documents
|
8
10
|
end
|
@@ -2,7 +2,6 @@ module GhostWriter
|
|
2
2
|
module Format
|
3
3
|
module Markdown
|
4
4
|
private
|
5
|
-
# TODO: outputのフォーマットを選択可能に
|
6
5
|
def headword(text, level = 1)
|
7
6
|
"#{'#'*level} #{text}"
|
8
7
|
end
|
@@ -11,6 +10,10 @@ module GhostWriter
|
|
11
10
|
text + "\n"
|
12
11
|
end
|
13
12
|
|
13
|
+
def separator(length)
|
14
|
+
"-" * length
|
15
|
+
end
|
16
|
+
|
14
17
|
def quote(text, quote_format = nil)
|
15
18
|
"```#{quote_format}\n#{text}\n```"
|
16
19
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module GhostWriter
|
2
|
+
module Format
|
3
|
+
module Rst
|
4
|
+
private
|
5
|
+
def headword(text, level = 1)
|
6
|
+
char = case level
|
7
|
+
when 1
|
8
|
+
"*"
|
9
|
+
when 2
|
10
|
+
"="
|
11
|
+
when 3
|
12
|
+
"-"
|
13
|
+
when 4
|
14
|
+
"^"
|
15
|
+
end
|
16
|
+
text + "\n" + char * text.length * 2
|
17
|
+
end
|
18
|
+
|
19
|
+
def paragraph(text)
|
20
|
+
text + "\n"
|
21
|
+
end
|
22
|
+
|
23
|
+
def separator(length)
|
24
|
+
""
|
25
|
+
end
|
26
|
+
|
27
|
+
def quote(text, quote_format = nil)
|
28
|
+
if quote_format
|
29
|
+
marker = ".. code-block:: #{quote_format}" + "\n"
|
30
|
+
else
|
31
|
+
marker = "::" + "\n"
|
32
|
+
end
|
33
|
+
marker + "#{text.each_line.map{|line| line.chomp.empty? ? line : " " + line}.join}"
|
34
|
+
end
|
35
|
+
|
36
|
+
def list(text, level = 1)
|
37
|
+
"#{" " * (level - 1)}* #{text}"
|
38
|
+
end
|
39
|
+
|
40
|
+
def link(text, url)
|
41
|
+
"`#{text} #{url}`_"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
data/lib/ghost_writer/version.rb
CHANGED
@@ -94,7 +94,7 @@ describe GhostWriter do
|
|
94
94
|
GhostWriter.github_base_url = github_base_url
|
95
95
|
group.run(NullObject.new)
|
96
96
|
GhostWriter.generate_api_doc
|
97
|
-
File.read(Rails.root + "doc" + "api_examples" + GhostWriter::DOCUMENT_INDEX_FILENAME).should =~ /#{github_base_url}/
|
97
|
+
File.read(Rails.root + "doc" + "api_examples" + "#{GhostWriter::DOCUMENT_INDEX_FILENAME}.#{GhostWriter.output_format}").should =~ /#{github_base_url}/
|
98
98
|
end
|
99
99
|
end
|
100
100
|
end
|
@@ -6,9 +6,6 @@ RailsApp::Application.configure do
|
|
6
6
|
# since you don't have to restart the web server when you make code changes.
|
7
7
|
config.cache_classes = false
|
8
8
|
|
9
|
-
# Log error messages when you accidentally call methods on nil.
|
10
|
-
config.whiny_nils = true
|
11
|
-
|
12
9
|
# Show full error reports and disable caching
|
13
10
|
config.consider_all_requests_local = true
|
14
11
|
config.action_controller.perform_caching = false
|
@@ -34,4 +31,6 @@ RailsApp::Application.configure do
|
|
34
31
|
|
35
32
|
# Expands the lines which load the assets
|
36
33
|
config.assets.debug = true
|
34
|
+
|
35
|
+
config.eager_load = false
|
37
36
|
end
|
@@ -11,9 +11,6 @@ RailsApp::Application.configure do
|
|
11
11
|
config.serve_static_assets = true
|
12
12
|
config.static_cache_control = "public, max-age=3600"
|
13
13
|
|
14
|
-
# Log error messages when you accidentally call methods on nil
|
15
|
-
config.whiny_nils = true
|
16
|
-
|
17
14
|
# Show full error reports and disable caching
|
18
15
|
config.consider_all_requests_local = true
|
19
16
|
config.action_controller.perform_caching = false
|
@@ -34,4 +31,6 @@ RailsApp::Application.configure do
|
|
34
31
|
|
35
32
|
# Print deprecation notices to the stderr
|
36
33
|
config.active_support.deprecation = :stderr
|
34
|
+
|
35
|
+
config.eager_load = false
|
37
36
|
end
|
@@ -4,4 +4,4 @@
|
|
4
4
|
# If you change this key, all old signed cookies will become invalid!
|
5
5
|
# Make sure the secret is at least 30 characters and all random,
|
6
6
|
# no regular words or you'll be exposed to dictionary attacks.
|
7
|
-
RailsApp::Application.config.
|
7
|
+
RailsApp::Application.config.secret_key_base = '98e50fa60d0ddcf9c64b8b87e0dfd8c247885c4cbcaeecf37d24fc4b5fb2cd36c9744a5165653efc77d5ced8cb4a6c7157d3752721b0acc2e7b69b7f2b915b9a'
|
metadata
CHANGED
@@ -1,36 +1,32 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ghost_writer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.3.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- joker1007
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-08-06 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: activesupport
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: 3.0.0
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: 3.0.0
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rspec-rails
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,23 +41,20 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: trollop
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - '>='
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
|
-
name: rspec
|
56
|
+
name: rspec-rails
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,49 +69,49 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: rake
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - '>='
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
80
|
+
- - '>='
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: '0'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: rails
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - '>='
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: 3.2.9
|
90
|
+
- - <
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '5'
|
102
93
|
type: :development
|
103
94
|
prerelease: false
|
104
95
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
96
|
requirements:
|
107
|
-
- -
|
97
|
+
- - '>='
|
108
98
|
- !ruby/object:Gem::Version
|
109
99
|
version: 3.2.9
|
100
|
+
- - <
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '5'
|
110
103
|
- !ruby/object:Gem::Dependency
|
111
104
|
name: tapp
|
112
105
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
106
|
requirements:
|
115
|
-
- -
|
107
|
+
- - '>='
|
116
108
|
- !ruby/object:Gem::Version
|
117
109
|
version: '0'
|
118
110
|
type: :development
|
119
111
|
prerelease: false
|
120
112
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
113
|
requirements:
|
123
|
-
- -
|
114
|
+
- - '>='
|
124
115
|
- !ruby/object:Gem::Version
|
125
116
|
version: '0'
|
126
117
|
description: Generate API examples from params and response of controller specs
|
@@ -143,6 +134,7 @@ files:
|
|
143
134
|
- lib/ghost_writer/document.rb
|
144
135
|
- lib/ghost_writer/document_index.rb
|
145
136
|
- lib/ghost_writer/format/markdown.rb
|
137
|
+
- lib/ghost_writer/format/rst.rb
|
146
138
|
- lib/ghost_writer/version.rb
|
147
139
|
- output_examples/anonymous_controller/index.markdown
|
148
140
|
- output_examples/anonymous_controller/show.markdown
|
@@ -189,33 +181,26 @@ files:
|
|
189
181
|
- spec/spec_helper.rb
|
190
182
|
homepage: https://github.com/joker1007/ghost_writer
|
191
183
|
licenses: []
|
184
|
+
metadata: {}
|
192
185
|
post_install_message:
|
193
186
|
rdoc_options: []
|
194
187
|
require_paths:
|
195
188
|
- lib
|
196
189
|
required_ruby_version: !ruby/object:Gem::Requirement
|
197
|
-
none: false
|
198
190
|
requirements:
|
199
|
-
- -
|
191
|
+
- - '>='
|
200
192
|
- !ruby/object:Gem::Version
|
201
193
|
version: '0'
|
202
|
-
segments:
|
203
|
-
- 0
|
204
|
-
hash: 885870710401004349
|
205
194
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
206
|
-
none: false
|
207
195
|
requirements:
|
208
|
-
- -
|
196
|
+
- - '>='
|
209
197
|
- !ruby/object:Gem::Version
|
210
198
|
version: '0'
|
211
|
-
segments:
|
212
|
-
- 0
|
213
|
-
hash: 885870710401004349
|
214
199
|
requirements: []
|
215
200
|
rubyforge_project:
|
216
|
-
rubygems_version:
|
201
|
+
rubygems_version: 2.0.3
|
217
202
|
signing_key:
|
218
|
-
specification_version:
|
203
|
+
specification_version: 4
|
219
204
|
summary: Generate API examples from params and response of controller specs
|
220
205
|
test_files:
|
221
206
|
- spec/lib/ghost_writer_spec.rb
|
@@ -258,3 +243,4 @@ test_files:
|
|
258
243
|
- spec/rails_app/test/test_helper.rb
|
259
244
|
- spec/rails_app/test/unit/.gitkeep
|
260
245
|
- spec/spec_helper.rb
|
246
|
+
has_rdoc:
|