gemma 1.0.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,9 +1,7 @@
1
- require "test/unit"
2
- require "rubygems"
3
- require "gemma"
4
- require "set"
1
+ require 'gemma/test_helper'
2
+ require 'set'
5
3
 
6
- class TestGemma < Test::Unit::TestCase
4
+ class Gemma::GemmaTest < Test::Unit::TestCase
7
5
  # Can load empty spec.
8
6
  def test_empty_spec
9
7
  s = Gem::Specification.new
@@ -119,32 +117,21 @@ class TestGemma < Test::Unit::TestCase
119
117
  s = Gem::Specification.new
120
118
  s.files = %w(lib/a.rb lib/b.rb)
121
119
  s.test_files = %w(test/test_a.rb test/test_b.rb)
122
- s.require_paths << 'ext'
120
+ s.require_paths << 'foo'
121
+
122
+ # annoyance: if we ran this test with rake TEST=... then the environmental
123
+ # variable will affect the outcome below; clear it
124
+ ENV.delete('TEST')
123
125
 
124
126
  Gemma::RakeTasks.new(s) do |g|
125
127
  g.test.with_test_task do |tt|
126
- assert_equal %w(lib ext).to_set, tt.libs.to_set
128
+ assert_equal %w(lib foo test).to_set, tt.libs.to_set
127
129
  assert_equal %w(test/test_a.rb test/test_b.rb).to_set,
128
130
  tt.file_list.to_a.to_set
129
131
  end
130
132
  end
131
133
  end
132
134
 
133
- def test_rcov_tasks
134
- s = Gem::Specification.new
135
- s.files = %w(lib/a.rb lib/b.rb)
136
- s.test_files = %w(test/test_a.rb test/test_b.rb)
137
- s.require_paths << 'ext'
138
-
139
- Gemma::RakeTasks.new(s) do |g|
140
- g.rcov.with_rcov_task do |rcov|
141
- assert_equal %w(lib ext).to_set, rcov.libs.to_set
142
- assert_equal %w(test/test_a.rb test/test_b.rb).to_set,
143
- rcov.file_list.to_a.to_set
144
- end
145
- end
146
- end
147
-
148
135
  def test_conventions_good_gem_name
149
136
  assert Gemma::Conventions.good_gem_name?("my_gem_name")
150
137
  assert Gemma::Conventions.good_gem_name?("my-gem-name")
@@ -172,7 +159,7 @@ class TestGemma < Test::Unit::TestCase
172
159
  # Exercise usage message for bin/gemma.
173
160
  #
174
161
  def test_print_usage
175
- gemma_file = File.join(File.dirname(__FILE__), '..', 'bin', 'gemma')
162
+ gemma_file = File.join(File.dirname(__FILE__), '..', '..', 'bin', 'gemma')
176
163
  io = StringIO.new
177
164
  Gemma::Utility.print_usage_from_file_comment gemma_file, '#', io
178
165
  assert io.string =~ /gemma/
@@ -1,8 +1,6 @@
1
- require "test/unit"
2
- require "rubygems"
3
- require "gemma"
1
+ require 'gemma/test_helper'
4
2
 
5
- class TestOptions < Test::Unit::TestCase
3
+ class OptionsTest < Test::Unit::TestCase
6
4
  include Gemma
7
5
 
8
6
  def test_empty
metadata CHANGED
@@ -1,125 +1,176 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: gemma
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.0
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - John Lees-Miller
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-12-06 00:00:00 +00:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2011-09-05 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: &84340330 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: 1.0.18
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *84340330
25
+ - !ruby/object:Gem::Dependency
22
26
  name: highline
27
+ requirement: &84339980 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: 1.6.2
33
+ type: :runtime
23
34
  prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
35
+ version_requirements: *84339980
36
+ - !ruby/object:Gem::Dependency
37
+ name: rake
38
+ requirement: &84339640 !ruby/object:Gem::Requirement
25
39
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 13
30
- segments:
31
- - 1
32
- - 6
33
- - 1
34
- version: 1.6.1
40
+ requirements:
35
41
  - - ~>
36
- - !ruby/object:Gem::Version
37
- hash: 3
38
- segments:
39
- - 1
40
- - 6
41
- version: "1.6"
42
+ - !ruby/object:Gem::Version
43
+ version: 0.9.2
42
44
  type: :runtime
43
- version_requirements: *id001
44
- description: |
45
- Gemma is a gem development helper like hoe and jeweler, but it keeps the
46
- gemspec in a gemspec file, where it belongs, instead of in your Rakefile.
47
- This helps your gem to play nicely with commands like gem and bundle, and it
48
- allows gemma to provide rake tasks with sensible defaults for many common gem
49
- development tasks.
45
+ prerelease: false
46
+ version_requirements: *84339640
47
+ - !ruby/object:Gem::Dependency
48
+ name: rdoc
49
+ requirement: &84339340 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 3.9.4
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *84339340
58
+ - !ruby/object:Gem::Dependency
59
+ name: yard
60
+ requirement: &84338900 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 0.7.2
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *84338900
69
+ - !ruby/object:Gem::Dependency
70
+ name: minitest
71
+ requirement: &84338550 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 2.5.1
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: *84338550
80
+ - !ruby/object:Gem::Dependency
81
+ name: open4
82
+ requirement: &84338230 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: 1.1.0
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *84338230
91
+ description: ! 'Gemma is a gem development helper like hoe and jeweler, but it keeps
92
+ the gemspec
93
+
94
+ in a gemspec file, instead of in a Rakefile. This helps your gem to play nicely
50
95
 
51
- email:
96
+ with commands like gem and bundle, and it allows gemma to provide rake tasks
97
+
98
+ with sensible defaults for many common gem development tasks.
99
+
100
+ '
101
+ email:
52
102
  - jdleesmiller@gmail.com
53
- executables:
103
+ executables:
54
104
  - gemma
55
105
  extensions: []
56
-
57
- extra_rdoc_files:
106
+ extra_rdoc_files:
58
107
  - README.rdoc
59
108
  - bin/gemma
60
- files:
109
+ files:
61
110
  - lib/gemma.rb
62
- - lib/gemma/options.rb
63
- - lib/gemma/gem_from_template.rb
111
+ - lib/gemma/version.rb
64
112
  - lib/gemma/conventions.rb
65
- - lib/gemma/rake_tasks/test_unit_tasks.rb
113
+ - lib/gemma/rake_tasks.rb
114
+ - lib/gemma/utility.rb
115
+ - lib/gemma/gem_from_template.rb
66
116
  - lib/gemma/rake_tasks/rdoc_tasks.rb
67
- - lib/gemma/rake_tasks/rcov_tasks.rb
68
- - lib/gemma/rake_tasks/run_tasks.rb
117
+ - lib/gemma/rake_tasks/gem_tasks.rb
118
+ - lib/gemma/rake_tasks/minitest_tasks.rb
69
119
  - lib/gemma/rake_tasks/yard_tasks.rb
120
+ - lib/gemma/rake_tasks/run_tasks.rb
70
121
  - lib/gemma/rake_tasks/plugin.rb
71
- - lib/gemma/version.rb
72
- - lib/gemma/rake_tasks.rb
73
- - lib/gemma/utility.rb
122
+ - lib/gemma/options.rb
74
123
  - template/base/.gitignore
75
124
  - template/base/Rakefile.rb.erb
76
125
  - template/base/README.rdoc.erb
77
- - template/base/gem_name.gemspec.erb
126
+ - template/base/Gemfile
78
127
  - template/base/lib/gem_name.rb.erb
79
128
  - template/base/lib/gem_name/version.rb.erb
129
+ - template/base/gem_name.gemspec.erb
130
+ - template/minitest/test/gem_name/gem_name_test.rb.erb
80
131
  - template/executable/bin/gem_name.erb
81
- - template/test_unit/test/test_gem_name.rb.erb
82
132
  - README.rdoc
83
133
  - bin/gemma
84
- - test/test_options.rb
85
- - test/test_gemma.rb
86
- has_rdoc: true
134
+ - test/gemma/options_test.rb
135
+ - test/gemma/gem_from_template_test.rb
136
+ - test/gemma/gemma_new_test.rb
137
+ - test/gemma/gemma_test.rb
87
138
  homepage: http://github.com/jdleesmiller/gemma
88
139
  licenses: []
89
-
90
140
  post_install_message:
91
- rdoc_options:
141
+ rdoc_options:
92
142
  - --main
93
143
  - README.rdoc
94
144
  - --title
95
- - gemma-1.0.0 Documentation
96
- require_paths:
145
+ - gemma-2.0.0 Documentation
146
+ require_paths:
97
147
  - lib
98
- required_ruby_version: !ruby/object:Gem::Requirement
148
+ required_ruby_version: !ruby/object:Gem::Requirement
99
149
  none: false
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- hash: 3
104
- segments:
150
+ requirements:
151
+ - - ! '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ segments:
105
155
  - 0
106
- version: "0"
107
- required_rubygems_version: !ruby/object:Gem::Requirement
156
+ hash: -636449327
157
+ required_rubygems_version: !ruby/object:Gem::Requirement
108
158
  none: false
109
- requirements:
110
- - - ">="
111
- - !ruby/object:Gem::Version
112
- hash: 3
113
- segments:
159
+ requirements:
160
+ - - ! '>='
161
+ - !ruby/object:Gem::Version
162
+ version: '0'
163
+ segments:
114
164
  - 0
115
- version: "0"
165
+ hash: -636449327
116
166
  requirements: []
117
-
118
167
  rubyforge_project:
119
- rubygems_version: 1.3.7
168
+ rubygems_version: 1.8.10
120
169
  signing_key:
121
170
  specification_version: 3
122
- summary: Gemspec-centric gem development helper.
123
- test_files:
124
- - test/test_options.rb
125
- - test/test_gemma.rb
171
+ summary: A gem development tool that plays well with bundler.
172
+ test_files:
173
+ - test/gemma/options_test.rb
174
+ - test/gemma/gem_from_template_test.rb
175
+ - test/gemma/gemma_new_test.rb
176
+ - test/gemma/gemma_test.rb
@@ -1,85 +0,0 @@
1
- module Gemma
2
- class RakeTasks
3
- #
4
- # Create tasks to run test coverage using the built-in `rcov` tool. By
5
- # default, the `test_files` given in the gemspec are used to measure
6
- # coverage.
7
- #
8
- # This plugin is based on the `Rcov::RcovTask` that comes bundled with rcov.
9
- # If you need an option that isn't exposed by the plugin, you can modify the
10
- # `RcovTask` object directly in a block passed to {#with_rcov_task}.
11
- #
12
- class RcovTasks < Plugin
13
- #
14
- # @param [Gem::Specification] gemspec
15
- #
16
- def initialize gemspec
17
- super(gemspec)
18
-
19
- # Defaults.
20
- @task_name = :rcov
21
- @output = 'rcov'
22
- @files = gemspec.test_files.dup
23
- @with_rcov_task = nil
24
- end
25
-
26
- #
27
- # Name of rake task; defaults to rcov.
28
- #
29
- # @return [Symbol]
30
- #
31
- attr_accessor :task_name
32
-
33
- #
34
- # Output directory for the XHTML report; defaults to rcov.
35
- #
36
- # @return [String]
37
- #
38
- attr_accessor :output
39
-
40
- #
41
- # The files to test; defaults to the +test_files+ from the gemspec.
42
- #
43
- # @return [Array<String>]
44
- #
45
- attr_accessor :files
46
-
47
- #
48
- # Customize the rcov task.
49
- #
50
- # @yield [rcov] called after the defaults are set but before the rcov task
51
- # is generated
52
- #
53
- # @yieldparam [Rcov::RcovTask] rcov
54
- #
55
- # @return [nil]
56
- #
57
- def with_rcov_task &block
58
- @with_rcov_task = block
59
- nil
60
- end
61
-
62
- #
63
- # Internal method; see {Plugin#create_rake_tasks}.
64
- #
65
- # @return [nil]
66
- #
67
- # @private
68
- #
69
- def create_rake_tasks
70
- require 'rcov/rcovtask'
71
- Rcov::RcovTask.new(self.task_name) do |rcov|
72
- rcov.libs = gemspec.require_paths
73
- rcov.test_files = self.files
74
- rcov.warning = true
75
- rcov.rcov_opts << "-x ^/"
76
- rcov.output_dir = self.output
77
- @with_rcov_task.call(rcov) if @with_rcov_task
78
- end
79
- nil
80
- rescue LoadError
81
- # Assume rcov is not installed.
82
- end
83
- end
84
- end
85
- end