releaf-permissions 1.1.21 → 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
2
  SHA256:
3
- metadata.gz: 31b773532b5e3ae7247433bd0e7477f329360f1ff09c57858f59d114092eb35b
4
- data.tar.gz: 78363c3f0ec192729abd35034fe1fcac67e617205d555b897982f9fc8cbb101f
3
+ metadata.gz: 7c1fdc8dacbee088c626ad1381d154be578c775e04ad2ebb127ab0b0b7476c78
4
+ data.tar.gz: d65881e547bb92fa044edf5d3f9a65eefac71e3d7a9f94cc6158fef35b9e28df
5
5
  SHA512:
6
- metadata.gz: d5cd08cc55f6aaf89326b44a8ac432731e4fc21f928935c6b2ca4c7a80d8b6a665cfdd81ef7975042f6c4cef8bd20b8587dd190ddc75c59d1aeb5d8ae49c34c9
7
- data.tar.gz: b3fec1e0079b2d7e751753f62ab2c7abbee58fda418ac3fc88f4ced1364d41e576aaeaaf4a2d2c98757835c90ca206a02de8657fadaf8a00f3d76099f9c83bb2
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.21
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: 2019-03-29 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.21
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.21
26
+ version: 1.1.22
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: devise
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -116,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  requirements: []
119
- rubygems_version: 3.0.2
119
+ rubygems_version: 3.0.4
120
120
  signing_key:
121
121
  specification_version: 4
122
122
  summary: Built-in admin and role support for releaf