rspec_rails_scaffold_templates 1.1.1 → 1.2.0
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ab917e3778d83572e0494b9c38c73c39a3ccae3
|
4
|
+
data.tar.gz: ff92ff555c659a2002f45431946734b9536f1704
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6de2ecd958d26af84a1bb9c521c5034a6429b8d73cf93788039cb6504dd06ab789f2884978dba14705c9a42c1f933f5003c800d6700ef25f1c0000c9a3457801
|
7
|
+
data.tar.gz: dc09e7fc53508e40148dbf6d25afb3d501dff9080634c28435c619cb2dfe527c8b3950ecb8ef240cf1f6fbd4bdffa3c0c3fc8db981b416386ccdd916e35c993c
|
data/README.rdoc
CHANGED
@@ -21,6 +21,52 @@ Next time you run
|
|
21
21
|
|
22
22
|
you will get the needed specs for controller and views.
|
23
23
|
|
24
|
+
=== Configuring
|
25
|
+
|
26
|
+
You have to add to the <tt>application.rb</tt> file the config for generators as follows
|
27
|
+
config.generators do |g|
|
28
|
+
g.cancan true
|
29
|
+
end
|
30
|
+
in order to have it the generated specs the code that works around the code
|
31
|
+
that checks ability.
|
32
|
+
|
33
|
+
For the specs on view it will be
|
34
|
+
before(:each) do
|
35
|
+
allow(controller).to receive(:can?).and_return(true)
|
36
|
+
end
|
37
|
+
while in the controller and request spec it will be
|
38
|
+
before :each do
|
39
|
+
allow(controller).to receive(:current_user).and_return(current_user)
|
40
|
+
end
|
41
|
+
So, you need to add a method <tt>current_user</tt> to your rspec support, say, like this
|
42
|
+
def current_user(stubs = {})
|
43
|
+
@mock_current_user ||= mock_model(User, name: 'Mock Current User').tap do |user|
|
44
|
+
stubs.reverse_merge! is?: true, landing: nil
|
45
|
+
stubs.each do |k, v|
|
46
|
+
allow(user).to receive(k) {v}
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
You may want to stub <tt>current_ability</tt> instead of <tt>current_user</tt> in
|
52
|
+
controller. For doing this replace <tt>true</tt> with <tt>:current_ability</tt>
|
53
|
+
in <tt>g.cancan</tt> config like this
|
54
|
+
config.generators do |g|
|
55
|
+
g.cancan :current_ability
|
56
|
+
end
|
57
|
+
Of course, you will need method <tt>current_ability</tt> in you spec support in this case, say, like this
|
58
|
+
class GodAbility
|
59
|
+
include CanCan::Ability
|
60
|
+
|
61
|
+
def initialize
|
62
|
+
can :manage, :all
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
def current_ability
|
67
|
+
GodAbility.new
|
68
|
+
end
|
69
|
+
|
24
70
|
== Contributing to rspec_rails_scaffold_templates
|
25
71
|
|
26
72
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.2.0
|
@@ -5,9 +5,10 @@ require 'spec_helper'
|
|
5
5
|
<% end -%>
|
6
6
|
|
7
7
|
describe "<%= class_name.pluralize %>", type: :request do
|
8
|
-
<% if Rails.application.config.generators.options[:rails][:cancan] -%>
|
8
|
+
<% if method = Rails.application.config.generators.options[:rails][:cancan] -%>
|
9
|
+
<% method = 'current_user' unless Symbol === method -%>
|
9
10
|
before :each do
|
10
|
-
allow_any_instance_of(<%= class_name.pluralize %>Controller).to receive(
|
11
|
+
allow_any_instance_of(<%= class_name.pluralize %>Controller).to receive(:<%=method%>).and_return(<%=method%>)
|
11
12
|
end
|
12
13
|
|
13
14
|
<% end -%>
|
@@ -7,9 +7,10 @@ require 'spec_helper'
|
|
7
7
|
<% module_namespacing do -%>
|
8
8
|
describe <%= controller_class_name %>Controller, type: :controller do
|
9
9
|
|
10
|
-
<% if Rails.application.config.generators.options[:rails][:cancan] -%>
|
10
|
+
<% if method = Rails.application.config.generators.options[:rails][:cancan] -%>
|
11
|
+
<% method = 'current_user' unless Symbol === method -%>
|
11
12
|
before :each do
|
12
|
-
allow(controller).to receive(
|
13
|
+
allow(controller).to receive(:<%=method%>).and_return(<%=method%>)
|
13
14
|
end
|
14
15
|
|
15
16
|
<% end -%>
|
@@ -2,16 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: rspec_rails_scaffold_templates 1.
|
5
|
+
# stub: rspec_rails_scaffold_templates 1.2.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "rspec_rails_scaffold_templates"
|
9
|
-
s.version = "1.
|
9
|
+
s.version = "1.2.0"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["lib"]
|
13
13
|
s.authors = ["Dmitri Koulikoff"]
|
14
|
-
s.date = "
|
14
|
+
s.date = "2016-03-02"
|
15
15
|
s.description = "RSpec scaffold generator templates that use FactoryGirl and WiceGrid"
|
16
16
|
s.email = "dima@koulikoff.ru"
|
17
17
|
s.extra_rdoc_files = [
|
@@ -39,7 +39,7 @@ Gem::Specification.new do |s|
|
|
39
39
|
]
|
40
40
|
s.homepage = "http://github.com/dima4p/rspec_rails_scaffold_templates"
|
41
41
|
s.licenses = ["MIT"]
|
42
|
-
s.rubygems_version = "2.
|
42
|
+
s.rubygems_version = "2.5.1"
|
43
43
|
s.summary = "RSpec scaffold generator templates that use FactoryGirl and WiceGrid"
|
44
44
|
|
45
45
|
if s.respond_to? :specification_version then
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec_rails_scaffold_templates
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dmitri Koulikoff
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -125,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
125
125
|
version: '0'
|
126
126
|
requirements: []
|
127
127
|
rubyforge_project:
|
128
|
-
rubygems_version: 2.
|
128
|
+
rubygems_version: 2.5.1
|
129
129
|
signing_key:
|
130
130
|
specification_version: 4
|
131
131
|
summary: RSpec scaffold generator templates that use FactoryGirl and WiceGrid
|