rack-blogengine 1.0.7 → 1.0.8
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 +4 -4
- checksums.yaml.gz.sig +2 -0
- data.tar.gz.sig +0 -0
- data/MANIFEST +33 -19
- data/README.md +5 -4
- data/doc/Operator.html +236 -0
- data/doc/Rack.html +117 -0
- data/doc/Rack/Blogengine.html +419 -0
- data/doc/Rack/Blogengine/Application.html +278 -0
- data/doc/Rack/Blogengine/ApplicationRouter.html +413 -0
- data/doc/Rack/Blogengine/CommandLineInterface.html +991 -0
- data/doc/Rack/Blogengine/Document.html +680 -0
- data/doc/Rack/Blogengine/DocumentParser.html +1708 -0
- data/doc/_index.html +197 -0
- data/doc/class_list.html +54 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +339 -0
- data/doc/file.README.html +237 -0
- data/doc/file_list.html +56 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +237 -0
- data/doc/js/app.js +219 -0
- data/doc/js/full_list.js +178 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +263 -0
- data/doc/top-level-namespace.html +114 -0
- data/lib/rack/blogengine/command_line_interface.rb +2 -2
- data/lib/rack/blogengine/version.rb +1 -1
- data/rack-blogengine.gemspec +2 -2
- metadata +48 -21
- metadata.gz.sig +0 -0
- data/.gitignore +0 -20
- data/.rubocop.yml +0 -2
- data/.travis.yml +0 -22
- data/Gemfile +0 -4
- data/Rakefile +0 -8
- data/checksum/rack-blogengine-1.0.6.gem.sha512 +0 -1
- data/task/build.rake +0 -4
- data/task/checksum.rake +0 -15
- data/task/default.rake +0 -5
- data/task/floodtest.rake +0 -33
- data/task/manifest.rake +0 -8
- data/task/test.rake +0 -19
- data/task/travis.rake +0 -5
- data/test/rack/blogengine/application_router_test.rb +0 -49
- data/test/rack/blogengine/application_test.rb +0 -41
- data/test/rack/blogengine/command_line_interface_test.rb +0 -70
- data/test/rack/blogengine/document_parser_test.rb +0 -70
- data/test/test_helper.rb +0 -68
@@ -1,41 +0,0 @@
|
|
1
|
-
require 'test_helper.rb'
|
2
|
-
|
3
|
-
#
|
4
|
-
# TestClass for ApplicationRouter
|
5
|
-
#
|
6
|
-
# @author [benny]
|
7
|
-
#
|
8
|
-
class ApplicationTest < MiniTest::Unit::TestCase
|
9
|
-
include Rack::Test::Methods
|
10
|
-
#
|
11
|
-
# MockClass for Testing
|
12
|
-
#
|
13
|
-
# @author [benny]
|
14
|
-
#
|
15
|
-
class MockApp
|
16
|
-
def call(env = nil)
|
17
|
-
[200, {}, ['hello']]
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
def app
|
22
|
-
Rack::Blogengine::Application.new
|
23
|
-
end
|
24
|
-
|
25
|
-
def setup
|
26
|
-
@cli = Rack::Blogengine::CommandLineInterface
|
27
|
-
capture_stdout { @cli.generate(testpath) }
|
28
|
-
Rack::Blogengine.config = @cli.send(:get_config, testpath)
|
29
|
-
Rack::Blogengine.documents = Rack::Blogengine::DocumentParser.parse_in_documents(testpath)
|
30
|
-
end
|
31
|
-
|
32
|
-
def test_application_is_callable
|
33
|
-
get '/'
|
34
|
-
|
35
|
-
assert(last_response.body.include?('This is the Index Page'))
|
36
|
-
end
|
37
|
-
|
38
|
-
def teardown
|
39
|
-
system("rm -rf #{testpath}")
|
40
|
-
end
|
41
|
-
end
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'test_helper.rb'
|
2
|
-
|
3
|
-
#
|
4
|
-
# TestClass for CommandLineInterface
|
5
|
-
#
|
6
|
-
# @author [benny]
|
7
|
-
#
|
8
|
-
class CommandLineInterfaceTest < MiniTest::Unit::TestCase
|
9
|
-
def setup
|
10
|
-
@cli = Rack::Blogengine::CommandLineInterface
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_available_methods
|
14
|
-
assert(@cli.respond_to?(:method_missing), 'CLI should respond to :method_missing method')
|
15
|
-
assert(@cli.respond_to?(:run), 'CLI should respond to :run method')
|
16
|
-
assert(@cli.respond_to?(:generate), 'CLI should respond to :generate method')
|
17
|
-
assert(@cli.respond_to?(:version), 'CLI should respond to :version? method')
|
18
|
-
end
|
19
|
-
|
20
|
-
def test_methods_missing
|
21
|
-
result = capture_stdout { @cli.send(:missing_method) }
|
22
|
-
assert(result.include?('Command missing_method not available'), 'Not Available Method should not raise NoMethodError')
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_version?
|
26
|
-
result = capture_stdout { @cli.send(:version) }
|
27
|
-
assert(result.include?('VERSION'), ':version? should output the current VERSION')
|
28
|
-
end
|
29
|
-
|
30
|
-
def test_generate
|
31
|
-
capture_stdout { @cli.send(:generate, testpath) }
|
32
|
-
assert(Dir.exist?(testpath), 'Test Directory should exist after generate method')
|
33
|
-
assert(Dir.exist?("#{testpath}/assets"), 'assets Directory should exist after generate method')
|
34
|
-
assert(Dir.exist?("#{testpath}/assets/layout"), 'assets/layout Directory should exist after generate method')
|
35
|
-
assert(Dir.exist?("#{testpath}/assets/style"), 'assets/style Directory should exist after generate method')
|
36
|
-
assert(Dir.exist?("#{testpath}/assets/js"), 'assets/js Directory should exist after generate method')
|
37
|
-
assert(Dir.exist?("#{testpath}/assets/images"), 'assets/images Directory should exist after generate method')
|
38
|
-
assert(Dir.exist?("#{testpath}/operator"), 'operator Directory should exist after generate method')
|
39
|
-
assert(File.exist?("#{testpath}/operator/operator.rb"), 'operator.rb should exist after generate method')
|
40
|
-
assert(File.exist?("#{testpath}/config.yml"), 'config.yml should exist after generate method')
|
41
|
-
assert(File.exist?("#{testpath}/index.content"), 'index.content should exist after generate method')
|
42
|
-
assert(File.exist?("#{testpath}/assets/layout/layout.html"), 'layout.html should exist after generate method')
|
43
|
-
assert(File.exist?("#{testpath}/assets/style/style.css"), 'style.css should exist after generate method')
|
44
|
-
assert(File.exist?("#{testpath}/assets/js/script.js"), 'script.js should exist after generate method')
|
45
|
-
system("rm -rf #{testpath}")
|
46
|
-
end
|
47
|
-
|
48
|
-
def test_run_empty_string_argument
|
49
|
-
result = capture_stdout { @cli.send(:run, '') }
|
50
|
-
assert_equal('Specify a targetfolder!', result, 'run method should output "Specify a targetfolder!" when folderstring is empty')
|
51
|
-
end
|
52
|
-
|
53
|
-
def test_run_not_folder_string_argument
|
54
|
-
result = capture_stdout { @cli.send(:run, '/not_a_directory') }
|
55
|
-
assert_equal('/not_a_directory is not a folder!', result, 'run method should output "Target is not a folder!" when folderstring is not a directory')
|
56
|
-
end
|
57
|
-
|
58
|
-
def test_build_rack_app
|
59
|
-
capture_stdout { @cli.generate(testpath) }
|
60
|
-
config = @cli.send(:get_config, testpath)
|
61
|
-
config['Usage'] = 'yes'
|
62
|
-
config['Username'] = 'Benny'
|
63
|
-
config['Password'] = 'Bensn'
|
64
|
-
|
65
|
-
app = @cli.send(:build_rack_app, testpath, config)
|
66
|
-
|
67
|
-
assert_instance_of(Rack::Builder, app, 'Rack app should be instance of Rack::Builder')
|
68
|
-
system("rm -rf #{testpath}")
|
69
|
-
end
|
70
|
-
end
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
|
3
|
-
#
|
4
|
-
# Test Class for DocumentParser
|
5
|
-
#
|
6
|
-
# @author [benny]
|
7
|
-
#
|
8
|
-
class DocumentParserTest < MiniTest::Unit::TestCase
|
9
|
-
def setup
|
10
|
-
@cli = Rack::Blogengine::CommandLineInterface
|
11
|
-
capture_stdout { @cli.generate(testpath) }
|
12
|
-
@cli.send(:get_config, testpath)
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_parse_in_documents
|
16
|
-
documents = Rack::Blogengine::DocumentParser.parse_in_documents(testpath)
|
17
|
-
|
18
|
-
documents.each do |document|
|
19
|
-
# Check Hash keys
|
20
|
-
assert(document.key?(:html), 'Documents should contain content')
|
21
|
-
assert(document.key?(:path), 'Documents should contain a path')
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_invalid_date
|
26
|
-
system("rm #{testpath}/index.content")
|
27
|
-
capture_stdout { @cli.send(:setup, 'date_error.content', "#{testpath}", true) }
|
28
|
-
assert_raises(RuntimeError) { Rack::Blogengine::DocumentParser.parse_in_documents(testpath) }
|
29
|
-
end
|
30
|
-
|
31
|
-
def test_invalid_content
|
32
|
-
system("rm #{testpath}/index.content")
|
33
|
-
capture_stdout { @cli.send(:setup, 'content_error.content', "#{testpath}", true) }
|
34
|
-
assert_raises(RuntimeError) { Rack::Blogengine::DocumentParser.parse_in_documents(testpath) }
|
35
|
-
end
|
36
|
-
|
37
|
-
def test_invalid_title
|
38
|
-
system("rm #{testpath}/index.content")
|
39
|
-
capture_stdout { @cli.send(:setup, 'title_error.content', "#{testpath}", true) }
|
40
|
-
assert_raises(RuntimeError) { Rack::Blogengine::DocumentParser.parse_in_documents(testpath) }
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_documents_with_pygments
|
44
|
-
capture_stdout { @cli.send(:setup, 'pygment.content', "#{testpath}", true) }
|
45
|
-
system("rm #{testpath}/index.content")
|
46
|
-
documents = Rack::Blogengine::DocumentParser.parse_in_documents(testpath)
|
47
|
-
documents.each do |document|
|
48
|
-
assert(document[:html].include?('class="highlight"'), 'Highlighted code should be wrapped in a div.highlight')
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
def test_documents_with_operator
|
53
|
-
capture_stdout { @cli.send(:setup, 'operator.content', "#{testpath}", true) }
|
54
|
-
system("rm #{testpath}/index.content")
|
55
|
-
documents = Rack::Blogengine::DocumentParser.parse_in_documents(testpath)
|
56
|
-
documents.each do |document|
|
57
|
-
assert(document[:html].include?('test'), 'Test Operator should return test')
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
def test_document_sort
|
62
|
-
capture_stdout { @cli.send(:setup, 'date_test.content', "#{testpath}", true) }
|
63
|
-
documents = Rack::Blogengine::DocumentParser.parse_in_documents(testpath)
|
64
|
-
assert(documents[0][:html].include?('This is 2012'), 'The Document with lower date should be first')
|
65
|
-
end
|
66
|
-
|
67
|
-
def teardown
|
68
|
-
system("rm -rf #{testpath}")
|
69
|
-
end
|
70
|
-
end
|
data/test/test_helper.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
require 'simplecov'
|
2
|
-
require 'coveralls'
|
3
|
-
|
4
|
-
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
|
5
|
-
SimpleCov::Formatter::HTMLFormatter,
|
6
|
-
Coveralls::SimpleCov::Formatter
|
7
|
-
]
|
8
|
-
|
9
|
-
SimpleCov.start do
|
10
|
-
project_name 'rack-blogengine'
|
11
|
-
add_filter '/test/'
|
12
|
-
add_filter '/pkg/'
|
13
|
-
add_filter '/spec/'
|
14
|
-
add_filter '/features/'
|
15
|
-
add_filter '/doc/'
|
16
|
-
add_filter '/assets/'
|
17
|
-
end if ENV['COVERAGE']
|
18
|
-
|
19
|
-
# Previous content of test helper now starts here
|
20
|
-
|
21
|
-
# Minitest
|
22
|
-
require 'minitest/autorun'
|
23
|
-
require 'minitest/mock'
|
24
|
-
require 'minitest/pride' # for colored output
|
25
|
-
|
26
|
-
# Rack Test Methods
|
27
|
-
require 'rack/test'
|
28
|
-
|
29
|
-
# TestUnit -> MiniTest (TestUnit is only compatibility Layer)
|
30
|
-
# require 'test/unit'
|
31
|
-
|
32
|
-
# Load Rack::Blogengine gem
|
33
|
-
require 'rack/blogengine'
|
34
|
-
|
35
|
-
# class Hash
|
36
|
-
# method for usage with assert_boolean
|
37
|
-
# -> for failing it needs nil instead of false (which #has_key? returns in failing case)
|
38
|
-
# NOT Needed use assert_true instead...
|
39
|
-
# def hash_key?(key)
|
40
|
-
# if self.has_key?(key)
|
41
|
-
# return true
|
42
|
-
# else
|
43
|
-
# return nil
|
44
|
-
# end
|
45
|
-
# end
|
46
|
-
# end
|
47
|
-
|
48
|
-
#
|
49
|
-
# Opening Kernel for testpath method
|
50
|
-
#
|
51
|
-
# @author [benny]
|
52
|
-
#
|
53
|
-
module Kernel
|
54
|
-
def testpath
|
55
|
-
"#{Rack::Blogengine.root}/testfolder"
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
def capture_stdout(&block)
|
60
|
-
original_stdout = $stdout
|
61
|
-
$stdout = fake = StringIO.new
|
62
|
-
begin
|
63
|
-
yield
|
64
|
-
ensure
|
65
|
-
$stdout = original_stdout
|
66
|
-
end
|
67
|
-
fake.string
|
68
|
-
end
|