shoe 0.6.2 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- data/{data/shoe/templates/gitignore.erb → .gitignore} +1 -1
- data/.rvmrc +1 -0
- data/CHANGELOG.rdoc +9 -1
- data/Gemfile +2 -0
- data/Gemfile.lock +39 -0
- data/README.rdoc +20 -72
- data/Rakefile +6 -0
- data/TODO.rdoc +10 -5
- data/lib/shoe.rb +29 -13
- data/lib/shoe/extensions.rb +0 -4
- data/lib/shoe/extensions/specification.rb +0 -4
- data/lib/shoe/extensions/validator.rb +40 -11
- data/lib/shoe/tasks.rb +13 -22
- data/lib/shoe/tasks/clean.rb +4 -4
- data/lib/shoe/tasks/compile.rb +2 -4
- data/lib/shoe/tasks/cucumber.rb +5 -9
- data/lib/shoe/tasks/rdoc.rb +2 -3
- data/lib/shoe/tasks/ronn.rb +5 -5
- data/lib/shoe/tasks/{abstract.rb → task.rb} +1 -1
- data/lib/shoe/tasks/test.rb +17 -57
- data/lib/shoe/util/minitest_colors.rb +60 -0
- data/lib/shoe/version.rb +3 -0
- data/man/shoe.3 +5 -11
- data/man/shoe.3.ronn +4 -13
- data/shoe.gemspec +35 -0
- data/test/helper.rb +6 -12
- data/test/support/assertions.rb +45 -0
- data/test/support/command_runner.rb +11 -0
- data/test/support/declarative_tests.rb +24 -0
- data/test/support/example_project.rb +37 -0
- data/test/support/file_manipulation.rb +43 -0
- data/test/support/gemspec_manipulation.rb +24 -0
- data/test/support/project_files.rb +60 -0
- data/test/support/redgreen.rb +6 -0
- data/test/system/rake_test.rb +124 -0
- metadata +75 -96
- data/bin/shoe +0 -18
- data/data/shoe/templates/application.erb +0 -23
- data/data/shoe/templates/executable.erb +0 -18
- data/data/shoe/templates/extconf.erb +0 -2
- data/data/shoe/templates/extension.erb +0 -25
- data/data/shoe/templates/gemspec.erb +0 -44
- data/data/shoe/templates/gitkeep.erb +0 -0
- data/data/shoe/templates/manpage_1.erb +0 -29
- data/data/shoe/templates/manpage_3.erb +0 -19
- data/data/shoe/templates/module.erb +0 -31
- data/data/shoe/templates/module_test.rb +0 -7
- data/data/shoe/templates/rakefile.erb +0 -3
- data/data/shoe/templates/readme.erb +0 -3
- data/data/shoe/templates/test_helper.erb +0 -9
- data/lib/shoe/extensions/option_parser.rb +0 -52
- data/lib/shoe/extensions/pathname.rb +0 -16
- data/lib/shoe/extensions/source_index.rb +0 -17
- data/lib/shoe/extensions/test_runner.rb +0 -28
- data/lib/shoe/generator.rb +0 -147
- data/lib/shoe/tasks/release.rb +0 -81
- data/man/shoe.1 +0 -63
- data/man/shoe.1.ronn +0 -60
- data/test/extensions/fake_rubygems_server.rb +0 -62
- data/test/extensions/helper_methods.rb +0 -73
- data/test/extensions/isolated_environment.rb +0 -50
- data/test/extensions/test_case.rb +0 -40
- data/test/system/rake_clean_test.rb +0 -36
- data/test/system/rake_compile_test.rb +0 -25
- data/test/system/rake_cucumber_test.rb +0 -51
- data/test/system/rake_rdoc_test.rb +0 -26
- data/test/system/rake_release_test.rb +0 -94
- data/test/system/rake_ronn_test.rb +0 -25
- data/test/system/rake_test_test.rb +0 -45
- data/test/system/shoe_test.rb +0 -79
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
module Assertions
|
4
|
+
def assert_file(path)
|
5
|
+
assert Pathname.new(path).exist?, "#{path} does not exist."
|
6
|
+
end
|
7
|
+
|
8
|
+
def assert_file_removed(*expected, &block)
|
9
|
+
files = find_files
|
10
|
+
block.call
|
11
|
+
assert_equal expected, files - find_files
|
12
|
+
end
|
13
|
+
|
14
|
+
def assert_task(expected)
|
15
|
+
assert find_tasks.include?(expected)
|
16
|
+
end
|
17
|
+
|
18
|
+
def assert_task_added(*expected, &block)
|
19
|
+
tasks = find_tasks
|
20
|
+
block.call
|
21
|
+
assert_equal expected, find_tasks - tasks
|
22
|
+
end
|
23
|
+
|
24
|
+
def assert_task_removed(*expected, &block)
|
25
|
+
tasks = find_tasks
|
26
|
+
block.call
|
27
|
+
assert_equal expected, tasks - find_tasks
|
28
|
+
end
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
def find_files
|
33
|
+
pwd = Pathname.pwd
|
34
|
+
pwd.enum_for(:find).
|
35
|
+
select { |path| path.file? }.
|
36
|
+
collect { |path| path.relative_path_from(pwd) }.
|
37
|
+
collect { |path| path.to_s }
|
38
|
+
end
|
39
|
+
|
40
|
+
def find_tasks
|
41
|
+
system('rake --tasks').lines.grep(/^rake/) { |l| l.split(' ')[1] }
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
Shoe::TestCase.send(:include, Assertions)
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module DeclarativeTests
|
2
|
+
def describe(name, &block)
|
3
|
+
@context ||= []
|
4
|
+
@context.push(name)
|
5
|
+
block.call
|
6
|
+
@context.pop
|
7
|
+
end
|
8
|
+
|
9
|
+
def requires(lib, &block)
|
10
|
+
require lib
|
11
|
+
rescue LoadError
|
12
|
+
warn "#{lib} is not available. Skipping some tests."
|
13
|
+
else
|
14
|
+
block.call
|
15
|
+
end
|
16
|
+
|
17
|
+
def it(name, &block)
|
18
|
+
describe(name) do
|
19
|
+
define_method("test #{@context.join(' ')}", &block)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
Shoe::TestCase.extend(DeclarativeTests)
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'tempfile'
|
2
|
+
|
3
|
+
module ExampleProject
|
4
|
+
PATH = File.expand_path('../../..', __FILE__)
|
5
|
+
|
6
|
+
attr_accessor :initial_gemfile
|
7
|
+
attr_accessor :initial_directory
|
8
|
+
attr_accessor :working_directory
|
9
|
+
|
10
|
+
def setup
|
11
|
+
self.initial_gemfile = ENV['BUNDLE_GEMFILE']
|
12
|
+
self.initial_directory = Dir.pwd
|
13
|
+
self.working_directory = Dir.mktmpdir
|
14
|
+
|
15
|
+
Dir.chdir working_directory
|
16
|
+
system 'bundle gem foo'
|
17
|
+
Dir.chdir 'foo'
|
18
|
+
|
19
|
+
prepend_file 'Gemfile', "path '#{PATH}'"
|
20
|
+
add_development_dependency 'shoe'
|
21
|
+
append_file 'Rakefile', <<-END
|
22
|
+
Bundler.setup(:default, :development)
|
23
|
+
require 'shoe'
|
24
|
+
Shoe.install_tasks
|
25
|
+
END
|
26
|
+
|
27
|
+
ENV['BUNDLE_GEMFILE'] = nil
|
28
|
+
end
|
29
|
+
|
30
|
+
def teardown
|
31
|
+
ENV['BUNDLE_GEMFILE'] = initial_gemfile
|
32
|
+
Dir.chdir initial_directory
|
33
|
+
FileUtils.remove_entry_secure working_directory
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
Shoe::TestCase.send(:include, ExampleProject)
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
# Largely stolen from thor, then simplified a bit.
|
4
|
+
module FileManipulation
|
5
|
+
def prepend_file(path, contents)
|
6
|
+
inject_into_file(path, contents, :before => /\A/)
|
7
|
+
end
|
8
|
+
|
9
|
+
def append_file(path, contents)
|
10
|
+
inject_into_file(path, contents, :after => /\z/)
|
11
|
+
end
|
12
|
+
|
13
|
+
def inject_into_file(path, contents, options={})
|
14
|
+
flag = nil
|
15
|
+
|
16
|
+
if options.key?(:after)
|
17
|
+
contents = '\0' + contents + "\n"
|
18
|
+
flag = options.delete(:after)
|
19
|
+
else
|
20
|
+
contents = contents + "\n" + '\0'
|
21
|
+
flag = options.delete(:before)
|
22
|
+
end
|
23
|
+
|
24
|
+
gsub_file(path, flag, contents)
|
25
|
+
end
|
26
|
+
|
27
|
+
def gsub_file(path, search, replace)
|
28
|
+
write_file(path, File.read(path).gsub(search, replace))
|
29
|
+
end
|
30
|
+
|
31
|
+
def write_file(path, contents)
|
32
|
+
path = Pathname.new(path)
|
33
|
+
path.parent.mkpath
|
34
|
+
path.open('w') { |stream| stream.write(contents) }
|
35
|
+
end
|
36
|
+
|
37
|
+
def write_versioned_file(path, contents)
|
38
|
+
write_file path, contents
|
39
|
+
system "git add #{path}"
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
Shoe::TestCase.send(:include, FileManipulation)
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
|
3
|
+
module GemspecManipulation
|
4
|
+
def add_development_dependency(name)
|
5
|
+
add_to_gemspec("s.add_development_dependency('#{name}')")
|
6
|
+
end
|
7
|
+
|
8
|
+
def add_to_gemspec(contents)
|
9
|
+
# don't say "end" to avoid confusing vim's formatter
|
10
|
+
inject_into_file(gemspec, contents, :before => /en.\s*\z/)
|
11
|
+
end
|
12
|
+
|
13
|
+
def mask_gemspec_todos
|
14
|
+
gsub_file(gemspec, /TODO: Write [ \w]*/, 'Masked')
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def gemspec
|
20
|
+
Dir['*.gemspec'].first
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
Shoe::TestCase.send(:include, GemspecManipulation)
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'yaml'
|
2
|
+
|
3
|
+
module ProjectFiles
|
4
|
+
def add_files_for_c_extension
|
5
|
+
add_to_gemspec(
|
6
|
+
's.extensions = `git ls-files -- "ext/**/extconf.rb"`.split("\n")')
|
7
|
+
|
8
|
+
write_versioned_file "ext/foo/extconf.rb", <<-END
|
9
|
+
require 'mkmf'
|
10
|
+
create_makefile 'foo/extension'
|
11
|
+
END
|
12
|
+
|
13
|
+
write_versioned_file "ext/foo/extension.c", <<-END
|
14
|
+
#include "ruby.h"
|
15
|
+
static VALUE mFoo;
|
16
|
+
static VALUE mExtension;
|
17
|
+
void Init_extension() {
|
18
|
+
mFoo = rb_define_module("Foo");
|
19
|
+
mExtension = rb_define_module_under(mFoo, "Extension");
|
20
|
+
}
|
21
|
+
END
|
22
|
+
end
|
23
|
+
|
24
|
+
def add_files_for_cucumber(assertion='')
|
25
|
+
write_file 'cucumber.yml',
|
26
|
+
{ 'default' => 'features', 'wip' => 'features' }.to_yaml
|
27
|
+
|
28
|
+
write_file 'features/api.feature', <<-END
|
29
|
+
Feature: The API
|
30
|
+
Scenario: Exercising something
|
31
|
+
Then I should pass
|
32
|
+
END
|
33
|
+
|
34
|
+
write_file 'features/step_definitions/steps.rb', <<-END
|
35
|
+
Then /^I should pass$/ do
|
36
|
+
#{assertion}
|
37
|
+
end
|
38
|
+
END
|
39
|
+
end
|
40
|
+
|
41
|
+
def add_files_for_ronn
|
42
|
+
write_versioned_file 'man/foo.3.ronn', <<-END
|
43
|
+
foo(3) -- be awesome
|
44
|
+
====================
|
45
|
+
END
|
46
|
+
end
|
47
|
+
|
48
|
+
def add_files_for_test(assertion='assert true')
|
49
|
+
write_versioned_file 'test/foo_test.rb', <<-END
|
50
|
+
require 'test/unit'
|
51
|
+
class FooTest < Test::Unit::TestCase
|
52
|
+
def test_something
|
53
|
+
#{assertion}
|
54
|
+
end
|
55
|
+
end
|
56
|
+
END
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
Shoe::TestCase.send(:include, ProjectFiles)
|
@@ -0,0 +1,124 @@
|
|
1
|
+
require 'test/helper'
|
2
|
+
|
3
|
+
class RakeTest < Shoe::TestCase
|
4
|
+
describe 'rake clean' do
|
5
|
+
it 'is active only if there is a .git directory' do
|
6
|
+
assert_task_removed 'clean' do
|
7
|
+
system 'mv .git .git.bak'
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'removes ignored files, excluding .bundler' do
|
12
|
+
write_file '.gitignore', ".bundle\nbar"
|
13
|
+
write_file '.bundle/foo.rb', 'will remain'
|
14
|
+
write_file 'bar', 'will be deleted'
|
15
|
+
assert_file_removed 'bar' do
|
16
|
+
system 'rake clean'
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
describe 'rake compile' do
|
22
|
+
it 'is active only if there are extensions' do
|
23
|
+
assert_task_added 'compile' do
|
24
|
+
add_files_for_c_extension
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'builds extensions' do
|
29
|
+
add_files_for_c_extension
|
30
|
+
system 'rake compile'
|
31
|
+
system 'ruby -Ilib -rfoo/extension -e "puts Foo::Extension.name"'
|
32
|
+
assert_equal 'Foo::Extension', output
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
describe 'rake cucumber' do
|
37
|
+
requires 'cucumber' do
|
38
|
+
it 'is active only if there are profiles in cucumber.yml' do
|
39
|
+
add_development_dependency 'cucumber'
|
40
|
+
assert_task_added 'cucumber', 'cucumber:wip' do
|
41
|
+
add_files_for_cucumber
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
it 'runs cucumber features' do
|
46
|
+
add_development_dependency 'cucumber'
|
47
|
+
add_files_for_cucumber
|
48
|
+
system 'rake cucumber'
|
49
|
+
assert_match '1 scenario (1 passed)', output
|
50
|
+
end
|
51
|
+
|
52
|
+
it 'depends (perhaps indirectly) on rake compile' do
|
53
|
+
add_development_dependency 'cucumber'
|
54
|
+
add_files_for_c_extension
|
55
|
+
add_files_for_cucumber 'require "foo/extension"'
|
56
|
+
system 'rake cucumber'
|
57
|
+
assert_match '1 scenario (1 passed)', output
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
describe 'rake rdoc' do
|
63
|
+
it 'is unconditionally active' do
|
64
|
+
assert_task 'rdoc'
|
65
|
+
end
|
66
|
+
|
67
|
+
it 'generates rdoc' do
|
68
|
+
# Launchy runs BROWSER in a subshell, sending output to /dev/null, so if
|
69
|
+
# I want to test it, I'm going to have to be more clever than this. For
|
70
|
+
# the meantime, though, using /bin/echo at least keeps from opening a
|
71
|
+
# real browser at test time.
|
72
|
+
system 'BROWSER=/bin/echo rake rdoc'
|
73
|
+
assert_file 'rdoc/index.html'
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
describe 'rake ronn' do
|
78
|
+
requires 'ronn' do
|
79
|
+
it 'is enabled if there are ronn files' do
|
80
|
+
add_development_dependency 'ronn'
|
81
|
+
assert_task_added 'ronn' do
|
82
|
+
add_files_for_ronn
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'generates man pages' do
|
87
|
+
add_development_dependency 'ronn'
|
88
|
+
add_files_for_ronn
|
89
|
+
system 'MANPAGER=/bin/cat rake ronn'
|
90
|
+
assert_file 'man/foo.3'
|
91
|
+
assert_match 'FOO(3)', output
|
92
|
+
end
|
93
|
+
|
94
|
+
it 'registers itself as a prerequisite of rake build' do
|
95
|
+
add_development_dependency 'ronn'
|
96
|
+
add_files_for_ronn
|
97
|
+
mask_gemspec_todos
|
98
|
+
system 'rake build'
|
99
|
+
assert_file 'man/foo.3'
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
describe 'rake test' do
|
105
|
+
it 'is active only if there are test files present' do
|
106
|
+
assert_task_added 'test' do
|
107
|
+
add_files_for_test
|
108
|
+
end
|
109
|
+
end
|
110
|
+
|
111
|
+
it 'runs tests' do
|
112
|
+
add_files_for_test
|
113
|
+
system 'rake test'
|
114
|
+
assert_match '1 tests, 1 assertions, 0 failures, 0 errors', output
|
115
|
+
end
|
116
|
+
|
117
|
+
it 'depends (perhaps indirectly) on rake compile' do
|
118
|
+
add_files_for_c_extension
|
119
|
+
add_files_for_test 'require "foo/extension"'
|
120
|
+
system 'rake test'
|
121
|
+
assert_match '1 tests, 0 assertions, 0 failures, 0 errors', output
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
metadata
CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
6
|
- 0
|
7
|
-
-
|
8
|
-
-
|
9
|
-
version: 0.
|
7
|
+
- 7
|
8
|
+
- 0
|
9
|
+
version: 0.7.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Matthew Todd
|
@@ -14,140 +14,114 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-10-11 00:00:00 +03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: rake
|
22
|
-
prerelease: false
|
23
22
|
requirement: &id001 !ruby/object:Gem::Requirement
|
23
|
+
none: false
|
24
24
|
requirements:
|
25
|
-
- -
|
25
|
+
- - ~>
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
segments:
|
28
28
|
- 0
|
29
|
-
|
29
|
+
- 8
|
30
|
+
- 7
|
31
|
+
version: 0.8.7
|
30
32
|
type: :runtime
|
33
|
+
prerelease: false
|
31
34
|
version_requirements: *id001
|
32
35
|
- !ruby/object:Gem::Dependency
|
33
|
-
name:
|
34
|
-
prerelease: false
|
36
|
+
name: bundler
|
35
37
|
requirement: &id002 !ruby/object:Gem::Requirement
|
38
|
+
none: false
|
36
39
|
requirements:
|
37
|
-
- -
|
40
|
+
- - ~>
|
38
41
|
- !ruby/object:Gem::Version
|
39
42
|
segments:
|
43
|
+
- 1
|
40
44
|
- 0
|
41
|
-
|
42
|
-
|
45
|
+
- 0
|
46
|
+
version: 1.0.0
|
47
|
+
type: :development
|
48
|
+
prerelease: false
|
43
49
|
version_requirements: *id002
|
44
50
|
- !ruby/object:Gem::Dependency
|
45
51
|
name: cucumber
|
46
|
-
prerelease: false
|
47
52
|
requirement: &id003 !ruby/object:Gem::Requirement
|
53
|
+
none: false
|
48
54
|
requirements:
|
49
|
-
- -
|
55
|
+
- - ~>
|
50
56
|
- !ruby/object:Gem::Version
|
51
57
|
segments:
|
52
58
|
- 0
|
53
|
-
|
59
|
+
- 6
|
60
|
+
- 4
|
61
|
+
version: 0.6.4
|
54
62
|
type: :development
|
63
|
+
prerelease: false
|
55
64
|
version_requirements: *id003
|
56
65
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
58
|
-
prerelease: false
|
66
|
+
name: ronn
|
59
67
|
requirement: &id004 !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
60
69
|
requirements:
|
61
|
-
- -
|
70
|
+
- - ~>
|
62
71
|
- !ruby/object:Gem::Version
|
63
72
|
segments:
|
64
73
|
- 0
|
65
|
-
|
74
|
+
- 5
|
75
|
+
version: "0.5"
|
66
76
|
type: :development
|
67
|
-
version_requirements: *id004
|
68
|
-
- !ruby/object:Gem::Dependency
|
69
|
-
name: ronn
|
70
77
|
prerelease: false
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
- 0
|
77
|
-
version: "0"
|
78
|
-
type: :development
|
79
|
-
version_requirements: *id005
|
80
|
-
description: |
|
81
|
-
An ecosystem-friendly library of Rake tasks for your gem.
|
82
|
-
|
83
|
-
Shoe assumes you could be using any number of other tools -- bundler,
|
84
|
-
cucumber, git, rip, rubygems -- and so leans hard on them for the things
|
85
|
-
they do well, relegating command-line rake to mere syntactic sugar.
|
78
|
+
version_requirements: *id004
|
79
|
+
description: Configuration-free Rake tasks that read your gemspec. These tasks re-use built-in Rubygems functionality so you can be confident you're shipping what you think you are.
|
80
|
+
email:
|
81
|
+
- matthew.todd@gmail.com
|
82
|
+
executables: []
|
86
83
|
|
87
|
-
email: matthew.todd@gmail.com
|
88
|
-
executables:
|
89
|
-
- shoe
|
90
84
|
extensions: []
|
91
85
|
|
92
|
-
extra_rdoc_files:
|
93
|
-
|
94
|
-
- README.rdoc
|
95
|
-
- TODO.rdoc
|
86
|
+
extra_rdoc_files: []
|
87
|
+
|
96
88
|
files:
|
89
|
+
- .gitignore
|
90
|
+
- .rvmrc
|
97
91
|
- CHANGELOG.rdoc
|
92
|
+
- Gemfile
|
93
|
+
- Gemfile.lock
|
98
94
|
- README.rdoc
|
95
|
+
- Rakefile
|
99
96
|
- TODO.rdoc
|
100
|
-
-
|
101
|
-
-
|
102
|
-
- data/shoe/templates/executable.erb
|
103
|
-
- data/shoe/templates/extconf.erb
|
104
|
-
- data/shoe/templates/extension.erb
|
105
|
-
- data/shoe/templates/gemspec.erb
|
106
|
-
- data/shoe/templates/gitignore.erb
|
107
|
-
- data/shoe/templates/gitkeep.erb
|
108
|
-
- data/shoe/templates/manpage_1.erb
|
109
|
-
- data/shoe/templates/manpage_3.erb
|
110
|
-
- data/shoe/templates/module.erb
|
111
|
-
- data/shoe/templates/module_test.rb
|
112
|
-
- data/shoe/templates/rakefile.erb
|
113
|
-
- data/shoe/templates/readme.erb
|
114
|
-
- data/shoe/templates/test_helper.erb
|
97
|
+
- lib/shoe.rb
|
98
|
+
- lib/shoe/extensions.rb
|
115
99
|
- lib/shoe/extensions/doc_manager.rb
|
116
|
-
- lib/shoe/extensions/option_parser.rb
|
117
|
-
- lib/shoe/extensions/pathname.rb
|
118
|
-
- lib/shoe/extensions/source_index.rb
|
119
100
|
- lib/shoe/extensions/specification.rb
|
120
|
-
- lib/shoe/extensions/test_runner.rb
|
121
101
|
- lib/shoe/extensions/validator.rb
|
122
|
-
- lib/shoe/
|
123
|
-
- lib/shoe/generator.rb
|
124
|
-
- lib/shoe/tasks/abstract.rb
|
102
|
+
- lib/shoe/tasks.rb
|
125
103
|
- lib/shoe/tasks/clean.rb
|
126
104
|
- lib/shoe/tasks/compile.rb
|
127
105
|
- lib/shoe/tasks/cucumber.rb
|
128
106
|
- lib/shoe/tasks/rdoc.rb
|
129
|
-
- lib/shoe/tasks/release.rb
|
130
107
|
- lib/shoe/tasks/ronn.rb
|
108
|
+
- lib/shoe/tasks/task.rb
|
131
109
|
- lib/shoe/tasks/test.rb
|
132
|
-
- lib/shoe/
|
133
|
-
- lib/shoe.rb
|
134
|
-
- man/shoe.1
|
135
|
-
- man/shoe.1.ronn
|
110
|
+
- lib/shoe/util/minitest_colors.rb
|
111
|
+
- lib/shoe/version.rb
|
136
112
|
- man/shoe.3
|
137
113
|
- man/shoe.3.ronn
|
138
|
-
-
|
139
|
-
- test/extensions/helper_methods.rb
|
140
|
-
- test/extensions/isolated_environment.rb
|
141
|
-
- test/extensions/test_case.rb
|
114
|
+
- shoe.gemspec
|
142
115
|
- test/helper.rb
|
143
|
-
- test/
|
144
|
-
- test/
|
145
|
-
- test/
|
146
|
-
- test/
|
147
|
-
- test/
|
148
|
-
- test/
|
149
|
-
- test/
|
150
|
-
- test/
|
116
|
+
- test/support/assertions.rb
|
117
|
+
- test/support/command_runner.rb
|
118
|
+
- test/support/declarative_tests.rb
|
119
|
+
- test/support/example_project.rb
|
120
|
+
- test/support/file_manipulation.rb
|
121
|
+
- test/support/gemspec_manipulation.rb
|
122
|
+
- test/support/project_files.rb
|
123
|
+
- test/support/redgreen.rb
|
124
|
+
- test/system/rake_test.rb
|
151
125
|
has_rdoc: true
|
152
126
|
homepage: http://github.com/matthewtodd/shoe
|
153
127
|
licenses: []
|
@@ -157,20 +131,23 @@ rdoc_options:
|
|
157
131
|
- --main
|
158
132
|
- README.rdoc
|
159
133
|
- --title
|
160
|
-
- shoe-0.
|
134
|
+
- shoe-0.7.0
|
161
135
|
- --inline-source
|
162
136
|
- --webcvs
|
163
|
-
- http://github.com/matthewtodd/shoe/blob/v0.
|
137
|
+
- http://github.com/matthewtodd/shoe/blob/v0.7.0/
|
164
138
|
require_paths:
|
165
139
|
- lib
|
166
140
|
required_ruby_version: !ruby/object:Gem::Requirement
|
141
|
+
none: false
|
167
142
|
requirements:
|
168
143
|
- - ">="
|
169
144
|
- !ruby/object:Gem::Version
|
145
|
+
hash: 373556691
|
170
146
|
segments:
|
171
147
|
- 0
|
172
148
|
version: "0"
|
173
149
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
150
|
+
none: false
|
174
151
|
requirements:
|
175
152
|
- - ">="
|
176
153
|
- !ruby/object:Gem::Version
|
@@ -181,17 +158,19 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
181
158
|
version: 1.3.6
|
182
159
|
requirements:
|
183
160
|
- git
|
184
|
-
rubyforge_project:
|
185
|
-
rubygems_version: 1.3.
|
161
|
+
rubyforge_project: shoe
|
162
|
+
rubygems_version: 1.3.7
|
186
163
|
signing_key:
|
187
164
|
specification_version: 3
|
188
|
-
summary:
|
165
|
+
summary: Configuration-free Rake tasks that read your gemspec.
|
189
166
|
test_files:
|
190
|
-
- test/
|
191
|
-
- test/
|
192
|
-
- test/
|
193
|
-
- test/
|
194
|
-
- test/
|
195
|
-
- test/
|
196
|
-
- test/
|
197
|
-
- test/
|
167
|
+
- test/helper.rb
|
168
|
+
- test/support/assertions.rb
|
169
|
+
- test/support/command_runner.rb
|
170
|
+
- test/support/declarative_tests.rb
|
171
|
+
- test/support/example_project.rb
|
172
|
+
- test/support/file_manipulation.rb
|
173
|
+
- test/support/gemspec_manipulation.rb
|
174
|
+
- test/support/project_files.rb
|
175
|
+
- test/support/redgreen.rb
|
176
|
+
- test/system/rake_test.rb
|