releaf-permissions 1.1.21 → 1.1.22

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
  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