forest_liana 6.2.2 → 6.3.3

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: ef9f6868496eb0c7e53ccd20fc0ee0853693a9954d56254dffe3e428be975570
4
- data.tar.gz: 3b929c3692e18e69d8ce423d93f3ca223dc72a482290ab37342adc649a730dfb
3
+ metadata.gz: 84424699c2834facc9807360cdefbc7de4bf5e473d5d8976fc257c70a5878695
4
+ data.tar.gz: f96a6c6e6ba27fcd42a67ffacd1ddde1133b9980eec177c969494484d2708072
5
5
  SHA512:
6
- metadata.gz: ebbcc8eb29e6b4dd9e9e95c1dd85b9ccd7c8ddaa73e297abe9ed36994a139becd595f55db56a909b07c9da1c2829fea68404d85f90a99b0f8eb91a460abd377e
7
- data.tar.gz: 44d9e27b058eb2c3127c9efb5670100f032cda8f606a8a3b96a9ca7fc28d2a6b4ac7b97ca70e3514e5d32521ceb6aaa70c5c57aaf12f0d7e00aa179087e18bf7
6
+ metadata.gz: 8f509cc0cfed575e60c0b68e11cd44a6bb59c86dfd7bd5e40d14f87f9e2400b4ed7fccafc107e2eea1dbe474f564f9a48d76d84331ca5c9727adae7439176dda
7
+ data.tar.gz: ffdba30b4b5252116c020b42fde6d439baf910d5bcd572c73d5e6bd6c48a6fd39c9803df2300ad0617e61beb4e33bd0edd5c8286eae0a51e348226d187e04be5
@@ -5,7 +5,7 @@ module ForestLiana
5
5
  class AuthenticationController < ForestLiana::BaseController
6
6
  START_AUTHENTICATION_ROUTE = 'authentication'
7
7
  CALLBACK_AUTHENTICATION_ROUTE = 'authentication/callback'
8
- LOGOUT_ROUTE = 'authentication/logout';
8
+ LOGOUT_ROUTE = 'authentication/logout'
9
9
  PUBLIC_ROUTES = [
10
10
  "/#{START_AUTHENTICATION_ROUTE}",
11
11
  "/#{CALLBACK_AUTHENTICATION_ROUTE}",
@@ -48,6 +48,7 @@ class ForestLiana::Model::Action
48
48
  field[:default_value] = nil unless field.key?(:default_value)
49
49
  field[:enums] = nil unless field.key?(:enums)
50
50
  field[:is_required] = false unless field.key?(:is_required)
51
+ field[:is_read_only] = false unless field.key?(:is_read_only)
51
52
  field[:reference] = nil unless field.key?(:reference)
52
53
  field[:description] = nil unless field.key?(:description)
53
54
  field[:widget] = nil unless field.key?(:widget)
@@ -47,6 +47,7 @@ module ForestLiana
47
47
  'default_value',
48
48
  'enums',
49
49
  'is_required',
50
+ 'is_read_only',
50
51
  'reference',
51
52
  'description',
52
53
  'position',
@@ -4,22 +4,20 @@ module ForestLiana
4
4
  class OidcClientManager
5
5
  def self.get_client_for_callback_url(callback_url)
6
6
  begin
7
- client_data = Rails.cache.read(callback_url) || nil
8
- if client_data.nil?
9
- configuration = ForestLiana::OidcConfigurationRetriever.retrieve()
10
-
11
- if ForestLiana.forest_client_id.nil?
7
+ configuration = ForestLiana::OidcConfigurationRetriever.retrieve()
8
+ if ForestLiana.forest_client_id.nil?
9
+ client_data = Rails.cache.read("#{callback_url}-#{ForestLiana.env_secret}-client-data") || nil
10
+ if client_data.nil?
12
11
  client_credentials = ForestLiana::OidcDynamicClientRegistrator.register({
13
12
  token_endpoint_auth_method: 'none',
14
13
  redirect_uris: [callback_url],
15
14
  registration_endpoint: configuration['registration_endpoint']
16
15
  })
17
- else
18
- client_credentials = { 'client_id' => ForestLiana.forest_client_id }
16
+ client_data = { :client_id => client_credentials['client_id'], :issuer => configuration['issuer'] }
17
+ Rails.cache.write("#{callback_url}-#{ForestLiana.env_secret}-client-data", client_data)
19
18
  end
20
-
21
- client_data = { :client_id => client_credentials['client_id'], :issuer => configuration['issuer'] }
22
- Rails.cache.write(callback_url, client_data)
19
+ else
20
+ client_data = { :client_id => ForestLiana.forest_client_id, :issuer => configuration['issuer'] }
23
21
  end
24
22
 
25
23
  OpenIDConnect::Client.new(
@@ -30,7 +28,7 @@ module ForestLiana
30
28
  token_endpoint: '/oidc/token',
31
29
  )
32
30
  rescue => error
33
- Rails.cache.delete(callback_url)
31
+ Rails.cache.delete("#{callback_url}-#{ForestLiana.env_secret}-client-data")
34
32
  raise error
35
33
  end
36
34
  end
@@ -73,30 +73,34 @@ module ForestLiana
73
73
  def get_date_filter(operator, value)
74
74
  return nil unless is_date_operator? operator
75
75
 
76
- case operator
77
- when OPERATOR_FUTURE
78
- return ">= '#{Time.now}'"
79
- when OPERATOR_PAST
80
- return "<= '#{Time.now}'"
81
- when OPERATOR_TODAY
82
- return "BETWEEN '#{to_client_timezone(Time.now.beginning_of_day)}' " +
83
- "AND '#{to_client_timezone(Time.now.end_of_day)}'"
84
- when OPERATOR_PREVIOUS_X_DAYS
85
- ensure_integer_value(value)
86
- return "BETWEEN '" +
87
- "#{to_client_timezone(Integer(value).day.ago.beginning_of_day)}'" +
88
- " AND '#{to_client_timezone(1.day.ago.end_of_day)}'"
89
- when OPERATOR_PREVIOUS_X_DAYS_TO_DATE
90
- ensure_integer_value(value)
91
- return "BETWEEN '" +
92
- "#{to_client_timezone((Integer(value) - 1).day.ago.beginning_of_day)}'" +
93
- " AND '#{Time.now}'"
94
- when OPERATOR_BEFORE_X_HOURS_AGO
95
- ensure_integer_value(value)
96
- return "< '#{to_client_timezone((Integer(value)).hour.ago)}'"
97
- when OPERATOR_AFTER_X_HOURS_AGO
98
- ensure_integer_value(value)
99
- return "> '#{to_client_timezone((Integer(value)).hour.ago)}'"
76
+ filter = case operator
77
+ when OPERATOR_FUTURE
78
+ ">= '#{Time.now}'"
79
+ when OPERATOR_PAST
80
+ "<= '#{Time.now}'"
81
+ when OPERATOR_TODAY
82
+ "BETWEEN '#{to_client_timezone(Time.now.beginning_of_day)}' " +
83
+ "AND '#{to_client_timezone(Time.now.end_of_day)}'"
84
+ when OPERATOR_PREVIOUS_X_DAYS
85
+ ensure_integer_value(value)
86
+ "BETWEEN '" +
87
+ "#{to_client_timezone(Integer(value).day.ago.beginning_of_day)}'" +
88
+ " AND '#{to_client_timezone(1.day.ago.end_of_day)}'"
89
+ when OPERATOR_PREVIOUS_X_DAYS_TO_DATE
90
+ ensure_integer_value(value)
91
+ "BETWEEN '" +
92
+ "#{to_client_timezone((Integer(value) - 1).day.ago.beginning_of_day)}'" +
93
+ " AND '#{Time.now}'"
94
+ when OPERATOR_BEFORE_X_HOURS_AGO
95
+ ensure_integer_value(value)
96
+ "< '#{(Integer(value)).hour.ago}'"
97
+ when OPERATOR_AFTER_X_HOURS_AGO
98
+ ensure_integer_value(value)
99
+ "> '#{(Integer(value)).hour.ago}'"
100
+ end
101
+
102
+ if filter != nil
103
+ return filter
100
104
  end
101
105
 
102
106
  duration = PERIODS[operator][:duration]
@@ -53,6 +53,18 @@ module ForestLiana
53
53
  collection.actions.find {|action| action.name == action_name}
54
54
  end
55
55
 
56
+ def generate_action_hooks()
57
+ @collections_sent.each do |collection|
58
+ collection['actions'].each do |action|
59
+ c = get_collection(collection['name'])
60
+ a = get_action(c, action['name'])
61
+ load = !a.hooks.nil? && a.hooks.key?(:load) && a.hooks[:load].is_a?(Proc)
62
+ change = !a.hooks.nil? && a.hooks.key?(:change) && a.hooks[:change].is_a?(Hash) ? a.hooks[:change].keys : []
63
+ action['hooks'] = {:load => load, :change => change}
64
+ end
65
+ end
66
+ end
67
+
56
68
  def generate_apimap
57
69
  create_apimap
58
70
  require_lib_forest_liana
@@ -60,18 +72,8 @@ module ForestLiana
60
72
 
61
73
  if Rails.env.development?
62
74
  @collections_sent = ForestLiana.apimap.as_json
63
-
64
- @collections_sent.each do |collection|
65
- collection['actions'].each do |action|
66
- c = get_collection(collection['name'])
67
- a = get_action(c, action['name'])
68
- load = !a.hooks.nil? && a.hooks.key?(:load) && a.hooks[:load].is_a?(Proc)
69
- change = !a.hooks.nil? && a.hooks.key?(:change) && a.hooks[:change].is_a?(Hash) ? a.hooks[:change].keys : []
70
- action['hooks'] = {:load => load, :change => change}
71
- end
72
- end
73
-
74
75
  @meta_sent = ForestLiana.meta
76
+ generate_action_hooks
75
77
  SchemaFileUpdater.new(SCHEMA_FILENAME, @collections_sent, @meta_sent).perform()
76
78
  else
77
79
  if File.exists?(SCHEMA_FILENAME)
@@ -79,6 +81,7 @@ module ForestLiana
79
81
  content = JSON.parse(File.read(SCHEMA_FILENAME))
80
82
  @collections_sent = content['collections']
81
83
  @meta_sent = content['meta']
84
+ generate_action_hooks
82
85
  rescue JSON::JSONError
83
86
  FOREST_LOGGER.error "The content of .forestadmin-schema.json file is not a correct JSON."
84
87
  FOREST_LOGGER.error "The schema cannot be synchronized with Forest Admin servers."
@@ -58,6 +58,7 @@ module ForestLiana
58
58
  'default_value',
59
59
  'enums',
60
60
  'is_required',
61
+ 'is_read_only',
61
62
  'reference',
62
63
  'description',
63
64
  'position',
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "6.2.2"
2
+ VERSION = "6.3.3"
3
3
  end
@@ -26,6 +26,7 @@ describe 'Requesting Actions routes', :type => :request do
26
26
  default_value: nil,
27
27
  enums: nil,
28
28
  is_required: false,
29
+ is_read_only: false,
29
30
  reference: nil,
30
31
  description: nil,
31
32
  widget: nil,
@@ -0,0 +1,16 @@
1
+ module ForestLiana
2
+ class OperatorDateIntervalParserTest < ActiveSupport::TestCase
3
+ test 'OPERATOR_AFTER_X_HOURS_AGO and OPERATOR_BEFORE_X_HOURS_AGO should not take timezone into account' do
4
+ # Setting a big timezone (GMT+10) on purpose, the timezone should not be applied on the result date
5
+ operatorDateIntervalParser = OperatorDateIntervalParser.new('Australia/Sydney')
6
+
7
+ result = operatorDateIntervalParser.get_date_filter(OperatorDateIntervalParser::OPERATOR_AFTER_X_HOURS_AGO, 2)
8
+ hourComputed = result.split('> ')[1].tr('\'', '').to_datetime.hour
9
+ assert hourComputed == Time.now.utc.hour - 2
10
+
11
+ result = operatorDateIntervalParser.get_date_filter(OperatorDateIntervalParser::OPERATOR_BEFORE_X_HOURS_AGO, 2)
12
+ hourComputed = result.split('< ')[1].tr('\'', '').to_datetime.hour
13
+ assert hourComputed == Time.now.utc.hour - 2
14
+ end
15
+ end
16
+ end
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: 6.2.2
4
+ version: 6.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Munda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-06 00:00:00.000000000 Z
11
+ date: 2021-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -467,6 +467,7 @@ files:
467
467
  - test/forest_liana_test.rb
468
468
  - test/routing/route_test.rb
469
469
  - test/services/forest_liana/has_many_getter_test.rb
470
+ - test/services/forest_liana/operator_date_interval_parser_test.rb
470
471
  - test/services/forest_liana/pie_stat_getter_test.rb
471
472
  - test/services/forest_liana/resource_updater_test.rb
472
473
  - test/services/forest_liana/schema_adapter_test.rb
@@ -497,160 +498,161 @@ signing_key:
497
498
  specification_version: 4
498
499
  summary: Official Rails Liana for Forest
499
500
  test_files:
500
- - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
501
- - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
502
- - test/dummy/db/migrate/20160627172810_create_owner.rb
503
- - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
504
- - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
505
- - test/dummy/db/migrate/20150814081918_create_has_many_through_field.rb
506
- - test/dummy/db/migrate/20160627172951_create_tree.rb
507
- - test/dummy/db/migrate/20150608131610_create_float_field.rb
508
- - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
509
- - test/dummy/db/migrate/20150608131430_create_integer_field.rb
510
- - test/dummy/db/migrate/20181111162121_create_references_table.rb
511
- - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
512
- - test/dummy/db/migrate/20150608132621_create_string_field.rb
513
- - test/dummy/db/migrate/20170614141921_create_serialize_field.rb
514
- - test/dummy/db/migrate/20150608130516_create_date_field.rb
515
- - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
516
- - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
517
- - test/dummy/db/migrate/20160628173505_add_timestamps.rb
518
- - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
519
- - test/dummy/db/schema.rb
520
- - test/dummy/public/404.html
501
+ - test/routing/route_test.rb
502
+ - test/fixtures/tree.yml
503
+ - test/fixtures/has_many_field.yml
504
+ - test/fixtures/serialize_field.yml
505
+ - test/fixtures/owner.yml
506
+ - test/fixtures/reference.yml
507
+ - test/fixtures/string_field.yml
508
+ - test/fixtures/belongs_to_field.yml
509
+ - test/fixtures/has_many_through_field.yml
510
+ - test/fixtures/has_one_field.yml
511
+ - test/test_helper.rb
512
+ - test/services/forest_liana/scope_validator_test.rb
513
+ - test/services/forest_liana/operator_date_interval_parser_test.rb
514
+ - test/services/forest_liana/has_many_getter_test.rb
515
+ - test/services/forest_liana/schema_adapter_test.rb
516
+ - test/services/forest_liana/pie_stat_getter_test.rb
517
+ - test/services/forest_liana/value_stat_getter_test.rb
518
+ - test/services/forest_liana/resource_updater_test.rb
519
+ - test/forest_liana_test.rb
520
+ - test/dummy/bin/bundle
521
+ - test/dummy/bin/setup
522
+ - test/dummy/bin/rake
523
+ - test/dummy/bin/rails
524
+ - test/dummy/config.ru
521
525
  - test/dummy/public/500.html
526
+ - test/dummy/public/404.html
522
527
  - test/dummy/public/422.html
523
528
  - test/dummy/public/favicon.ico
524
- - test/dummy/Rakefile
525
- - test/dummy/app/controllers/application_controller.rb
529
+ - test/dummy/app/assets/stylesheets/application.css
530
+ - test/dummy/app/assets/config/manifest.js
531
+ - test/dummy/app/assets/javascripts/application.js
532
+ - test/dummy/app/helpers/application_helper.rb
533
+ - test/dummy/app/views/layouts/application.html.erb
526
534
  - test/dummy/app/models/has_and_belongs_to_many_field.rb
527
- - test/dummy/app/models/polymorphic_field.rb
528
- - test/dummy/app/models/has_many_field.rb
529
- - test/dummy/app/models/float_field.rb
530
- - test/dummy/app/models/string_field.rb
531
- - test/dummy/app/models/has_one_field.rb
532
- - test/dummy/app/models/reference.rb
533
- - test/dummy/app/models/serialize_field.rb
535
+ - test/dummy/app/models/decimal_field.rb
536
+ - test/dummy/app/models/owner.rb
534
537
  - test/dummy/app/models/boolean_field.rb
538
+ - test/dummy/app/models/has_one_field.rb
539
+ - test/dummy/app/models/has_many_class_name_field.rb
535
540
  - test/dummy/app/models/has_many_through_field.rb
536
- - test/dummy/app/models/belongs_to_class_name_field.rb
537
- - test/dummy/app/models/decimal_field.rb
541
+ - test/dummy/app/models/has_many_field.rb
542
+ - test/dummy/app/models/belongs_to_field.rb
538
543
  - test/dummy/app/models/integer_field.rb
544
+ - test/dummy/app/models/belongs_to_class_name_field.rb
545
+ - test/dummy/app/models/polymorphic_field.rb
546
+ - test/dummy/app/models/serialize_field.rb
539
547
  - test/dummy/app/models/tree.rb
548
+ - test/dummy/app/models/float_field.rb
549
+ - test/dummy/app/models/reference.rb
540
550
  - test/dummy/app/models/date_field.rb
541
- - test/dummy/app/models/belongs_to_field.rb
542
- - test/dummy/app/models/has_many_class_name_field.rb
543
- - test/dummy/app/models/owner.rb
544
- - test/dummy/app/assets/stylesheets/application.css
545
- - test/dummy/app/assets/javascripts/application.js
546
- - test/dummy/app/assets/config/manifest.js
547
- - test/dummy/app/helpers/application_helper.rb
548
- - test/dummy/app/views/layouts/application.html.erb
551
+ - test/dummy/app/models/string_field.rb
552
+ - test/dummy/app/controllers/application_controller.rb
553
+ - test/dummy/db/schema.rb
554
+ - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
555
+ - test/dummy/db/migrate/20150608130516_create_date_field.rb
556
+ - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
557
+ - test/dummy/db/migrate/20150608132621_create_string_field.rb
558
+ - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
559
+ - test/dummy/db/migrate/20150608131430_create_integer_field.rb
560
+ - test/dummy/db/migrate/20160627172951_create_tree.rb
561
+ - test/dummy/db/migrate/20160628173505_add_timestamps.rb
562
+ - test/dummy/db/migrate/20150608131610_create_float_field.rb
563
+ - test/dummy/db/migrate/20160627172810_create_owner.rb
564
+ - test/dummy/db/migrate/20150814081918_create_has_many_through_field.rb
565
+ - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
566
+ - test/dummy/db/migrate/20170614141921_create_serialize_field.rb
567
+ - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
568
+ - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
569
+ - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
570
+ - test/dummy/db/migrate/20181111162121_create_references_table.rb
571
+ - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
572
+ - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
549
573
  - test/dummy/README.rdoc
550
- - test/dummy/config.ru
551
- - test/dummy/config/environment.rb
552
- - test/dummy/config/secrets.yml
553
- - test/dummy/config/boot.rb
554
- - test/dummy/config/database.yml
555
- - test/dummy/config/routes.rb
556
- - test/dummy/config/application.rb
574
+ - test/dummy/Rakefile
575
+ - test/dummy/config/initializers/inflections.rb
557
576
  - test/dummy/config/initializers/filter_parameter_logging.rb
577
+ - test/dummy/config/initializers/wrap_parameters.rb
558
578
  - test/dummy/config/initializers/mime_types.rb
559
- - test/dummy/config/initializers/session_store.rb
560
- - test/dummy/config/initializers/inflections.rb
561
579
  - test/dummy/config/initializers/assets.rb
562
- - test/dummy/config/initializers/wrap_parameters.rb
563
580
  - test/dummy/config/initializers/backtrace_silencers.rb
581
+ - test/dummy/config/initializers/session_store.rb
564
582
  - test/dummy/config/initializers/cookies_serializer.rb
565
- - test/dummy/config/environments/test.rb
583
+ - test/dummy/config/secrets.yml
584
+ - test/dummy/config/database.yml
585
+ - test/dummy/config/boot.rb
586
+ - test/dummy/config/locales/en.yml
587
+ - test/dummy/config/environment.rb
588
+ - test/dummy/config/application.rb
566
589
  - test/dummy/config/environments/production.rb
567
590
  - test/dummy/config/environments/development.rb
568
- - test/dummy/config/locales/en.yml
569
- - test/dummy/bin/rake
570
- - test/dummy/bin/bundle
571
- - test/dummy/bin/rails
572
- - test/dummy/bin/setup
573
- - test/test_helper.rb
574
- - test/forest_liana_test.rb
575
- - test/services/forest_liana/has_many_getter_test.rb
576
- - test/services/forest_liana/resource_updater_test.rb
577
- - test/services/forest_liana/schema_adapter_test.rb
578
- - test/services/forest_liana/scope_validator_test.rb
579
- - test/services/forest_liana/value_stat_getter_test.rb
580
- - test/services/forest_liana/pie_stat_getter_test.rb
581
- - test/fixtures/owner.yml
582
- - test/fixtures/has_many_through_field.yml
583
- - test/fixtures/reference.yml
584
- - test/fixtures/has_many_field.yml
585
- - test/fixtures/has_one_field.yml
586
- - test/fixtures/belongs_to_field.yml
587
- - test/fixtures/string_field.yml
588
- - test/fixtures/serialize_field.yml
589
- - test/fixtures/tree.yml
590
- - test/routing/route_test.rb
591
- - spec/dummy/db/migrate/20190716135241_add_type_to_user.rb
592
- - spec/dummy/db/migrate/20210326110524_create_references.rb
593
- - spec/dummy/db/migrate/20190226173051_create_isle.rb
594
- - spec/dummy/db/migrate/20190226174951_create_tree.rb
595
- - spec/dummy/db/migrate/20190716130830_add_age_to_tree.rb
596
- - spec/dummy/db/migrate/20190226172951_create_user.rb
597
- - spec/dummy/db/migrate/20210326140855_create_locations.rb
598
- - spec/dummy/db/schema.rb
599
- - spec/dummy/lib/forest_liana/collections/location.rb
600
- - spec/dummy/lib/forest_liana/collections/user.rb
601
- - spec/dummy/Rakefile
602
- - spec/dummy/app/controllers/application_controller.rb
603
- - spec/dummy/app/models/island.rb
604
- - spec/dummy/app/models/reference.rb
605
- - spec/dummy/app/models/location.rb
606
- - spec/dummy/app/models/tree.rb
607
- - spec/dummy/app/models/user.rb
591
+ - test/dummy/config/environments/test.rb
592
+ - test/dummy/config/routes.rb
593
+ - spec/spec_helper.rb
594
+ - spec/rails_helper.rb
595
+ - spec/helpers/forest_liana/is_same_data_structure_helper_spec.rb
596
+ - spec/helpers/forest_liana/schema_helper_spec.rb
597
+ - spec/helpers/forest_liana/query_helper_spec.rb
598
+ - spec/services/forest_liana/permissions_checker_acl_disabled_spec.rb
599
+ - spec/services/forest_liana/resources_getter_spec.rb
600
+ - spec/services/forest_liana/filters_parser_spec.rb
601
+ - spec/services/forest_liana/permissions_getter_spec.rb
602
+ - spec/services/forest_liana/ip_whitelist_checker_spec.rb
603
+ - spec/services/forest_liana/schema_adapter_spec.rb
604
+ - spec/services/forest_liana/permissions_formatter_spec.rb
605
+ - spec/services/forest_liana/permissions_checker_live_queries_spec.rb
606
+ - spec/services/forest_liana/apimap_sorter_spec.rb
607
+ - spec/services/forest_liana/permissions_checker_acl_enabled_spec.rb
608
+ - spec/requests/actions_controller_spec.rb
609
+ - spec/requests/stats_spec.rb
610
+ - spec/requests/authentications_spec.rb
611
+ - spec/requests/resources_spec.rb
612
+ - spec/dummy/bin/bundle
613
+ - spec/dummy/bin/setup
614
+ - spec/dummy/bin/rake
615
+ - spec/dummy/bin/rails
616
+ - spec/dummy/config.ru
608
617
  - spec/dummy/app/assets/stylesheets/application.css
609
- - spec/dummy/app/assets/javascripts/application.js
610
618
  - spec/dummy/app/assets/config/manifest.js
611
- - spec/dummy/app/config/routes.rb
619
+ - spec/dummy/app/assets/javascripts/application.js
612
620
  - spec/dummy/app/helpers/application_helper.rb
613
621
  - spec/dummy/app/views/layouts/application.html.erb
622
+ - spec/dummy/app/models/user.rb
623
+ - spec/dummy/app/models/island.rb
624
+ - spec/dummy/app/models/location.rb
625
+ - spec/dummy/app/models/tree.rb
626
+ - spec/dummy/app/models/reference.rb
627
+ - spec/dummy/app/config/routes.rb
628
+ - spec/dummy/app/controllers/application_controller.rb
629
+ - spec/dummy/db/schema.rb
630
+ - spec/dummy/db/migrate/20190226174951_create_tree.rb
631
+ - spec/dummy/db/migrate/20210326140855_create_locations.rb
632
+ - spec/dummy/db/migrate/20190716130830_add_age_to_tree.rb
633
+ - spec/dummy/db/migrate/20210326110524_create_references.rb
634
+ - spec/dummy/db/migrate/20190716135241_add_type_to_user.rb
635
+ - spec/dummy/db/migrate/20190226173051_create_isle.rb
636
+ - spec/dummy/db/migrate/20190226172951_create_user.rb
637
+ - spec/dummy/lib/forest_liana/collections/user.rb
638
+ - spec/dummy/lib/forest_liana/collections/location.rb
614
639
  - spec/dummy/README.rdoc
615
- - spec/dummy/config.ru
616
- - spec/dummy/config/environment.rb
617
- - spec/dummy/config/secrets.yml
618
- - spec/dummy/config/boot.rb
619
- - spec/dummy/config/database.yml
620
- - spec/dummy/config/routes.rb
621
- - spec/dummy/config/application.rb
640
+ - spec/dummy/Rakefile
641
+ - spec/dummy/config/initializers/inflections.rb
622
642
  - spec/dummy/config/initializers/filter_parameter_logging.rb
623
- - spec/dummy/config/initializers/forest_liana.rb
643
+ - spec/dummy/config/initializers/wrap_parameters.rb
624
644
  - spec/dummy/config/initializers/mime_types.rb
625
- - spec/dummy/config/initializers/session_store.rb
626
- - spec/dummy/config/initializers/inflections.rb
645
+ - spec/dummy/config/initializers/forest_liana.rb
627
646
  - spec/dummy/config/initializers/assets.rb
628
- - spec/dummy/config/initializers/wrap_parameters.rb
629
647
  - spec/dummy/config/initializers/backtrace_silencers.rb
648
+ - spec/dummy/config/initializers/session_store.rb
630
649
  - spec/dummy/config/initializers/cookies_serializer.rb
631
- - spec/dummy/config/environments/test.rb
650
+ - spec/dummy/config/secrets.yml
651
+ - spec/dummy/config/database.yml
652
+ - spec/dummy/config/boot.rb
653
+ - spec/dummy/config/environment.rb
654
+ - spec/dummy/config/application.rb
632
655
  - spec/dummy/config/environments/production.rb
633
656
  - spec/dummy/config/environments/development.rb
634
- - spec/dummy/bin/rake
635
- - spec/dummy/bin/bundle
636
- - spec/dummy/bin/rails
637
- - spec/dummy/bin/setup
638
- - spec/services/forest_liana/permissions_checker_acl_disabled_spec.rb
639
- - spec/services/forest_liana/resources_getter_spec.rb
640
- - spec/services/forest_liana/permissions_formatter_spec.rb
641
- - spec/services/forest_liana/permissions_checker_live_queries_spec.rb
642
- - spec/services/forest_liana/permissions_getter_spec.rb
643
- - spec/services/forest_liana/schema_adapter_spec.rb
644
- - spec/services/forest_liana/apimap_sorter_spec.rb
645
- - spec/services/forest_liana/permissions_checker_acl_enabled_spec.rb
646
- - spec/services/forest_liana/ip_whitelist_checker_spec.rb
647
- - spec/services/forest_liana/filters_parser_spec.rb
648
- - spec/rails_helper.rb
649
- - spec/requests/resources_spec.rb
650
- - spec/requests/authentications_spec.rb
651
- - spec/requests/actions_controller_spec.rb
652
- - spec/requests/stats_spec.rb
653
- - spec/helpers/forest_liana/is_same_data_structure_helper_spec.rb
654
- - spec/helpers/forest_liana/schema_helper_spec.rb
655
- - spec/helpers/forest_liana/query_helper_spec.rb
656
- - spec/spec_helper.rb
657
+ - spec/dummy/config/environments/test.rb
658
+ - spec/dummy/config/routes.rb