releaf-permissions 1.1.17 → 1.1.22

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
- SHA1:
3
- metadata.gz: f4ed9c0f73c31f9c529d5df4a489a66724636bd5
4
- data.tar.gz: 8935fce523b14ec0947b4405056d467a3637654b
2
+ SHA256:
3
+ metadata.gz: 7c1fdc8dacbee088c626ad1381d154be578c775e04ad2ebb127ab0b0b7476c78
4
+ data.tar.gz: d65881e547bb92fa044edf5d3f9a65eefac71e3d7a9f94cc6158fef35b9e28df
5
5
  SHA512:
6
- metadata.gz: c6bdf762213887060256a8f8f7746d1099041f3dc6b59401c3b7abfbceca935d657fd873ce0cabeacac05c7387cd4c3a7e032c347185a289cf725f96d85e1a3a
7
- data.tar.gz: 9e60733a37c276ffb806556fe404e2772c9baee46440c1b5fc0f645bc695c9d6421edd26414d8a44f1aac14b20409adb69cc752832ecfd64d5dfe0b69c4f2b14
6
+ metadata.gz: f6ea692ad768d65e33186ca35012837b1f5f2a91f0fb36ed28aecd0608fa4aeece57c7bf1b2fd30bf7ff5154d95664012735de6d545fed5b87469e88a5eaaa79
7
+ data.tar.gz: 37b267041c3b4d3bb27a34f0c400a391347f6d973bb2370aff95a3f475c082fe192aeee8761642f801eb73527905f57f194d34c125a9fb5a577b56c114421664
@@ -13,6 +13,10 @@ class Releaf::Permissions::Page::MenuBuilder < Releaf::Builders::Page::MenuBuild
13
13
  end
14
14
 
15
15
  def controller_permitted?(controller_name)
16
- Releaf.application.config.permissions.access_control.new(user: controller.user).controller_permitted?(controller_name)
16
+ access_control.controller_permitted?(controller_name)
17
+ end
18
+
19
+ def access_control
20
+ @access_control ||= Releaf.application.config.permissions.access_control.new(user: controller.user)
17
21
  end
18
22
  end
@@ -5,6 +5,7 @@ describe Releaf::Permissions::Page::MenuBuilder, type: :class do
5
5
  include FontAwesome::Rails::IconHelper
6
6
  end
7
7
 
8
+ let(:user){ Releaf::Permissions::User.new }
8
9
  let(:controller){ Releaf::ActionController.new }
9
10
  let(:template){ MenuBuilderTestHelper.new }
10
11
  let(:group_item){ Releaf::ControllerGroupDefinition.new(name: "x", items: []) }
@@ -88,13 +89,24 @@ describe Releaf::Permissions::Page::MenuBuilder, type: :class do
88
89
 
89
90
  describe "#controller_permitted?" do
90
91
  it "returns access controller controller permission query result for given controller name" do
91
- user = Releaf::Permissions::User.new
92
- allow(controller).to receive(:user).and_return("x")
93
92
  access_control = Releaf::Permissions::AccessControl.new(user: user)
94
- allow(Releaf.application.config.permissions.access_control).to receive(:new).with(user: "x").and_return(access_control)
93
+ allow(subject).to receive(:access_control).and_return(access_control)
95
94
  allow(access_control).to receive(:controller_permitted?).with("kjasdasd").and_return("_true")
96
95
 
97
96
  expect(subject.controller_permitted?("kjasdasd")).to eq("_true")
98
97
  end
99
98
  end
99
+
100
+ describe "#access_control" do
101
+ it "returns cached access control instance" do
102
+ allow(controller).to receive(:user).and_return("x")
103
+ access_control = Releaf::Permissions::AccessControl.new(user: user)
104
+
105
+ allow(Releaf.application.config.permissions.access_control).to receive(:new).with(user: "x").and_return(access_control)
106
+ expect(subject.access_control).to eq access_control
107
+
108
+ expect(Releaf.application.config.permissions.access_control).to_not receive(:new)
109
+ expect(subject.access_control).to eq access_control
110
+ end
111
+ end
100
112
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: releaf-permissions
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.17
4
+ version: 1.1.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - CubeSystems
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-15 00:00:00.000000000 Z
11
+ date: 2020-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: releaf-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.1.17
19
+ version: 1.1.22
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.1.17
26
+ version: 1.1.22
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: devise
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -116,8 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  requirements: []
119
- rubyforge_project:
120
- rubygems_version: 2.6.14
119
+ rubygems_version: 3.0.4
121
120
  signing_key:
122
121
  specification_version: 4
123
122
  summary: Built-in admin and role support for releaf