rails_spec_harness 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.rspec +2 -0
- data/.travis.yml +3 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +62 -0
- data/Rakefile +6 -0
- data/lib/generators/harness_gems/USAGE +29 -0
- data/lib/generators/harness_gems/harness_gems_generator.rb +27 -0
- data/lib/generators/harness_guardfile/USAGE +8 -0
- data/lib/generators/harness_guardfile/harness_guardfile_generator.rb +19 -0
- data/lib/generators/harness_guardfile/templates/Guardfile +9 -0
- data/lib/generators/harness_spec_helper/USAGE +23 -0
- data/lib/generators/harness_spec_helper/harness_spec_helper_generator.rb +34 -0
- data/lib/generators/harness_spec_helper/templates/base_spec_helper.rb +24 -0
- data/lib/generators/harness_spec_helper/templates/decorators_spec_helper.rb +6 -0
- data/lib/generators/harness_spec_helper/templates/dotrspec +2 -0
- data/lib/generators/harness_spec_helper/templates/features_spec_helper.rb +34 -0
- data/lib/generators/harness_spec_helper/templates/forms_spec_helper.rb +5 -0
- data/lib/generators/harness_spec_helper/templates/light_spec_helper.rb +4 -0
- data/lib/generators/harness_spec_helper/templates/models_spec_helper.rb +11 -0
- data/lib/generators/spec_harness/USAGE +57 -0
- data/lib/generators/spec_harness/spec_harness_generator.rb +39 -0
- data/lib/rails_spec_harness.rb +8 -0
- data/lib/rails_spec_harness/version.rb +3 -0
- data/rails_spec_harness.gemspec +26 -0
- data/spec/rails_spec_harness_spec.rb +11 -0
- data/spec/spec_helper.rb +2 -0
- metadata +131 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c0e5f2ef469b8e4605651c07598eb65b53962dee
|
4
|
+
data.tar.gz: 1b3e5f19c0e51591bc490db72f5f48fe1a52114d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 1f5eab81dd564a1288708c0f6d5871841ad675a4a931580415e90ffad1ef737d376092558928bde32797cad52caae2b215f56fb84a549ef66ba9f340f2237a27
|
7
|
+
data.tar.gz: 141dbc8bc7d25ac2288d1a9e8754eb6fa3aadf181c0403f21cbeeee573264175edff4da1b41216a499d1e98528f44cb79b804637ff34a172a3e24e60019e7b56
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014 alexpeachey
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
# Rails Spec Harness
|
2
|
+
|
3
|
+
A gem with some useful generators for Rails applications.
|
4
|
+
Designed to make testing faster and easier.
|
5
|
+
It will add some nice gems to your Gemfile (optional), create a Guardfile (optional), and set you up with
|
6
|
+
a set of spec helpers and directory structures.
|
7
|
+
|
8
|
+
## Installation
|
9
|
+
|
10
|
+
Add this line to your application's Gemfile:
|
11
|
+
|
12
|
+
gem 'rails_spec_harness'
|
13
|
+
|
14
|
+
And then execute:
|
15
|
+
|
16
|
+
$ bundle
|
17
|
+
|
18
|
+
Or install it yourself as:
|
19
|
+
|
20
|
+
$ gem install rails_spec_harness
|
21
|
+
|
22
|
+
## Usage
|
23
|
+
|
24
|
+
Generate everything:
|
25
|
+
|
26
|
+
rails generate spec_harness
|
27
|
+
|
28
|
+
Leave out the Gemfile modification and the Guardfile:
|
29
|
+
|
30
|
+
rails generate spec_harness --no-gems --no-guardfile
|
31
|
+
|
32
|
+
Only include specific types of specs:
|
33
|
+
|
34
|
+
rails generate spec_harness --only_types=models features
|
35
|
+
|
36
|
+
Add additional types of specs:
|
37
|
+
|
38
|
+
rails generate spec_harness --include_types=events
|
39
|
+
|
40
|
+
Exclude certain types of specs:
|
41
|
+
|
42
|
+
rails generate spec_harness --exclude_types=decorators
|
43
|
+
|
44
|
+
Later you can use the `harness_spec_helper` to add additional types:
|
45
|
+
|
46
|
+
rails generate harness_spec_helper events
|
47
|
+
|
48
|
+
## Writing Specs
|
49
|
+
|
50
|
+
Instead of `require spec_helper` at the top of your spec file, use the specific helper like `require models_spec_helper`.
|
51
|
+
|
52
|
+
These helpers are designed to isolate code and bootstrap a minimum amount of items. As such follow SOLID coding practices.
|
53
|
+
You may find in some cases you'll need to require a specific file/library in your spec if you are using something special.
|
54
|
+
|
55
|
+
|
56
|
+
## Contributing
|
57
|
+
|
58
|
+
1. Fork it ( http://github.com/<my-github-username>/rails_spec_harness/fork )
|
59
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
60
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
61
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
62
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
Description:
|
2
|
+
Add useful gems to your rails project
|
3
|
+
|
4
|
+
Example:
|
5
|
+
rails generate harness_gems
|
6
|
+
|
7
|
+
This will add the following gems to your Gemfile under development/test:
|
8
|
+
rspec-rails
|
9
|
+
shoulda
|
10
|
+
capybara
|
11
|
+
poltergeist
|
12
|
+
factory_girl_rails
|
13
|
+
database_cleaner
|
14
|
+
simplecov
|
15
|
+
simplecov-html
|
16
|
+
guard
|
17
|
+
guard-rspec
|
18
|
+
rb-inotify, require: false
|
19
|
+
rb-fsevent, require: false
|
20
|
+
rb-fchange, require: false
|
21
|
+
better_errors
|
22
|
+
binding_of_caller
|
23
|
+
meta_request
|
24
|
+
|
25
|
+
This will add the following gems ungrouped:
|
26
|
+
draper
|
27
|
+
fob
|
28
|
+
resonsive_service
|
29
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
|
3
|
+
class HarnessGemsGenerator < Rails::Generators::Base
|
4
|
+
def update_gemfile
|
5
|
+
gem 'draper'
|
6
|
+
gem 'fob'
|
7
|
+
gem 'responsive_service'
|
8
|
+
gem_group :development, :test do
|
9
|
+
gem 'rspec-rails'
|
10
|
+
gem 'shoulda'
|
11
|
+
gem 'capybara'
|
12
|
+
gem 'poltergeist'
|
13
|
+
gem 'factory_girl_rails'
|
14
|
+
gem 'database_cleaner'
|
15
|
+
gem 'simplecov'
|
16
|
+
gem 'simplecov-html'
|
17
|
+
gem 'guard'
|
18
|
+
gem 'guard-rspec'
|
19
|
+
gem 'rb-inotify', require: false
|
20
|
+
gem 'rb-fsevent', require: false
|
21
|
+
gem 'rb-fchange', require: false
|
22
|
+
gem 'better_errors'
|
23
|
+
gem 'binding_of_caller'
|
24
|
+
gem 'meta_request'
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
|
3
|
+
class HarnessGuardfileGenerator < Rails::Generators::Base
|
4
|
+
source_root File.expand_path('../templates', __FILE__)
|
5
|
+
class_option :watch_types, type: :array, default: [], required: true, desc: "Types of specs to watch"
|
6
|
+
|
7
|
+
def generate_guardfile
|
8
|
+
template 'Guardfile', 'Guardfile'
|
9
|
+
end
|
10
|
+
|
11
|
+
private
|
12
|
+
def spec_paths
|
13
|
+
options.watch_types.map { |t| "spec/#{t}" }
|
14
|
+
end
|
15
|
+
|
16
|
+
def spec_type_matcher
|
17
|
+
options.watch_types.join('|')
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
guard :rspec, notification: true, cmd: 'rspec --color --format nested --tty', spec_paths: <%= spec_paths %> do
|
2
|
+
watch(%r{^spec/(<%= spec_type_matcher %>)/.+_spec\.rb$})
|
3
|
+
watch(%r{^spec/(<%= spec_type_matcher %>)_spec_helper\.rb$}) { |m| "spec/#{m[1]}" }
|
4
|
+
watch(%r{^spec/support_(<%= spec_type_matcher %>)/(.+)\.rb$}) { |m| "spec/#{m[1]}" }
|
5
|
+
watch(%r{^app/(<%= spec_type_matcher %>)/(.+)\.rb$}) { |m| "spec/#{m[1]}/#{m[2]}_spec.rb" }
|
6
|
+
|
7
|
+
watch('/spec/base_spec_helper.rb') { <%= spec_paths %> }
|
8
|
+
watch(%r{^spec/support_common/(.+)\.rb$}) { <%= spec_paths %> }
|
9
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
Description:
|
2
|
+
Generates a base spec_helper.rb for inclusion in the various other versions.
|
3
|
+
If a SPEC_TYPE is specified a specific helper for that type will be generated.
|
4
|
+
|
5
|
+
Example:
|
6
|
+
rails generate harness_spec_helper
|
7
|
+
|
8
|
+
This will create:
|
9
|
+
spec/spec_helper.rb
|
10
|
+
spec/support/.keep
|
11
|
+
.rspec
|
12
|
+
|
13
|
+
Example:
|
14
|
+
rails generate harness_spec_helper models
|
15
|
+
|
16
|
+
This will create:
|
17
|
+
spec/spec_helper.rb
|
18
|
+
spec/support/.keep
|
19
|
+
.rspec
|
20
|
+
spec/models_spec_helper.rb
|
21
|
+
spec/support_models/.keep
|
22
|
+
spec/models/.keep
|
23
|
+
app/models/.keep
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
|
3
|
+
class HarnessSpecHelperGenerator < Rails::Generators::Base
|
4
|
+
source_root File.expand_path('../templates', __FILE__)
|
5
|
+
argument :spec_type, type: :string, default: 'base'
|
6
|
+
|
7
|
+
def generate_spec_helper
|
8
|
+
copy_file 'base_spec_helper.rb', 'spec/base_spec_helper.rb'
|
9
|
+
copy_file 'dotrspec', '.rspec'
|
10
|
+
create_file 'spec/support_common/.keep'
|
11
|
+
end
|
12
|
+
|
13
|
+
def generate_spec_helpers
|
14
|
+
return if spec_type == 'base'
|
15
|
+
template template_file, "spec/#{spec_type.underscore.pluralize}_spec_helper.rb"
|
16
|
+
create_file "spec/support_#{spec_type.underscore.pluralize}/.keep"
|
17
|
+
create_file "spec/#{spec_type.underscore.pluralize}/.keep"
|
18
|
+
create_file "app/#{spec_type.underscore.pluralize}/.keep" unless spec_type.underscore.pluralize == 'features'
|
19
|
+
end
|
20
|
+
|
21
|
+
private
|
22
|
+
def template_map
|
23
|
+
{
|
24
|
+
'decorators' => 'decorators_spec_helper.rb',
|
25
|
+
'features' => 'features_spec_helper.rb',
|
26
|
+
'forms' => 'forms_spec_helper.rb',
|
27
|
+
'modles' => 'models_spec_helper.rb'
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
def template_file
|
32
|
+
template_map.fetch(spec_type.underscore.pluralize) { 'light_spec_helper.rb' }
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
ENV["RAILS_ENV"] ||= 'test'
|
2
|
+
require 'rubygems'
|
3
|
+
|
4
|
+
if ENV["COVERAGE"]
|
5
|
+
require 'simplecov'
|
6
|
+
require 'simplecov-rcov'
|
7
|
+
SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
|
8
|
+
SimpleCov.start 'rails'
|
9
|
+
end
|
10
|
+
|
11
|
+
RAILS_ROOT = File.expand_path('../..', __FILE__)
|
12
|
+
require 'rspec/autorun'
|
13
|
+
|
14
|
+
Dir[File.join(RAILS_ROOT, 'spec/support/**/*.rb')].each {|f| require f}
|
15
|
+
RSpec.configure do |config|
|
16
|
+
config.mock_with :rspec
|
17
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
18
|
+
config.run_all_when_everything_filtered = true
|
19
|
+
config.filter_run :focus
|
20
|
+
config.order = 'random'
|
21
|
+
end
|
22
|
+
|
23
|
+
require 'active_support'
|
24
|
+
require 'active_support/dependencies'
|
@@ -0,0 +1,6 @@
|
|
1
|
+
require 'base_spec_helper'
|
2
|
+
require 'responsive_service'
|
3
|
+
require 'draper'
|
4
|
+
Draper::ViewContext.test_strategy :fast
|
5
|
+
Dir[File.join(RAILS_ROOT, "spec/support_decorators/**/*.rb")].each {|f| require f}
|
6
|
+
ActiveSupport::Dependencies.autoload_paths << "#{RAILS_ROOT}/app/decorators"
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'base_spec_helper'
|
2
|
+
require File.expand_path('../../config/environment', __FILE__)
|
3
|
+
require 'rspec/rails'
|
4
|
+
require 'capybara/rspec'
|
5
|
+
require 'capybara/poltergeist'
|
6
|
+
require 'factory_girl'
|
7
|
+
require 'database_cleaner'
|
8
|
+
Dir[Rails.root.join('spec/support_features/**/*.rb')].each {|f| require f}
|
9
|
+
|
10
|
+
ActiveRecord::Migration.check_pending! if defined?(ActiveRecord::Migration)
|
11
|
+
|
12
|
+
DatabaseCleaner.strategy = :truncation
|
13
|
+
|
14
|
+
Capybara.javascript_driver = :poltergeist
|
15
|
+
Capybara.default_wait_time = 5
|
16
|
+
|
17
|
+
RSpec.configure do |config|
|
18
|
+
config.use_transactional_fixtures = false
|
19
|
+
config.infer_base_class_for_anonymous_controllers = false
|
20
|
+
|
21
|
+
config.include FactoryGirl::Syntax::Methods
|
22
|
+
|
23
|
+
config.before(:suite) do
|
24
|
+
DatabaseCleaner.clean
|
25
|
+
end
|
26
|
+
|
27
|
+
config.before(:each) do
|
28
|
+
DatabaseCleaner.start
|
29
|
+
end
|
30
|
+
|
31
|
+
config.after(:each) do
|
32
|
+
DatabaseCleaner.clean
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,4 @@
|
|
1
|
+
require 'base_spec_helper'
|
2
|
+
require 'responsive_service'
|
3
|
+
Dir[File.join(RAILS_ROOT, "spec/support_<%= spec_type.underscore.pluralize %>/**/*.rb")].each {|f| require f}
|
4
|
+
ActiveSupport::Dependencies.autoload_paths << "#{RAILS_ROOT}/app/<%= spec_type.underscore.pluralize %>"
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'base_spec_helper'
|
2
|
+
require 'active_record'
|
3
|
+
require 'rspec/rails/extensions/active_record/base'
|
4
|
+
require 'shoulda'
|
5
|
+
Dir[File.join(RAILS_ROOT, "spec/support_models/**/*.rb")].each {|f| require f}
|
6
|
+
|
7
|
+
ActiveRecord::Base.establish_connection(
|
8
|
+
YAML.load(File.read(RAILS_ROOT + '/config/database.yml'))['test']
|
9
|
+
)
|
10
|
+
|
11
|
+
ActiveSupport::Dependencies.autoload_paths << "#{RAILS_ROOT}/app/models"
|
@@ -0,0 +1,57 @@
|
|
1
|
+
Description:
|
2
|
+
Set up your rails project for fast efficient testing.
|
3
|
+
|
4
|
+
Example:
|
5
|
+
rails generate spec_harness
|
6
|
+
|
7
|
+
This will create:
|
8
|
+
spec/spec_helper.rb
|
9
|
+
spec/support/.keep
|
10
|
+
.rspec
|
11
|
+
spec/actions_spec_helper.rb
|
12
|
+
spec/support_actions/.keep
|
13
|
+
spec/actions/.keep
|
14
|
+
app/actions/.keep
|
15
|
+
spec/decorators_spec_helper.rb
|
16
|
+
spec/support_decorators/.keep
|
17
|
+
spec/decorators/.keep
|
18
|
+
app/decorators/.keep
|
19
|
+
spec/features_spec_helper.rb
|
20
|
+
spec/support_features/.keep
|
21
|
+
spec/features/.keep
|
22
|
+
app/features/.keep
|
23
|
+
spec/forms_spec_helper.rb
|
24
|
+
spec/support_forms/.keep
|
25
|
+
spec/forms/.keep
|
26
|
+
app/forms/.keep
|
27
|
+
spec/models_spec_helper.rb
|
28
|
+
spec/support_models/.keep
|
29
|
+
spec/models/.keep
|
30
|
+
app/models/.keep
|
31
|
+
spec/services_spec_helper.rb
|
32
|
+
spec/support_services/.keep
|
33
|
+
spec/services/.keep
|
34
|
+
app/services/.keep
|
35
|
+
|
36
|
+
This will add the following gems to your Gemfile under development/test:
|
37
|
+
rspec-rails
|
38
|
+
shoulda
|
39
|
+
capybara
|
40
|
+
poltergeist
|
41
|
+
factory_girl_rails
|
42
|
+
database_cleaner
|
43
|
+
simplecov
|
44
|
+
simplecov-html
|
45
|
+
guard
|
46
|
+
guard-rspec
|
47
|
+
rb-inotify, require: false
|
48
|
+
rb-fsevent, require: false
|
49
|
+
rb-fchange, require: false
|
50
|
+
better_errors
|
51
|
+
binding_of_caller
|
52
|
+
meta_request
|
53
|
+
|
54
|
+
This will add the following gems ungrouped:
|
55
|
+
draper
|
56
|
+
fob
|
57
|
+
resonsive_service
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'rails/generators/base'
|
2
|
+
|
3
|
+
class SpecHarnessGenerator < Rails::Generators::Base
|
4
|
+
class_option :gems, type: :boolean, default: true, desc: "Add gems to Gemfile"
|
5
|
+
class_option :guardfile, type: :boolean, default: true, desc: "Create a Guardfile"
|
6
|
+
class_option :only_types, type: :array, default: [], desc: "The only types which should be set up"
|
7
|
+
class_option :include_types, type: :array, default: [], desc: "Additional types of specs to include"
|
8
|
+
class_option :exclude_types, type: :array, default: [], desc: "Types of specs to exclude"
|
9
|
+
|
10
|
+
def generate_harness
|
11
|
+
generate 'harness_spec_helper'
|
12
|
+
required_spec_types.each do |type|
|
13
|
+
generate "harness_spec_helper #{type}"
|
14
|
+
end
|
15
|
+
generate "harness_guardfile --watch_types=#{watch_types}" if options.guardfile?
|
16
|
+
generate 'harness_gems' if options.gems?
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
def spec_types
|
21
|
+
[
|
22
|
+
'actions',
|
23
|
+
'decorators',
|
24
|
+
'features',
|
25
|
+
'forms',
|
26
|
+
'models',
|
27
|
+
'services'
|
28
|
+
]
|
29
|
+
end
|
30
|
+
|
31
|
+
def required_spec_types
|
32
|
+
return (options.only_types.map {|t| t.underscore.pluralize}) if options.only_types.any?
|
33
|
+
spec_types - (options.exclude_types.map {|t| t.underscore.pluralize}) + (options.include_types.map {|t| t.underscore.pluralize})
|
34
|
+
end
|
35
|
+
|
36
|
+
def watch_types
|
37
|
+
required_spec_types.reject {|t| t == 'features'}.join(' ')
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,8 @@
|
|
1
|
+
require 'rails_spec_harness/version'
|
2
|
+
require 'generators/harness_gems/harness_gems_generator'
|
3
|
+
require 'generators/harness_guardfile/harness_guardfile_generator'
|
4
|
+
require 'generators/harness_spec_helper/harness_spec_helper_generator'
|
5
|
+
require 'generators/spec_harness/spec_harness_generator'
|
6
|
+
|
7
|
+
module RailsSpecHarness
|
8
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'rails_spec_harness/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'rails_spec_harness'
|
8
|
+
spec.version = RailsSpecHarness::VERSION
|
9
|
+
spec.authors = ['alexpeachey']
|
10
|
+
spec.email = ['alex.peachey@gmail.com']
|
11
|
+
spec.summary = 'Helpful generators for fast rails specs.'
|
12
|
+
spec.description = 'Make your specs sane with a set of helpers to isolate code and improve speed.'
|
13
|
+
spec.homepage = 'https://github.com/alexpeachey/rails_spec_harness'
|
14
|
+
spec.license = 'MIT'
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ['lib']
|
20
|
+
|
21
|
+
spec.add_dependency 'rails', '>= 3.0.0'
|
22
|
+
|
23
|
+
spec.add_development_dependency 'bundler', '~> 1.5'
|
24
|
+
spec.add_development_dependency 'rake', '~> 10.1'
|
25
|
+
spec.add_development_dependency 'rspec', '~> 2.14'
|
26
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,131 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails_spec_harness
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- alexpeachey
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-02-26 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rails
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 3.0.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 3.0.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.5'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.5'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '10.1'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ~>
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '10.1'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '2.14'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '2.14'
|
69
|
+
description: Make your specs sane with a set of helpers to isolate code and improve
|
70
|
+
speed.
|
71
|
+
email:
|
72
|
+
- alex.peachey@gmail.com
|
73
|
+
executables: []
|
74
|
+
extensions: []
|
75
|
+
extra_rdoc_files: []
|
76
|
+
files:
|
77
|
+
- .gitignore
|
78
|
+
- .rspec
|
79
|
+
- .travis.yml
|
80
|
+
- Gemfile
|
81
|
+
- LICENSE.txt
|
82
|
+
- README.md
|
83
|
+
- Rakefile
|
84
|
+
- lib/generators/harness_gems/USAGE
|
85
|
+
- lib/generators/harness_gems/harness_gems_generator.rb
|
86
|
+
- lib/generators/harness_guardfile/USAGE
|
87
|
+
- lib/generators/harness_guardfile/harness_guardfile_generator.rb
|
88
|
+
- lib/generators/harness_guardfile/templates/Guardfile
|
89
|
+
- lib/generators/harness_spec_helper/USAGE
|
90
|
+
- lib/generators/harness_spec_helper/harness_spec_helper_generator.rb
|
91
|
+
- lib/generators/harness_spec_helper/templates/base_spec_helper.rb
|
92
|
+
- lib/generators/harness_spec_helper/templates/decorators_spec_helper.rb
|
93
|
+
- lib/generators/harness_spec_helper/templates/dotrspec
|
94
|
+
- lib/generators/harness_spec_helper/templates/features_spec_helper.rb
|
95
|
+
- lib/generators/harness_spec_helper/templates/forms_spec_helper.rb
|
96
|
+
- lib/generators/harness_spec_helper/templates/light_spec_helper.rb
|
97
|
+
- lib/generators/harness_spec_helper/templates/models_spec_helper.rb
|
98
|
+
- lib/generators/spec_harness/USAGE
|
99
|
+
- lib/generators/spec_harness/spec_harness_generator.rb
|
100
|
+
- lib/rails_spec_harness.rb
|
101
|
+
- lib/rails_spec_harness/version.rb
|
102
|
+
- rails_spec_harness.gemspec
|
103
|
+
- spec/rails_spec_harness_spec.rb
|
104
|
+
- spec/spec_helper.rb
|
105
|
+
homepage: https://github.com/alexpeachey/rails_spec_harness
|
106
|
+
licenses:
|
107
|
+
- MIT
|
108
|
+
metadata: {}
|
109
|
+
post_install_message:
|
110
|
+
rdoc_options: []
|
111
|
+
require_paths:
|
112
|
+
- lib
|
113
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - '>='
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '0'
|
123
|
+
requirements: []
|
124
|
+
rubyforge_project:
|
125
|
+
rubygems_version: 2.2.1
|
126
|
+
signing_key:
|
127
|
+
specification_version: 4
|
128
|
+
summary: Helpful generators for fast rails specs.
|
129
|
+
test_files:
|
130
|
+
- spec/rails_spec_harness_spec.rb
|
131
|
+
- spec/spec_helper.rb
|