ammeter 0.2.3 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
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