ammeter 0.2.5 → 0.2.6
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 +6 -0
- data/features/hooking_into_other_generators.feature +50 -0
- data/lib/ammeter/init.rb +2 -0
- data/lib/ammeter/version.rb +1 -1
- data/spec/spec_helper.rb +7 -0
- metadata +7 -5
data/History.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
## Ammeter release history
|
2
2
|
|
3
|
+
### 0.2.6 / 2012-06-28
|
4
|
+
|
5
|
+
[full changelog](https://github.com/alexrothenberg/ammeter/compare/v0.2.5...v0.2.6)
|
6
|
+
|
7
|
+
* Fixed issue #11 - testing generators that depend on other generators using `hook_for`
|
8
|
+
|
3
9
|
### 0.2.5 / 2012-05-03
|
4
10
|
|
5
11
|
[full changelog](https://github.com/alexrothenberg/ammeter/compare/v0.2.4...v0.2.5)
|
@@ -0,0 +1,50 @@
|
|
1
|
+
Feature: generator spec
|
2
|
+
|
3
|
+
Generator specs live in spec/generators. In order to access
|
4
|
+
the generator's methods you can call them on the "generator" object.
|
5
|
+
|
6
|
+
Background: A generator that uses "hook_for"
|
7
|
+
Given a file named "lib/generators/resourceful/resourceful_generator.rb" with:
|
8
|
+
"""
|
9
|
+
class ResourcefulGenerator < Rails::Generators::NamedBase
|
10
|
+
source_root File.expand_path('../templates', __FILE__)
|
11
|
+
class_option :super, :type => :boolean, :default => false
|
12
|
+
|
13
|
+
hook_for :orm, :in => :rails, :as => :model, :required => true
|
14
|
+
|
15
|
+
def create_resourceful_controller
|
16
|
+
template 'controller.rb', File.join('app/controllers', "#{plural_file_name}_controller.rb")
|
17
|
+
end
|
18
|
+
end
|
19
|
+
"""
|
20
|
+
And a file named "lib/generators/resourceful/templates/controller.rb" with:
|
21
|
+
"""
|
22
|
+
class <%= class_name.pluralize %>Controller < ResourcefulController
|
23
|
+
end
|
24
|
+
"""
|
25
|
+
|
26
|
+
Scenario: A spec that runs the entire generator
|
27
|
+
Given a file named "spec/generators/resourceful_generator_spec.rb" with:
|
28
|
+
"""
|
29
|
+
require "spec_helper"
|
30
|
+
require 'generators/resourceful/resourceful_generator'
|
31
|
+
|
32
|
+
describe ResourcefulGenerator do
|
33
|
+
before { run_generator %w(post) }
|
34
|
+
describe 'app/controller/posts_controller.rb' do
|
35
|
+
subject { file('app/controllers/posts_controller.rb') }
|
36
|
+
it { should exist }
|
37
|
+
it { should contain 'class PostsController < ResourcefulController' }
|
38
|
+
end
|
39
|
+
|
40
|
+
describe 'app/models/post.rb' do
|
41
|
+
subject { file('app/models/post.rb') }
|
42
|
+
it { should exist }
|
43
|
+
it { should contain 'class Post < ActiveRecord::Base' }
|
44
|
+
end
|
45
|
+
end
|
46
|
+
"""
|
47
|
+
When I run `rake spec`
|
48
|
+
Then the output should contain "4 examples, 0 failures"
|
49
|
+
|
50
|
+
|
data/lib/ammeter/init.rb
CHANGED
data/lib/ammeter/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
require 'rails/all'
|
2
2
|
require 'rspec/rails'
|
3
|
+
|
4
|
+
module TestApp
|
5
|
+
class Application < Rails::Application
|
6
|
+
config.root = File.dirname(__FILE__)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
3
10
|
require 'ammeter/init'
|
4
11
|
|
5
12
|
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ammeter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: railties
|
@@ -235,6 +235,7 @@ files:
|
|
235
235
|
- Rakefile
|
236
236
|
- ammeter.gemspec
|
237
237
|
- features/generator_spec.feature
|
238
|
+
- features/hooking_into_other_generators.feature
|
238
239
|
- features/support/env.rb
|
239
240
|
- features/templates/generate_example_app.rb
|
240
241
|
- features/templates/rspec.rake
|
@@ -269,7 +270,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
269
270
|
version: '0'
|
270
271
|
segments:
|
271
272
|
- 0
|
272
|
-
hash:
|
273
|
+
hash: -2181907763227366726
|
273
274
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
274
275
|
none: false
|
275
276
|
requirements:
|
@@ -278,15 +279,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
278
279
|
version: '0'
|
279
280
|
segments:
|
280
281
|
- 0
|
281
|
-
hash:
|
282
|
+
hash: -2181907763227366726
|
282
283
|
requirements: []
|
283
284
|
rubyforge_project:
|
284
|
-
rubygems_version: 1.8.
|
285
|
+
rubygems_version: 1.8.24
|
285
286
|
signing_key:
|
286
287
|
specification_version: 3
|
287
288
|
summary: Write specs for your Rails 3+ generators
|
288
289
|
test_files:
|
289
290
|
- features/generator_spec.feature
|
291
|
+
- features/hooking_into_other_generators.feature
|
290
292
|
- features/support/env.rb
|
291
293
|
- features/templates/generate_example_app.rb
|
292
294
|
- features/templates/rspec.rake
|