refinerycms-testing 2.1.5 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e8f3d50c04da3b7c81c95d01e3c46d22f35cb0d4
4
- data.tar.gz: ce824dc24a00af88b25f1d704e84c0ed4b0a2d35
3
+ metadata.gz: 3e82b4a627c96a19f3332f179dbef51b08a21d13
4
+ data.tar.gz: 412cb490a55d456433e407c4d61fb30f5c8f022a
5
5
  SHA512:
6
- metadata.gz: 5d880697c04d502db69f9ded0422623fd2f85b762f0fb9099329bbf0218fef7d724de9922224e65165f80bc37ada987614b54b2266d13dc8a135b8e292eeaf54
7
- data.tar.gz: 6adb20fe300fc41deb31e87336e7c7a2f91427f2f0be62527acb35cc9d6804cce31df0bd6b1d39f599f060df00814656099e56f5d13df242a651ae9eb0462bb2
6
+ metadata.gz: ab5585826093c7103527a081038f5fbae8053cc56333f82a7ee64576ef74b2a8523db13f8e060114751f6b6bd98c3e6eed31f41fe6f5a6cb7330f2cd0c70ffa9
7
+ data.tar.gz: 38ff53a4fdb5b376483012ba39f4455dace33e187d51f875eaa5b075793c3aca041bf48fae6653dbc0cc52d7358b92688a86dce812565b53f36057358b1862eb
@@ -13,7 +13,7 @@ guard 'spork', :wait => 60, :cucumber => false, :rspec_env => { 'RAILS_ENV' => '
13
13
  end
14
14
  end
15
15
 
16
- guard 'rspec', :version => 2, :spec_paths => extensions.map{|e| "#{e}/spec"},
16
+ guard 'rspec', :version => 2, :spec_paths => extensions.map{ |e| "#{e}/spec"},
17
17
  :cli => (File.read('.rspec').split("\n").join(' ') if File.exists?('.rspec')) do
18
18
  extensions.each do |extension|
19
19
  watch(%r{^#{extension}/spec/.+_spec\.rb$})
@@ -19,7 +19,7 @@ end
19
19
 
20
20
  # Requires supporting files with custom matchers and macros, etc,
21
21
  # in ./support/ and its subdirectories including factories.
22
- ([ENGINE_RAILS_ROOT, Rails.root.to_s].uniq | ::Refinery::Plugins.registered.pathnames).map{|p|
22
+ ([ENGINE_RAILS_ROOT, Rails.root.to_s].uniq | ::Refinery::Plugins.registered.pathnames).map{ |p|
23
23
  Dir[File.join(p, 'spec', 'support', '**', '*.rb').to_s]
24
24
  }.flatten.sort.each do |support_file|
25
25
  require support_file
@@ -1,24 +1,28 @@
1
1
  namespace :refinery do
2
2
  namespace :testing do
3
- desc "Generates a dummy app for testing"
4
- task :dummy_app do
5
- unless dummy_app_path.exist?
6
- Rake::Task["refinery:testing:setup_dummy_app"].invoke
7
- Rake::Task["refinery:testing:setup_extension"].invoke
8
- Rake::Task["refinery:testing:init_test_database"].invoke
9
- end
10
- end
3
+ desc "Generates a dummy application for testing, if one doesn't exist."
4
+ task :dummy_app => [
5
+ :report_dummy_app_status,
6
+ :create_dummy_app
7
+ ]
11
8
 
12
- task :setup_dummy_app do
13
- require 'refinerycms'
9
+ desc "Creates a dummy application for testing"
10
+ task :create_dummy_app => [
11
+ :setup_dummy_app,
12
+ :setup_extension,
13
+ :init_test_database
14
+ ]
14
15
 
15
- params = %w(--quiet)
16
- params << "--database=#{ENV['DB']}" if ENV['DB']
16
+ desc "raises if there is already a dummy application"
17
+ task :report_dummy_app_status do
18
+ raise "\nPlease rm -rf '#{dummy_app_path}'\n\n" if dummy_app_path.exist?
19
+ end
17
20
 
18
- Refinery::DummyGenerator.start params
21
+ desc "Sets up just the dummy application for testing, no migrations or extensions"
22
+ task :setup_dummy_app do
23
+ require 'refinerycms-core'
19
24
 
20
- # Ensure the database is not there from a previous run.
21
- Rake::Task['refinery:testing:drop_dummy_app_database'].invoke
25
+ Refinery::DummyGenerator.start %W[--quiet --database=#{ENV['DB'].presence || 'sqlite3'}]
22
26
 
23
27
  Refinery::CmsGenerator.start %w[--quiet --fresh-installation]
24
28
 
@@ -41,19 +45,17 @@ namespace :refinery do
41
45
  end
42
46
 
43
47
  desc "Remove the dummy app used for testing"
44
- task :clean_dummy_app do
45
- Rake::Task['refinery:testing:drop_dummy_app_database'].invoke
48
+ task :clean_dummy_app => [:drop_dummy_app_database] do
46
49
  dummy_app_path.rmtree if dummy_app_path.exist?
47
50
  end
48
51
 
49
52
  desc "Remove the dummy app's database."
50
53
  task :drop_dummy_app_database do
51
- load 'rails/tasks/engine.rake'
52
- Rake::Task['app:db:drop'].invoke
54
+ system "bundle exec rake -f #{File.join(dummy_app_path, 'Rakefile')} db:drop"
53
55
  end
54
56
 
55
57
  task :init_test_database do
56
- system "bundle exec rake -f #{dummy_app_path.join('Rakefile')} db:test:prepare"
58
+ system "RAILS_ENV=test bundle exec rake -f #{File.join(dummy_app_path, 'Rakefile')} db:create db:migrate"
57
59
  end
58
60
 
59
61
  def dummy_app_path
@@ -1,6 +1,6 @@
1
1
  require 'refinerycms-core'
2
2
  require 'rspec-rails'
3
- require 'factory_girl_rails'
3
+ require 'factory_girl'
4
4
 
5
5
  module Refinery
6
6
  autoload :TestingGenerator, 'generators/refinery/testing/testing_generator'
@@ -2,7 +2,7 @@ module Refinery
2
2
  module Testing
3
3
  module ControllerMacros
4
4
  autoload :Authentication, 'refinery/testing/controller_macros/authentication'
5
- autoload :Methods, 'refinery/testing/controller_macros/methods'
5
+ autoload :Routes , 'refinery/testing/controller_macros/routes'
6
6
  end
7
7
  end
8
8
  end
@@ -2,80 +2,21 @@ module Refinery
2
2
  module Testing
3
3
  module ControllerMacros
4
4
  module Authentication
5
- def self.extended(base)
6
- base.send :include, Devise::TestHelpers
7
- end
8
5
 
9
6
  def refinery_login_with(*roles)
10
- mock_user roles
7
+ Refinery.deprecate('refinery_login_with', when: '3.1', replacement: 'refinery_login')
8
+ refinery_login
11
9
  end
12
10
 
13
11
  def refinery_login_with_factory(factory)
14
- factory_user factory
15
- end
16
-
17
- def mock_user(roles)
18
- let(:controller_permission) { true }
19
- roles = handle_deprecated_roles! roles
20
- let(:logged_in_user) do
21
- user = double 'Refinery::User', :username => 'Joe Fake'
22
-
23
- roles.each do |role|
24
- user.stub(:has_role?).with(role).and_return true
25
- end
26
- user.stub(:has_role?).with(:superuser).and_return false if roles.exclude? :superuser
27
-
28
- user
29
- end
30
-
31
- before do
32
- controller.should_receive(:require_refinery_users!).and_return false
33
- controller.should_receive(:authenticate_refinery_user!).and_return true
34
- controller.should_receive(:restrict_plugins).and_return true
35
- controller.should_receive(:allow_controller?).and_return controller_permission
36
- controller.stub(:refinery_user?).and_return true
37
- controller.stub(:current_refinery_user).and_return logged_in_user
38
- end
39
- end
40
-
41
- def factory_user(factory)
42
- let(:logged_in_user) { FactoryGirl.create factory }
43
- before do
44
- @request.env["devise.mapping"] = Devise.mappings[:admin]
45
- sign_in logged_in_user
46
- end
12
+ Refinery.deprecate('refinery_login_with_factory', when: '3.1', replacement: 'refinery_login')
13
+ refinery_login
47
14
  end
48
15
 
49
- def login_user
50
- Refinery.deprecate :login_user, :when => '2.2', :replacement => 'refinery_login_with :user'
51
- refinery_login_with :user
16
+ def refinery_login
17
+ let(:logged_in_user) { Refinery::Core::NilUser.new }
52
18
  end
53
19
 
54
- def login_refinery_user
55
- Refinery.deprecate :login_refinery_user, :when => '2.2', :replacement => 'refinery_login_with :refinery_user'
56
- refinery_login_with :refinery_user
57
- end
58
-
59
- def login_refinery_superuser
60
- Refinery.deprecate :login_refinery_superuser, :when => '2.2', :replacement => 'refinery_login_with :refinery_superuser'
61
- refinery_login_with :refinery_superuser
62
- end
63
-
64
- def login_refinery_translator
65
- Refinery.deprecate :login_refinery_translator, :when => '2.2', :replacement => 'refinery_login_with :refinery_translator'
66
- refinery_login_with :refinery_translator
67
- end
68
-
69
- private
70
- def handle_deprecated_roles!(*roles)
71
- mappings = {
72
- :user => [],
73
- :refinery_user => [:refinery],
74
- :refinery_superuser => [:refinery, :superuser],
75
- :refinery_translator => [:refinery, :translator]
76
- }
77
- mappings[roles.first] || roles
78
- end
79
20
  end
80
21
  end
81
22
  end
@@ -0,0 +1,12 @@
1
+ module Refinery
2
+ module Testing
3
+ module ControllerMacros
4
+ module Routes
5
+ extend ActiveSupport::Concern
6
+ included do
7
+ routes { ::Refinery::Core::Engine.routes }
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
@@ -2,28 +2,16 @@ module Refinery
2
2
  module Testing
3
3
  module FeatureMacros
4
4
  module Authentication
5
- def refinery_login_with(factory)
6
- let!(:logged_in_user) { FactoryGirl.create(factory) }
7
-
8
- before do
9
- login_as logged_in_user, :scope => :refinery_user
10
- end
11
- end
12
5
 
13
- def login_refinery_user
14
- Refinery.deprecate(:login_refinery_user, :when => '2.2', :replacement => 'refinery_login_with :refinery_user')
15
- refinery_login_with(:refinery_user)
6
+ def refinery_login
7
+ # NO-OP, Overwrite this in an extension.
16
8
  end
17
9
 
18
- def login_refinery_superuser
19
- Refinery.deprecate(:login_refinery_superuser, :when => '2.2', :replacement => 'refinery_login_with :refinery_superuser')
20
- refinery_login_with(:refinery_superuser)
10
+ def refinery_login_with(factory)
11
+ Refinery.deprecate('refinery_login_with', when: '3.1', replacement: 'refinery_login')
12
+ refinery_login
21
13
  end
22
14
 
23
- def login_refinery_translator
24
- Refinery.deprecate(:login_refinery_translator, :when => '2.2', :replacement => 'refinery_login_with :refinery_translator')
25
- refinery_login_with(:refinery_translator)
26
- end
27
15
  end
28
16
  end
29
17
  end
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
9
9
  s.version = version
10
10
  s.summary = %q{Testing plugin for Refinery CMS}
11
11
  s.description = %q{This plugin adds the ability to tests against the Refinery CMS gem while inside a Refinery CMS extension}
12
- s.email = %q{info@refinerycms.com}
12
+ s.email = %q{refinerycms@p.arndt.io}
13
13
  s.homepage = %q{http://refinerycms.com}
14
14
  s.rubyforge_project = %q{refinerycms}
15
15
  s.authors = ['Philip Arndt', 'Uģis Ozols', 'Rob Yurkowski']
@@ -19,10 +19,10 @@ Gem::Specification.new do |s|
19
19
  s.files = `git ls-files`.split("\n")
20
20
 
21
21
  s.add_dependency 'refinerycms-core', version
22
- s.add_dependency 'database_cleaner', '~> 1.2.0'
23
- s.add_dependency 'factory_girl_rails', '~> 4.2.1'
24
- s.add_dependency 'rspec-rails', '~> 2.13'
25
- s.add_dependency 'capybara', '~> 2.1.0'
26
- s.add_dependency 'selenium-webdriver', '~> 2.38.0'
27
- s.add_dependency 'mime-types', '~> 1.16'
22
+ s.add_dependency 'database_cleaner', '~> 1.3.0'
23
+ s.add_dependency 'factory_girl_rails', '~> 4.4.1'
24
+ s.add_dependency 'rspec-rails', '~> 3.0'
25
+ s.add_dependency 'capybara', '~> 2.4.3'
26
+
27
+ s.required_ruby_version = Refinery::Version.required_ruby_version
28
28
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: refinerycms-testing
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.5
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philip Arndt
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2014-11-07 00:00:00.000000000 Z
13
+ date: 2015-09-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: refinerycms-core
@@ -18,101 +18,73 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 2.1.5
21
+ version: 3.0.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 2.1.5
28
+ version: 3.0.0
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: database_cleaner
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: 1.2.0
35
+ version: 1.3.0
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: 1.2.0
42
+ version: 1.3.0
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: factory_girl_rails
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: 4.2.1
49
+ version: 4.4.1
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
54
  - - "~>"
55
55
  - !ruby/object:Gem::Version
56
- version: 4.2.1
56
+ version: 4.4.1
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: rspec-rails
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - "~>"
62
62
  - !ruby/object:Gem::Version
63
- version: '2.13'
63
+ version: '3.0'
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - "~>"
69
69
  - !ruby/object:Gem::Version
70
- version: '2.13'
70
+ version: '3.0'
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: capybara
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - "~>"
76
76
  - !ruby/object:Gem::Version
77
- version: 2.1.0
77
+ version: 2.4.3
78
78
  type: :runtime
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - "~>"
83
83
  - !ruby/object:Gem::Version
84
- version: 2.1.0
85
- - !ruby/object:Gem::Dependency
86
- name: selenium-webdriver
87
- requirement: !ruby/object:Gem::Requirement
88
- requirements:
89
- - - "~>"
90
- - !ruby/object:Gem::Version
91
- version: 2.38.0
92
- type: :runtime
93
- prerelease: false
94
- version_requirements: !ruby/object:Gem::Requirement
95
- requirements:
96
- - - "~>"
97
- - !ruby/object:Gem::Version
98
- version: 2.38.0
99
- - !ruby/object:Gem::Dependency
100
- name: mime-types
101
- requirement: !ruby/object:Gem::Requirement
102
- requirements:
103
- - - "~>"
104
- - !ruby/object:Gem::Version
105
- version: '1.16'
106
- type: :runtime
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- requirements:
110
- - - "~>"
111
- - !ruby/object:Gem::Version
112
- version: '1.16'
84
+ version: 2.4.3
113
85
  description: This plugin adds the ability to tests against the Refinery CMS gem while
114
86
  inside a Refinery CMS extension
115
- email: info@refinerycms.com
87
+ email: refinerycms@p.arndt.io
116
88
  executables: []
117
89
  extensions: []
118
90
  extra_rdoc_files: []
@@ -125,7 +97,7 @@ files:
125
97
  - lib/refinery/testing.rb
126
98
  - lib/refinery/testing/controller_macros.rb
127
99
  - lib/refinery/testing/controller_macros/authentication.rb
128
- - lib/refinery/testing/controller_macros/methods.rb
100
+ - lib/refinery/testing/controller_macros/routes.rb
129
101
  - lib/refinery/testing/feature_macros.rb
130
102
  - lib/refinery/testing/feature_macros/authentication.rb
131
103
  - lib/refinery/testing/railtie.rb
@@ -143,7 +115,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
143
115
  requirements:
144
116
  - - ">="
145
117
  - !ruby/object:Gem::Version
146
- version: '0'
118
+ version: 2.0.0
147
119
  required_rubygems_version: !ruby/object:Gem::Requirement
148
120
  requirements:
149
121
  - - ">="
@@ -151,7 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
123
  version: '0'
152
124
  requirements: []
153
125
  rubyforge_project: refinerycms
154
- rubygems_version: 2.2.2
126
+ rubygems_version: 2.4.5.1
155
127
  signing_key:
156
128
  specification_version: 4
157
129
  summary: Testing plugin for Refinery CMS
@@ -1,33 +0,0 @@
1
- module Refinery
2
- module Testing
3
- module ControllerMacros
4
- module Methods
5
- def get(action, parameters = nil, session = nil, flash = nil)
6
- process_refinery_action(action, parameters, session, flash, "GET")
7
- end
8
-
9
- # Executes a request simulating POST HTTP method and set/volley the response
10
- def post(action, parameters = nil, session = nil, flash = nil)
11
- process_refinery_action(action, parameters, session, flash, "POST")
12
- end
13
-
14
- # Executes a request simulating PUT HTTP method and set/volley the response
15
- def put(action, parameters = nil, session = nil, flash = nil)
16
- process_refinery_action(action, parameters, session, flash, "PUT")
17
- end
18
-
19
- # Executes a request simulating DELETE HTTP method and set/volley the response
20
- def delete(action, parameters = nil, session = nil, flash = nil)
21
- process_refinery_action(action, parameters, session, flash, "DELETE")
22
- end
23
-
24
- private
25
-
26
- def process_refinery_action(action, parameters = nil, session = nil, flash = nil, method = "GET")
27
- parameters ||= {}
28
- process(action, parameters.merge!(:use_route => :refinery), session, flash, method)
29
- end
30
- end
31
- end
32
- end
33
- end