forest_liana 8.0.2 → 8.0.4

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: 225183ba46cac224e658cbeabebabfdd82a8c8fa26f3ddc7b1be793972ab19d1
4
- data.tar.gz: a40a8556e5eabcc4d04154f8def7c205bf3f605ff153cdf70077e248db56a9e5
3
+ metadata.gz: 6cb3c745a093695e57f53f6c1202de72a1e4ff4610674cb131f65a8981acf2de
4
+ data.tar.gz: 1e9f488b231111756184fd91b70196b5f852b74530ada7ed04528c03fee31792
5
5
  SHA512:
6
- metadata.gz: 531ba0fc904568a49903d82ef45e608d09dadcb80ba2acc298bc96d5e0684155a9b07f1ed5ed0a5d018eae1a1067dae51641e1012be416fa9e8e0431565f26e9
7
- data.tar.gz: c7c7f6ada1f04eb39a69cfd4f3aaa4e98d7263cb87d942585dc06976ba0f1f07ebfed6b5db1e943c907d731d8bd1e0cfbccced482ec716b5fc9c88c7fc80ef81
6
+ metadata.gz: 578322489d3d8dd6526e0c8104617d33c57cfbc45b5b7e37826fbdb2c303b3356376830b3ae7a007e5eaf9cdc194985de3e282e3518d41caa809e2c59fcce0d9
7
+ data.tar.gz: 9f9ac533509a02ed4a47d844b7d9b6882bcada5eab228463a1260fef0456f72118b83cf312ed7b390e4520a29ea0e31767fa8acd20c2dbbc94920c130fcd4f49
@@ -13,13 +13,14 @@ module ForestLiana
13
13
 
14
14
  user_data = get_user_data(user['id'])
15
15
  collections_data = get_collections_permissions_data
16
+ collection_name = ForestLiana.name_for(collection)
16
17
 
17
18
  begin
18
- is_allowed = collections_data[collection.name][action].include? user_data['roleId']
19
+ is_allowed = collections_data[collection_name][action].include? user_data['roleId']
19
20
  # re-fetch if user permission is not allowed (may have been changed)
20
21
  unless is_allowed
21
22
  collections_data = get_collections_permissions_data(true)
22
- is_allowed = collections_data[collection.name][action].include? user_data['roleId']
23
+ is_allowed = collections_data[collection_name][action].include? user_data['roleId']
23
24
  end
24
25
 
25
26
  is_allowed
@@ -29,6 +30,8 @@ module ForestLiana
29
30
  end
30
31
 
31
32
  def is_smart_action_authorized?(user, collection, parameters, endpoint, http_method)
33
+ return true unless has_permission_system?
34
+
32
35
  user_data = get_user_data(user['id'])
33
36
  collections_data = get_collections_permissions_data
34
37
  begin
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "8.0.2"
2
+ VERSION = "8.0.4"
3
3
  end
@@ -312,6 +312,39 @@ describe 'Requesting Actions routes', :type => :request do
312
312
  end
313
313
  end
314
314
 
315
+ describe 'calling the action on development environment' do
316
+ let(:all_records) { false }
317
+ let(:params) {
318
+ {
319
+ data: {
320
+ attributes: {
321
+ collection_name: 'Island',
322
+ ids: ['1'],
323
+ all_records: all_records,
324
+ smart_action_id: 'Island-Test'
325
+ },
326
+ type: 'custom-action-requests'
327
+ },
328
+ timezone: 'Europe/Paris'
329
+ }
330
+ }
331
+
332
+ it 'should respond 200 and perform the action' do
333
+ Rails.cache.delete('forest.has_permission')
334
+ Rails.cache.delete('forest.users')
335
+ Rails.cache.write('forest.users', {'1' => { 'id' => 1, 'roleId' => 2, 'rendering_id' => '1' }})
336
+ allow_any_instance_of(ForestLiana::Ability::Fetch)
337
+ .to receive(:get_permissions)
338
+ .with('/liana/v4/permissions/environment')
339
+ .and_return(true)
340
+
341
+ post '/forest/actions/test', params: JSON.dump(params), headers: headers
342
+
343
+ expect(response.status).to eq(200)
344
+ expect(JSON.parse(response.body)).to eq({'success' => 'You are OK.'})
345
+ end
346
+ end
347
+
315
348
  describe 'calling the action' do
316
349
  before(:each) do
317
350
  allow_any_instance_of(ForestLiana::Ability).to receive(:forest_authorize!) { true }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_liana
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.0.2
4
+ version: 8.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Munda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-22 00:00:00.000000000 Z
11
+ date: 2023-04-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails