ammeter 0.2.3 → 0.2.4

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/History.md CHANGED
@@ -1,5 +1,11 @@
1
1
  ## Ammeter release history
2
2
 
3
+ ### 0.2.4 / 2012-04-06
4
+
5
+ [full changelog](https://github.com/alexrothenberg/ammeter/compare/v0.2.3...v0.2.4)
6
+
7
+ * Fixed issue #8 with migration_file and be_a_migration [@EppO]
8
+
3
9
  ### 0.2.3 / 2012-03-05
4
10
 
5
11
  [full changelog](https://github.com/alexrothenberg/ammeter/compare/v0.2.2...v0.2.3)
data/Rakefile CHANGED
@@ -21,21 +21,19 @@ Cucumber::Rake::Task.new(:cucumber)
21
21
  # for cucumber features that create a sample project
22
22
  def in_example_app(command)
23
23
  Dir.chdir("./tmp/example_app/") do
24
- Bundler.with_clean_env do
25
- sh command
26
- end
24
+ Bundler.clean_system command
27
25
  end
28
26
  end
29
27
  namespace :generate do
30
28
  desc "generate a fresh app with rspec installed"
31
29
  task :app do |t|
32
- # unless File.directory?('./tmp/example_app')
33
- sh "bundle exec rails new ./tmp/example_app -m 'features/templates/generate_example_app.rb' --skip-test-unit"
34
- sh "cp 'features/templates/rspec.rake' ./tmp/example_app/lib/tasks"
35
- in_example_app 'rake db:migrate'
36
- in_example_app 'rails g rspec:install'
37
- in_example_app 'bundle install'
38
- # end
30
+ raise 'Bundler 1.1 is a development dependency to build ammeter. Please upgrade bundler.' unless Bundler::VERSION >= '1.1'
31
+
32
+ sh "bundle exec rails new ./tmp/example_app -m 'features/templates/generate_example_app.rb' --skip-test-unit"
33
+ sh "cp 'features/templates/rspec.rake' ./tmp/example_app/lib/tasks"
34
+ in_example_app 'rake db:migrate'
35
+ in_example_app 'rails g rspec:install'
36
+ in_example_app 'bundle install'
39
37
  end
40
38
  end
41
39
 
@@ -22,13 +22,13 @@ Gem::Specification.new do |s|
22
22
  s.add_runtime_dependency 'rspec', '>= 2.2'
23
23
  s.add_runtime_dependency 'rspec-rails', '>= 2.2'
24
24
 
25
- s.add_development_dependency 'rails', '>= 3.1'
26
- s.add_development_dependency 'uglifier'
27
- s.add_development_dependency 'rake'
28
- s.add_development_dependency 'coffee-rails'
29
- s.add_development_dependency 'sass-rails'
30
- s.add_development_dependency 'jquery-rails'
31
- s.add_development_dependency 'cucumber', '~> 0.10'
32
- s.add_development_dependency 'aruba', '~> 0.3'
33
- s.add_development_dependency 'sqlite3', '~> 1'
25
+ s.add_development_dependency 'rails', '>= 3.1'
26
+ s.add_development_dependency 'uglifier', '>= 1.2.4'
27
+ s.add_development_dependency 'rake', '>= 0.9.2.2'
28
+ s.add_development_dependency 'coffee-rails', '>= 3.2.2'
29
+ s.add_development_dependency 'sass-rails', '>= 3.2.5'
30
+ s.add_development_dependency 'jquery-rails', '>= 2.0.2'
31
+ s.add_development_dependency 'cucumber', '>= 0.10'
32
+ s.add_development_dependency 'aruba', '>= 0.3'
33
+ s.add_development_dependency 'sqlite3', '>= 1'
34
34
  end
@@ -158,11 +158,12 @@ Feature: generator spec
158
158
  before { run_generator %w(create_posts) }
159
159
  subject { migration_file('db/migrate/create_posts.rb') }
160
160
  it { should exist }
161
+ it { should be_a_migration }
161
162
  it { should contain 'class CreatePosts < ActiveRecord::Migration' }
162
163
  end
163
164
  """
164
165
  When I run `rake spec`
165
- Then the output should contain "2 examples, 0 failures"
166
+ Then the output should contain "3 examples, 0 failures"
166
167
 
167
168
  Scenario: Can tell the generator where to put its files
168
169
  Given a file named "spec/generators/awesome_generator_spec.rb" with:
@@ -1,7 +1,11 @@
1
1
  RSpec::Matchers.define :be_a_migration do
2
2
  match do |file_path|
3
- dirname, file_name = File.dirname(file_path), File.basename(file_path).sub(/\.rb$/, '')
4
- migration_file_path = Dir.glob("#{dirname}/[0-9]*_*.rb").grep(/\d+_#{file_name}.rb$/).first
3
+ dirname, file_name = File.dirname(file_path), File.basename(file_path)
4
+ if file_name.match(/\d+_.*\.rb/)
5
+ migration_file_path = file_path
6
+ else
7
+ migration_file_path = Dir.glob("#{dirname}/[0-9]*_*.rb").grep(/\d+_#{file_name}$/).first
8
+ end
5
9
  File.exist?(migration_file_path)
6
10
  end
7
11
  end
@@ -1,3 +1,3 @@
1
1
  module Ammeter
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
@@ -11,9 +11,12 @@ describe "be_a_migration" do
11
11
  end
12
12
  Dir.stub!(:glob).with('db/migrate/[0-9]*_*.rb').and_return(migration_files)
13
13
  end
14
- it 'should find for the migration file with timestamp in filename' do
14
+ it 'should find for the migration file adding the filename timestamp for us' do
15
15
  'db/migrate/create_users.rb'.should be_a_migration
16
16
  end
17
+ it 'should find for the migration file when we know the filename timestamp' do
18
+ 'db/migrate/20110504132601_create_posts.rb'.should be_a_migration
19
+ end
17
20
  it 'should know when a migration does not exist' do
18
21
  'db/migrate/create_comments.rb'.should_not be_a_migration
19
22
  end
metadata CHANGED
@@ -1,221 +1,231 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: ammeter
3
- version: !ruby/object:Gem::Version
4
- hash: 17
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.4
5
5
  prerelease:
6
- segments:
7
- - 0
8
- - 2
9
- - 3
10
- version: 0.2.3
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Alex Rothenberg
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-03-05 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- prerelease: false
22
- type: :runtime
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- none: false
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- hash: 7
29
- segments:
30
- - 3
31
- - 0
32
- version: "3.0"
33
- version_requirements: *id001
12
+ date: 2012-04-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
34
15
  name: railties
35
- - !ruby/object:Gem::Dependency
36
- prerelease: false
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
37
22
  type: :runtime
38
- requirement: &id002 !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
39
25
  none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 7
44
- segments:
45
- - 3
46
- - 0
47
- version: "3.0"
48
- version_requirements: *id002
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - !ruby/object:Gem::Dependency
49
31
  name: activesupport
50
- - !ruby/object:Gem::Dependency
51
- prerelease: false
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '3.0'
52
38
  type: :runtime
53
- requirement: &id003 !ruby/object:Gem::Requirement
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
54
41
  none: false
55
- requirements:
56
- - - ">="
57
- - !ruby/object:Gem::Version
58
- hash: 7
59
- segments:
60
- - 2
61
- - 2
62
- version: "2.2"
63
- version_requirements: *id003
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '3.0'
46
+ - !ruby/object:Gem::Dependency
64
47
  name: rspec
65
- - !ruby/object:Gem::Dependency
66
- prerelease: false
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '2.2'
67
54
  type: :runtime
68
- requirement: &id004 !ruby/object:Gem::Requirement
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
69
57
  none: false
70
- requirements:
71
- - - ">="
72
- - !ruby/object:Gem::Version
73
- hash: 7
74
- segments:
75
- - 2
76
- - 2
77
- version: "2.2"
78
- version_requirements: *id004
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '2.2'
62
+ - !ruby/object:Gem::Dependency
79
63
  name: rspec-rails
80
- - !ruby/object:Gem::Dependency
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '2.2'
70
+ type: :runtime
81
71
  prerelease: false
82
- type: :development
83
- requirement: &id005 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
84
73
  none: false
85
- requirements:
86
- - - ">="
87
- - !ruby/object:Gem::Version
88
- hash: 5
89
- segments:
90
- - 3
91
- - 1
92
- version: "3.1"
93
- version_requirements: *id005
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '2.2'
78
+ - !ruby/object:Gem::Dependency
94
79
  name: rails
95
- - !ruby/object:Gem::Dependency
96
- prerelease: false
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '3.1'
97
86
  type: :development
98
- requirement: &id006 !ruby/object:Gem::Requirement
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
99
89
  none: false
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- hash: 3
104
- segments:
105
- - 0
106
- version: "0"
107
- version_requirements: *id006
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '3.1'
94
+ - !ruby/object:Gem::Dependency
108
95
  name: uglifier
109
- - !ruby/object:Gem::Dependency
110
- prerelease: false
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: 1.2.4
111
102
  type: :development
112
- requirement: &id007 !ruby/object:Gem::Requirement
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
113
105
  none: false
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- hash: 3
118
- segments:
119
- - 0
120
- version: "0"
121
- version_requirements: *id007
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: 1.2.4
110
+ - !ruby/object:Gem::Dependency
122
111
  name: rake
123
- - !ruby/object:Gem::Dependency
124
- prerelease: false
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: 0.9.2.2
125
118
  type: :development
126
- requirement: &id008 !ruby/object:Gem::Requirement
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
127
121
  none: false
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- hash: 3
132
- segments:
133
- - 0
134
- version: "0"
135
- version_requirements: *id008
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: 0.9.2.2
126
+ - !ruby/object:Gem::Dependency
136
127
  name: coffee-rails
137
- - !ruby/object:Gem::Dependency
138
- prerelease: false
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: 3.2.2
139
134
  type: :development
140
- requirement: &id009 !ruby/object:Gem::Requirement
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
141
137
  none: false
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- hash: 3
146
- segments:
147
- - 0
148
- version: "0"
149
- version_requirements: *id009
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: 3.2.2
142
+ - !ruby/object:Gem::Dependency
150
143
  name: sass-rails
151
- - !ruby/object:Gem::Dependency
152
- prerelease: false
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: 3.2.5
153
150
  type: :development
154
- requirement: &id010 !ruby/object:Gem::Requirement
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
155
153
  none: false
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- hash: 3
160
- segments:
161
- - 0
162
- version: "0"
163
- version_requirements: *id010
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: 3.2.5
158
+ - !ruby/object:Gem::Dependency
164
159
  name: jquery-rails
165
- - !ruby/object:Gem::Dependency
166
- prerelease: false
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: 2.0.2
167
166
  type: :development
168
- requirement: &id011 !ruby/object:Gem::Requirement
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
169
  none: false
170
- requirements:
171
- - - ~>
172
- - !ruby/object:Gem::Version
173
- hash: 31
174
- segments:
175
- - 0
176
- - 10
177
- version: "0.10"
178
- version_requirements: *id011
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: 2.0.2
174
+ - !ruby/object:Gem::Dependency
179
175
  name: cucumber
180
- - !ruby/object:Gem::Dependency
181
- prerelease: false
176
+ requirement: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ! '>='
180
+ - !ruby/object:Gem::Version
181
+ version: '0.10'
182
182
  type: :development
183
- requirement: &id012 !ruby/object:Gem::Requirement
183
+ prerelease: false
184
+ version_requirements: !ruby/object:Gem::Requirement
184
185
  none: false
185
- requirements:
186
- - - ~>
187
- - !ruby/object:Gem::Version
188
- hash: 13
189
- segments:
190
- - 0
191
- - 3
192
- version: "0.3"
193
- version_requirements: *id012
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0.10'
190
+ - !ruby/object:Gem::Dependency
194
191
  name: aruba
195
- - !ruby/object:Gem::Dependency
196
- prerelease: false
192
+ requirement: !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '0.3'
197
198
  type: :development
198
- requirement: &id013 !ruby/object:Gem::Requirement
199
+ prerelease: false
200
+ version_requirements: !ruby/object:Gem::Requirement
199
201
  none: false
200
- requirements:
201
- - - ~>
202
- - !ruby/object:Gem::Version
203
- hash: 1
204
- segments:
205
- - 1
206
- version: "1"
207
- version_requirements: *id013
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0.3'
206
+ - !ruby/object:Gem::Dependency
208
207
  name: sqlite3
208
+ requirement: !ruby/object:Gem::Requirement
209
+ none: false
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '1'
214
+ type: :development
215
+ prerelease: false
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '1'
209
222
  description: Write specs for your Rails 3+ generators
210
- email:
223
+ email:
211
224
  - alex@alexrothenberg.com
212
225
  executables: []
213
-
214
226
  extensions: []
215
-
216
227
  extra_rdoc_files: []
217
-
218
- files:
228
+ files:
219
229
  - .gitignore
220
230
  - .travis.yml
221
231
  - Gemfile
@@ -245,40 +255,37 @@ files:
245
255
  - spec/ammeter/rspec/generator/matchers/exist_spec.rb
246
256
  - spec/spec_helper.rb
247
257
  - spec/support/helpers.rb
248
- homepage: ""
258
+ homepage: ''
249
259
  licenses: []
250
-
251
260
  post_install_message:
252
261
  rdoc_options: []
253
-
254
- require_paths:
262
+ require_paths:
255
263
  - lib
256
- required_ruby_version: !ruby/object:Gem::Requirement
264
+ required_ruby_version: !ruby/object:Gem::Requirement
257
265
  none: false
258
- requirements:
259
- - - ">="
260
- - !ruby/object:Gem::Version
261
- hash: 3
262
- segments:
266
+ requirements:
267
+ - - ! '>='
268
+ - !ruby/object:Gem::Version
269
+ version: '0'
270
+ segments:
263
271
  - 0
264
- version: "0"
265
- required_rubygems_version: !ruby/object:Gem::Requirement
272
+ hash: 1621738140737887747
273
+ required_rubygems_version: !ruby/object:Gem::Requirement
266
274
  none: false
267
- requirements:
268
- - - ">="
269
- - !ruby/object:Gem::Version
270
- hash: 3
271
- segments:
275
+ requirements:
276
+ - - ! '>='
277
+ - !ruby/object:Gem::Version
278
+ version: '0'
279
+ segments:
272
280
  - 0
273
- version: "0"
281
+ hash: 1621738140737887747
274
282
  requirements: []
275
-
276
283
  rubyforge_project:
277
- rubygems_version: 1.8.11
284
+ rubygems_version: 1.8.21
278
285
  signing_key:
279
286
  specification_version: 3
280
287
  summary: Write specs for your Rails 3+ generators
281
- test_files:
288
+ test_files:
282
289
  - features/generator_spec.feature
283
290
  - features/support/env.rb
284
291
  - features/templates/generate_example_app.rb