codemerger 0.2.1 → 0.3.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.
data/.gitignore CHANGED
@@ -4,3 +4,5 @@ pkg/*
4
4
  .redcar/*
5
5
  *.swo
6
6
  *.swp
7
+ output/*
8
+ coverage/*
data/.rvmrc ADDED
@@ -0,0 +1,41 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # This is an RVM Project .rvmrc file, used to automatically load the ruby
4
+ # development environment upon cd'ing into the directory
5
+
6
+ # First we specify our desired <ruby>[@<gemset>], the @gemset name is optional.
7
+ environment_id="ruby-1.9.2-p180"
8
+
9
+ #
10
+ # First we attempt to load the desired environment directly from the environment
11
+ # file. This is very fast and efficient compared to running through the entire
12
+ # CLI and selector. If you want feedback on which environment was used then
13
+ # insert the word 'use' after --create as this triggers verbose mode.
14
+ #
15
+ if [[ -d "${rvm_path:-$HOME/.rvm}/environments" \
16
+ && -s "${rvm_path:-$HOME/.rvm}/environments/$environment_id" ]]
17
+ then
18
+ \. "${rvm_path:-$HOME/.rvm}/environments/$environment_id"
19
+
20
+ if [[ -s ".rvm/hooks/after_use" ]]
21
+ then
22
+ . ".rvm/hooks/after_use"
23
+ fi
24
+ else
25
+ # If the environment file has not yet been created, use the RVM CLI to select.
26
+ if ! rvm --create use "$environment_id"
27
+ then
28
+ echo "Failed to create RVM environment ''."
29
+ fi
30
+ fi
31
+
32
+ #
33
+ # If you use an RVM gemset file to install a list of gems (*.gems), you can have
34
+ # it be automatically loaded. Uncomment the following and adjust the filename if
35
+ # necessary.
36
+ #
37
+ # filename=".gems"
38
+ # if [[ -s "$filename" ]] ; then
39
+ # rvm gemset import "$filename" | grep -v already | grep -v listed | grep -v complete | sed '/^$/d'
40
+ # fi
41
+
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
1
  source "http://rubygems.org"
2
-
2
+ gem 'rake'
3
3
  # Specify your gem's dependencies in codemerger.gemspec
4
4
  gemspec
@@ -1,19 +1,27 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- codemerger (0.0.1)
5
- maruku
4
+ codemerger (0.3.2)
5
+ albino (= 1.3.3)
6
+ redcarpet (= 2.0.0b3)
6
7
 
7
8
  GEM
8
9
  remote: http://rubygems.org/
9
10
  specs:
10
- maruku (0.6.0)
11
- syntax (>= 1.0.0)
12
- syntax (1.0.0)
11
+ albino (1.3.3)
12
+ posix-spawn (>= 0.3.6)
13
+ posix-spawn (0.3.6)
14
+ rake (0.9.2)
15
+ redcarpet (2.0.0b3)
16
+ simplecov (0.4.2)
17
+ simplecov-html (~> 0.4.4)
18
+ simplecov-html (0.4.4)
13
19
 
14
20
  PLATFORMS
21
+ ruby
15
22
  x86-mingw32
16
23
 
17
24
  DEPENDENCIES
18
25
  codemerger!
19
- maruku
26
+ rake
27
+ simplecov
@@ -1,53 +1,53 @@
1
- This gem is used to help writing technical posts for wordpress.
2
-
3
- To use this GEM I usually create a new directory for the post or post group project, then I create a Gemfile like this:
4
-
1
+ This gem is used to help writing technical posts for wordpress.
2
+
3
+ To use this GEM I usually create a new directory for the post or post group project, then I create a Gemfile like this:
4
+
5
5
  source "http://rubygems.org"
6
6
  group :rake do
7
7
  gem "codemerger", "0.1.0", :require => "codemerger/rake_tasks"
8
8
  end
9
-
10
- After that I create a Rakefile like this:
11
-
9
+
10
+ After that I create a Rakefile like this:
11
+
12
12
  require "rubygems"
13
13
  require "bundler/setup"
14
14
  Bundler.require :rake
15
15
 
16
- Then just start creating the post file in the root directory, the project supports .html or .markdown files for the posts.
17
- Inside this file, when I want to include a source sample, I create another file for the sample, and then I include it into the main post file with a code like this:
18
-
19
- {{full/path/to/the/file.rb}}
20
-
21
- When the post is ready I run teh rake task:
22
-
23
- rake codemerger:merge
24
-
25
- After that, the file I was writting is processed, a new file is created into the output directory and the sample source files are included with a code like this:
26
-
27
- <b>{{full/path/to/the/file.rb}}</b>
28
- <pre line="1" lang="ruby">
29
- ruby code
30
- </pre>
31
-
32
- This snippet is then copied and pasted to a post into my wordpress blog, and the code gets colored using the plugin wp-syntax, and the output can be turned into PDF with the plugin wp-mpdf.
33
-
34
- Today this gem supports source files in the following languages:
35
-
36
- * Ruby (including Rakefile and Gemfile)
37
- * Java
38
- * YAML
39
- * HTML
40
- * XML
41
- * Scala
42
- * CSS
43
- * Javascript
44
- * Bash
45
- * Batch
46
-
47
- All other files are configured as "text".
48
-
49
- For the next steps I'm planning to write more automated tests, refactor the language support code out, today it is a switch statement to convert from a file extension to a name supported by wp-syntax/Geshi and add support for templates and direct conversion of the source samples to colored HTML.
50
-
51
- All these changes are simple, but besides the automated tests, I do not need any of the other right now, if you think they will be usefull for you, send me a message, file an enhancement request or fork, implement and send me a pull request.
52
-
16
+ Then just start creating the post file in the root directory, the project supports .html or .markdown files for the posts.
17
+ Inside this file, when I want to include a source sample, I create another file for the sample, and then I include it into the main post file with a code like this:
18
+
19
+ {{full/path/to/the/file.rb}}
20
+
21
+ When the post is ready I run teh rake task:
22
+
23
+ rake codemerger:merge
24
+
25
+ After that, the file I was writting is processed, a new file is created into the output directory and the sample source files are included with a code like this:
26
+
27
+ <b>{{full/path/to/the/file.rb}}</b>
28
+ <pre line="1" lang="ruby">
29
+ ruby code
30
+ </pre>
31
+
32
+ This snippet is then copied and pasted to a post into my wordpress blog, and the code gets colored using the plugin wp-syntax, and the output can be turned into PDF with the plugin wp-mpdf.
33
+
34
+ Today this gem supports source files in the following languages:
35
+
36
+ * Ruby (including Rakefile and Gemfile)
37
+ * Java
38
+ * YAML
39
+ * HTML
40
+ * XML
41
+ * Scala
42
+ * CSS
43
+ * Javascript
44
+ * Bash
45
+ * Batch
46
+
47
+ All other files are configured as "text".
48
+
49
+ For the next steps I'm planning to write more automated tests, refactor the language support code out, today it is a switch statement to convert from a file extension to a name supported by wp-syntax/Geshi and add support for templates and direct conversion of the source samples to colored HTML.
50
+
51
+ All these changes are simple, but besides the automated tests, I do not need any of the other right now, if you think they will be usefull for you, send me a message, file an enhancement request or fork, implement and send me a pull request.
52
+
53
53
  Any testing or comments will be of great value, today, I think only I'm using this GEM.
data/Rakefile CHANGED
@@ -1,5 +1,9 @@
1
+ require 'simplecov'
1
2
  require 'bundler'
2
- task :fake do
3
-
4
- end
3
+ require 'rake/testtask'
4
+ SimpleCov.start
5
+ require 'codemerger'
5
6
  Bundler::GemHelper.install_tasks :name => 'codemerger'
7
+ Rake::TestTask.new do |t|
8
+ t.pattern = "test/*_spec.rb"
9
+ end
@@ -11,25 +11,27 @@ Gem::Specification.new do |s|
11
11
  s.homepage = "https://github.com/urubatan/codemerger"
12
12
  s.summary = %q{Used to create blog posts and tecnical articles that need code samples, the code samples will be taken from the actual source code file instead of a copy paste approach}
13
13
  s.description = %q{This gem is used to help writing technical posts for wordpress.
14
- The output is copied and pasted to a post into my wordpress blog, and the code gets colored using the plugin wp-syntax, and the output can be turned into PDF with the plugin wp-mpdf.
15
-
16
- Today this gem supports source files in the following languages:
17
-
18
- * Ruby (including Rakefile and Gemfile)
19
- * Java
20
- * YAML
21
- * HTML
22
- * XML
23
- * Scala
24
- * CSS
25
- * Javascript
26
- * Bash
27
- * Batch
28
-
14
+ The output is copied and pasted to a post into my wordpress blog, and the code gets colored using the plugin wp-syntax, and the output can be turned into PDF with the plugin wp-mpdf.
15
+
16
+ Today this gem supports source files in the following languages:
17
+
18
+ * Ruby (including Rakefile and Gemfile)
19
+ * Java
20
+ * YAML
21
+ * HTML
22
+ * XML
23
+ * Scala
24
+ * CSS
25
+ * Javascript
26
+ * Bash
27
+ * Batch
28
+
29
29
  All other files are configured as "text".}
30
30
 
31
31
  s.rubyforge_project = "codemerger"
32
- s.add_dependency 'maruku'
32
+ s.add_dependency 'redcarpet', '2.0.0b3'
33
+ s.add_dependency "albino", "1.3.3"
34
+ s.add_development_dependency 'simplecov'
33
35
 
34
36
  s.files = `git ls-files`.split("\n")
35
37
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -1,3 +1,2 @@
1
- module Codemerger
2
- # Your code goes here...
3
- end
1
+ require 'codemerger/version'
2
+ require 'codemerger/merger'
@@ -0,0 +1,126 @@
1
+ require 'fileutils'
2
+ require 'redcarpet'
3
+ require 'albino'
4
+
5
+ module Codemerger
6
+ class HTMLwithAlbino < Redcarpet::Render::HTML
7
+ include Redcarpet::Render::SmartyPants
8
+ def code(code, language)
9
+ if language
10
+ Albino.new(code, language).colorize({O:"linenos=table,encoding=utf-8"})
11
+ else
12
+ %Q{<pre><code>#{code}</code></pre>}
13
+ end
14
+ end
15
+ def block_html(raw_html)
16
+ @markdown ||= Redcarpet::Markdown.new(HTMLwithAlbino.new,
17
+ :autolink => true, :space_after_headers => true, :superscript => true,
18
+ :fenced_code_blocks => true, :tables => true, :no_intra_emphasis => true)
19
+ m,tag,attrs,content = *(raw_html.match(/<([a-z]+)(.*?)>(.*)<\/\1>/m))
20
+ result = @markdown.render(content)
21
+ %Q{<#{tag}#{attrs}>
22
+ #{result}
23
+ </#{tag}>
24
+ }
25
+ end
26
+ def block_code(code, language)
27
+ if language
28
+ Albino.new(code, language).colorize({O:"linenos=table,encoding=utf-8"})
29
+ else
30
+ %Q{<pre><code>#{code}</code></pre>}
31
+ end
32
+ end
33
+ end
34
+ class Merger
35
+ attr_reader :markdown
36
+ def initialize(dir_name)
37
+ @dir_name = dir_name
38
+ end
39
+ def clean_dirs
40
+ FileUtils.rm_rf 'output'
41
+ FileUtils.mkdir_p 'output'
42
+ FileUtils.mkdir_p "output/#{@dir_name}" if @dir_name != '.'
43
+ end
44
+ def get_language_str(ext)
45
+ case ext
46
+ when ".yml"; "yaml"
47
+ when ".xml"; "xml"
48
+ when ".html"; "xml"
49
+ when ".rb"; "ruby"
50
+ when ".java"; "java"
51
+ when ".scala"; "scala"
52
+ when ".erb"; "erb"
53
+ when ".xsl"; "xslt"
54
+ when ".css"; "css"
55
+ when ".scss"; "scss"
56
+ when ".coffee"; "coffeescript"
57
+ when ".js"; "javascript"
58
+ when ".sh"; "bash"
59
+ when ".bat"; "batch"
60
+ when ".xhtml"; "xml"
61
+ when nil; "ruby"
62
+ else; "text"
63
+ end
64
+ end
65
+ def sanitize(fname)
66
+ fname.gsub(/.*?:/, "")
67
+ end
68
+ def read_contents(fname)
69
+ if fname =~ /.+:/
70
+ `git cat-file blob #{fname}`
71
+ else
72
+ IO.readlines(fname).join('')
73
+ end
74
+ end
75
+ def build_html_merged_file_content(f_name)
76
+ ext = f_name[/(\.[a-zA-Z]+)/]
77
+ lang_str = get_language_str(ext)
78
+ %Q{
79
+ <b>#{sanitize(f_name)}</b>
80
+ <pre line="1" lang="#{lang_str}">
81
+ #{read_contents(f_name)}
82
+ </pre>
83
+ }
84
+ end
85
+ def build_md_merged_file_content(f_name)
86
+ ext = f_name[/(\.[a-zA-Z]+)/]
87
+ lang_str = get_language_str(ext)
88
+ %Q{_#{sanitize(f_name)}_
89
+
90
+ ```#{lang_str}
91
+ #{read_contents(f_name)}
92
+ ```
93
+ }
94
+ end
95
+ def process_files
96
+ in_files = Dir.glob("#{@dir_name}/*.{markdown,md,html}")
97
+ in_files.sort.each do |file|
98
+ in_lines = IO.readlines(file).join('')
99
+ is_markdown = (file =~ /markdown$/) || (file =~ /md$/)
100
+ out_fname = file[/^.*\./]
101
+ out_f = File.new("output/#{out_fname}html", 'w')
102
+ if is_markdown
103
+ in_lines.gsub!(/(\{\{[\/a-zA-Z0-9:_]+(?>\.[a-z:_A-Z0-9]{2,}){0,3}\}\})/) do |f_name_match|
104
+ puts "Merging #{f_name_match}"
105
+ f_name = f_name_match[2..-3]
106
+ build_md_merged_file_content(f_name)
107
+ end
108
+ out_f << processMarkdown(in_lines)
109
+ else
110
+ out_f << in_lines.gsub(/(\{\{[\/a-zA-Z0-9_]+(?>\.[a-zA-Z0-9]{2,}){0,3}\}\})/) do |f_name_match|
111
+ puts "Merging #{f_name_match}"
112
+ f_name = f_name_match[2..-3]
113
+ build_html_merged_file_content(f_name)
114
+ end
115
+ end
116
+ end
117
+ end
118
+ def processMarkdown(text)
119
+ @markdown ||= Redcarpet::Markdown.new(HTMLwithAlbino.new,
120
+ :autolink => true, :space_after_headers => true, :superscript => true,
121
+ :fenced_code_blocks => true, :tables => true, :no_intra_emphasis => true)
122
+ result = @markdown.render(text)
123
+ result
124
+ end
125
+ end
126
+ end
@@ -1,43 +1,9 @@
1
+ require 'codemerger'
1
2
  namespace "codemerger" do
2
3
  desc "Merge all the markdown files and the source files to create the output/post.html file"
3
4
  task :merge do
4
- require 'fileutils'
5
- FileUtils.rm_rf 'output'
6
- FileUtils.mkdir_p 'output'
7
- in_files = Dir.glob("*.{markdown,html}")
8
- in_files.sort.each do |file|
9
- in_lines = IO.readlines(file).join('')
10
- in_lines = Maruku.new(in_lines).to_html if file =~ /markdown$/
11
- out_fname = file[/^.*\./]
12
- out_f = File.new("output/#{out_fname}html", 'w')
13
- out_f << in_lines.gsub(/(\{\{[\/a-zA-Z0-9_]+(?>\.[a-zA-Z0-9]{2,}){0,3}\}\})/) do |f_name_match|
14
- f_name = f_name_match[2..-3]
15
- ext = f_name[/(\.[a-zA-Z]+)/]
16
- lang_str = case ext
17
- when ".yml"; "lang=\"yaml\""
18
- when ".xml"; "lang=\"xml\""
19
- when ".html"; "lang=\"xml\""
20
- when ".rb"; "lang=\"ruby\""
21
- when ".java"; "lang=\"java\""
22
- when ".scala"; "lang=\"scala\""
23
- when ".erb"; "lang=\"ruby\""
24
- when ".xsl"; "lang=\"xml\""
25
- when ".css"; "lang=\"css\""
26
- when ".js"; "lang=\"javascript\""
27
- when ".sh"; "lang=\"bash\""
28
- when ".bat"; "lang=\"batch\""
29
- when ".xhtml"; "lang=\"xml\""
30
- when nil; "lang=\"ruby\""
31
- else; "lang=\"text\""
32
- end
33
-
34
- <<_EOF_
35
- <b>#{f_name}</b>
36
- <pre line="1" #{lang_str}>
37
- #{IO.readlines(f_name).join('')}
38
- </pre>
39
- _EOF_
40
- end
41
- end
5
+ @merger = Codemerger::Merger.new '.'
6
+ @merger.clean_dirs
7
+ @merger.process_files
42
8
  end
43
9
  end
@@ -1,3 +1,3 @@
1
1
  module Codemerger
2
- VERSION = "0.2.1"
2
+ VERSION = "0.3.2"
3
3
  end
@@ -0,0 +1,53 @@
1
+ require 'minitest/autorun'
2
+ require 'codemerger'
3
+
4
+ describe Codemerger::Merger do
5
+ def setup
6
+ @merger = Codemerger::Merger.new 'test'
7
+ end
8
+ it "should return the correct language string" do
9
+ @merger.get_language_str(".yml").must_equal "yaml"
10
+ @merger.get_language_str(".xml").must_equal "xml"
11
+ @merger.get_language_str(".html").must_equal "xml"
12
+ @merger.get_language_str(".rb").must_equal "ruby"
13
+ @merger.get_language_str(".java").must_equal "java"
14
+ @merger.get_language_str(".scala").must_equal "scala"
15
+ @merger.get_language_str(".erb").must_equal "erb"
16
+ @merger.get_language_str(".xsl").must_equal "xslt"
17
+ @merger.get_language_str(".css").must_equal "css"
18
+ @merger.get_language_str(".js").must_equal "javascript"
19
+ @merger.get_language_str(".sh").must_equal "bash"
20
+ @merger.get_language_str(".bat").must_equal "batch"
21
+ @merger.get_language_str(".xhtml").must_equal "xml"
22
+ @merger.get_language_str(nil).must_equal "ruby"
23
+ @merger.get_language_str("niaaa").must_equal "text"
24
+ @merger.get_language_str(".coffee").must_equal "coffeescript"
25
+ @merger.get_language_str(".scss").must_equal "scss"
26
+ end
27
+ it "should delete and re-create the output directory" do
28
+ FileUtils.mkdir_p 'output'
29
+ out_f = File.new("output/temp.txt", 'w')
30
+ out_f << "content"
31
+ out_f.close
32
+ @merger.clean_dirs
33
+ File.exists?("output/temp.txt").must_equal false
34
+ end
35
+ it "should return the correctly formated output for an embedded file" do
36
+ expected = %Q{
37
+ <b>test/sample.rb</b>
38
+ <pre line="1" lang="ruby">
39
+ def sample
40
+ println "sample"
41
+ end
42
+ </pre>
43
+ }
44
+ actual = @merger.build_html_merged_file_content('test/sample.rb')
45
+ expected.must_equal actual
46
+ end
47
+ it "should process HTML and Markdown files" do
48
+ @merger.process_files
49
+ File.exists?("output/test/test.html").must_equal true
50
+ File.exists?("output/test/test2.html").must_equal true
51
+ puts File.new("output/test/test2.html").read
52
+ end
53
+ end
@@ -0,0 +1,3 @@
1
+ def sample
2
+ println "sample"
3
+ end
@@ -0,0 +1 @@
1
+ {{test/sample.rb}}
@@ -0,0 +1,9 @@
1
+ {{test/sample.rb}}
2
+
3
+ ````ruby
4
+ def a(b)
5
+ puts b
6
+ end
7
+ ````
8
+
9
+ Bloco colorido?
@@ -0,0 +1,8 @@
1
+ require 'minitest/autorun'
2
+ require 'codemerger/version'
3
+
4
+ describe Codemerger do
5
+ it "should return the correct version number" do
6
+ "0.2.2".must_equal Codemerger::VERSION
7
+ end
8
+ end
metadata CHANGED
@@ -1,28 +1,50 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codemerger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
5
- prerelease: !!null
4
+ version: 0.3.2
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Rodrigo Urubatan
9
- autorequire: !!null
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-02-20 00:00:00.000000000 -03:00
13
- default_executable: !!null
12
+ date: 2011-10-10 00:00:00.000000000 -03:00
13
+ default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: maruku
17
- requirement: &19950852 !ruby/object:Gem::Requirement
16
+ name: redcarpet
17
+ requirement: &2157414700 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - =
21
+ - !ruby/object:Gem::Version
22
+ version: 2.0.0b3
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: *2157414700
26
+ - !ruby/object:Gem::Dependency
27
+ name: albino
28
+ requirement: &2157413920 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - =
32
+ - !ruby/object:Gem::Version
33
+ version: 1.3.3
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: *2157413920
37
+ - !ruby/object:Gem::Dependency
38
+ name: simplecov
39
+ requirement: &2157413100 !ruby/object:Gem::Requirement
18
40
  none: false
19
41
  requirements:
20
42
  - - ! '>='
21
43
  - !ruby/object:Gem::Version
22
44
  version: '0'
23
- type: :runtime
45
+ type: :development
24
46
  prerelease: false
25
- version_requirements: *19950852
47
+ version_requirements: *2157413100
26
48
  description: ! "This gem is used to help writing technical posts for wordpress.\n
27
49
  \ The output is copied and pasted to a post into my wordpress blog, and the code
28
50
  gets colored using the plugin wp-syntax, and the output can be turned into PDF with
@@ -38,18 +60,25 @@ files:
38
60
  - .Gemfile.swp
39
61
  - .codemerger.gemspec.swp
40
62
  - .gitignore
63
+ - .rvmrc
41
64
  - Gemfile
42
65
  - Gemfile.lock
43
66
  - README.markdown
44
67
  - Rakefile
45
68
  - codemerger.gemspec
46
69
  - lib/codemerger.rb
70
+ - lib/codemerger/merger.rb
47
71
  - lib/codemerger/rake_tasks.rb
48
72
  - lib/codemerger/version.rb
73
+ - test/merger_spec.rb
74
+ - test/sample.rb
75
+ - test/test.html
76
+ - test/test2.markdown
77
+ - test/version_spec.rb
49
78
  has_rdoc: true
50
79
  homepage: https://github.com/urubatan/codemerger
51
80
  licenses: []
52
- post_install_message: !!null
81
+ post_install_message:
53
82
  rdoc_options: []
54
83
  require_paths:
55
84
  - lib
@@ -59,18 +88,29 @@ required_ruby_version: !ruby/object:Gem::Requirement
59
88
  - - ! '>='
60
89
  - !ruby/object:Gem::Version
61
90
  version: '0'
91
+ segments:
92
+ - 0
93
+ hash: -2316311512102027505
62
94
  required_rubygems_version: !ruby/object:Gem::Requirement
63
95
  none: false
64
96
  requirements:
65
97
  - - ! '>='
66
98
  - !ruby/object:Gem::Version
67
99
  version: '0'
100
+ segments:
101
+ - 0
102
+ hash: -2316311512102027505
68
103
  requirements: []
69
104
  rubyforge_project: codemerger
70
- rubygems_version: 1.5.0
71
- signing_key: !!null
105
+ rubygems_version: 1.6.2
106
+ signing_key:
72
107
  specification_version: 3
73
108
  summary: Used to create blog posts and tecnical articles that need code samples, the
74
109
  code samples will be taken from the actual source code file instead of a copy paste
75
110
  approach
76
- test_files: []
111
+ test_files:
112
+ - test/merger_spec.rb
113
+ - test/sample.rb
114
+ - test/test.html
115
+ - test/test2.markdown
116
+ - test/version_spec.rb