gemma 1.0.0 → 2.0.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.
@@ -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