decidim-dev 0.29.1 → 0.30.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/decidim/dev/dummy_resource.rb +2 -0
- data/app/permissions/decidim/dev/permissions.rb +22 -0
- data/app/views/decidim/dev/dummy_resources/show.html.erb +1 -1
- data/config/locales/ar.yml +4 -1
- data/config/locales/bg.yml +1 -1
- data/config/locales/bn-BD.yml +1 -0
- data/config/locales/bs-BA.yml +9 -0
- data/config/locales/ca.yml +6 -1
- data/config/locales/cs.yml +6 -1
- data/config/locales/de.yml +6 -1
- data/config/locales/el.yml +1 -1
- data/config/locales/en.yml +5 -0
- data/config/locales/es-MX.yml +6 -1
- data/config/locales/es-PY.yml +6 -1
- data/config/locales/es.yml +6 -1
- data/config/locales/eu.yml +9 -4
- data/config/locales/fi-plain.yml +6 -1
- data/config/locales/fi.yml +6 -1
- data/config/locales/fr-CA.yml +4 -1
- data/config/locales/fr.yml +4 -1
- data/config/locales/gl.yml +1 -1
- data/config/locales/hu.yml +1 -1
- data/config/locales/id-ID.yml +1 -1
- data/config/locales/it.yml +1 -1
- data/config/locales/ja.yml +6 -1
- data/config/locales/lt.yml +1 -1
- data/config/locales/lv.yml +1 -1
- data/config/locales/nl.yml +1 -1
- data/config/locales/no.yml +1 -1
- data/config/locales/pl.yml +1 -1
- data/config/locales/pt-BR.yml +1 -1
- data/config/locales/pt.yml +1 -1
- data/config/locales/ro-RO.yml +1 -1
- data/config/locales/ru.yml +1 -1
- data/config/locales/sk.yml +1 -1
- data/config/locales/sv.yml +16 -6
- data/config/locales/tr-TR.yml +1 -1
- data/config/locales/zh-CN.yml +1 -1
- data/config/locales/zh-TW.yml +1 -1
- data/config/rubocop/disabled.yml +0 -27
- data/config/rubocop/faker.yml +1 -1
- data/config/rubocop/graphql.yml +23 -0
- data/config/rubocop/rspec.yml +1 -0
- data/config/rubocop/ruby.yml +1 -1
- data/decidim-dev.gemspec +13 -7
- data/lib/decidim/dev/auth_engine.rb +2 -0
- data/lib/decidim/dev/component.rb +2 -2
- data/lib/decidim/dev/test/rspec_support/capybara.rb +10 -25
- data/lib/decidim/dev/test/rspec_support/component.rb +2 -0
- data/lib/decidim/dev/test/rspec_support/component_context.rb +13 -7
- data/lib/decidim/dev/test/rspec_support/confirmation_helpers.rb +4 -4
- data/lib/decidim/dev/test/rspec_support/controller_example_group.rb +8 -0
- data/lib/decidim/dev/test/rspec_support/geocoder.rb +13 -0
- data/lib/decidim/dev/test/rspec_support/screenshot_helper.rb +2 -2
- data/lib/decidim/dev/version.rb +1 -1
- data/lib/tasks/generators.rake +2 -1
- data/lib/tasks/lighthouse_report.rake +3 -3
- data/rubocop-decidim.yml +1 -0
- metadata +104 -23
- data/lib/decidim/dev/test/rspec_support/wicked_pdf_assets_mock.rb +0 -21
data/config/locales/ru.yml
CHANGED
@@ -29,7 +29,7 @@ ru:
|
|
29
29
|
badges:
|
30
30
|
test:
|
31
31
|
conditions:
|
32
|
-
|
32
|
+
- Используйте тестовую среду для decidim.
|
33
33
|
description: Участники получают этот значок за написание тестов.
|
34
34
|
description_another: Этот участник написал %{score} тестов.
|
35
35
|
description_own: Вы написали %{score} тест.
|
data/config/locales/sk.yml
CHANGED
@@ -31,7 +31,7 @@ sk:
|
|
31
31
|
badges:
|
32
32
|
test:
|
33
33
|
conditions:
|
34
|
-
|
34
|
+
- Použiť testovacie prostredie pre decidim.
|
35
35
|
description: Účastníci dostanú tento odznak za vytváranie testov.
|
36
36
|
description_another: Tento účastník vytvoril %{score} testov.
|
37
37
|
description_own: Vytvorili ste %{score} testov.
|
data/config/locales/sv.yml
CHANGED
@@ -2,6 +2,9 @@
|
|
2
2
|
sv:
|
3
3
|
activemodel:
|
4
4
|
attributes:
|
5
|
+
dummy:
|
6
|
+
image: Bild
|
7
|
+
dummy_attribute: Testattribut
|
5
8
|
dummy_resource:
|
6
9
|
created_at: Skapad
|
7
10
|
decidim_scope_id: Indelning
|
@@ -15,14 +18,20 @@ sv:
|
|
15
18
|
dummy:
|
16
19
|
settings:
|
17
20
|
global:
|
18
|
-
|
21
|
+
clear_all: Rensa alla
|
22
|
+
guided: Guidad inmatning
|
19
23
|
guided_help: Hjälptext
|
24
|
+
guided_readonly: Inmatning inaktiverad
|
25
|
+
guided_rich: Guidad formatterad textinmatning
|
26
|
+
guided_rich_help_html: HTML <strong>hjälp</strong>-text
|
27
|
+
guided_rich_readonly_html: HTML <strong>hjälp</strong>-text för inaktiverad inmatning
|
20
28
|
readonly_attribute: Skrivskyddat attribut
|
21
29
|
test: Ett test
|
30
|
+
test_add: Lägg till test
|
22
31
|
test_choices:
|
23
|
-
a:
|
24
|
-
b: B
|
25
|
-
c: C
|
32
|
+
a: Alternativ A
|
33
|
+
b: Alternativ B
|
34
|
+
c: Alternativ C
|
26
35
|
test_options:
|
27
36
|
bar: Bar
|
28
37
|
baz: Baz
|
@@ -30,7 +39,7 @@ sv:
|
|
30
39
|
step:
|
31
40
|
endorsements_blocked: Blockera gilla-markeringar
|
32
41
|
endorsements_enabled: Aktivera gilla-markeringar
|
33
|
-
readonly_step_attribute:
|
42
|
+
readonly_step_attribute: Attribut för skrivskyddat steg
|
34
43
|
test_options:
|
35
44
|
bar: Bar
|
36
45
|
baz: Baz
|
@@ -43,12 +52,13 @@ sv:
|
|
43
52
|
badges:
|
44
53
|
test:
|
45
54
|
conditions:
|
46
|
-
|
55
|
+
- Använd en testmiljö för decidim.
|
47
56
|
description: Deltagare får detta märke genom att skapa tester.
|
48
57
|
description_another: Deltagaren har skapat %{score} tester.
|
49
58
|
description_own: Du har skapat %{score} tester.
|
50
59
|
name: Tester
|
51
60
|
next_level_in: Skapa %{score} till tester för att nå nästa nivå!
|
61
|
+
unearned_another: Den här deltagaren har inte skapat några tester än.
|
52
62
|
unearned_own: Du har inte skapat några tester än.
|
53
63
|
resource_links:
|
54
64
|
test_link:
|
data/config/locales/tr-TR.yml
CHANGED
@@ -39,7 +39,7 @@ tr:
|
|
39
39
|
badges:
|
40
40
|
test:
|
41
41
|
conditions:
|
42
|
-
|
42
|
+
- Decidim için bir test ortamı kullanın.
|
43
43
|
description: Katılımcılar testler oluşturarak bu rozeti alırlar.
|
44
44
|
description_another: Bu katılımcı %{score} test oluşturdu.
|
45
45
|
description_own: '%{score} test oluşturdunuz.'
|
data/config/locales/zh-CN.yml
CHANGED
data/config/locales/zh-TW.yml
CHANGED
data/config/rubocop/disabled.yml
CHANGED
@@ -10,9 +10,6 @@ Naming/MemoizedInstanceVariableName:
|
|
10
10
|
RSpec/VerifiedDoubleReference:
|
11
11
|
Enabled: false
|
12
12
|
|
13
|
-
FactoryBot/ConsistentParenthesesStyle:
|
14
|
-
Enabled: false
|
15
|
-
|
16
13
|
FactoryBot/ExcessiveCreateList:
|
17
14
|
Enabled: false
|
18
15
|
|
@@ -43,29 +40,5 @@ FactoryBot/AssociationStyle:
|
|
43
40
|
Rubycw/Rubycw:
|
44
41
|
Enabled: false
|
45
42
|
|
46
|
-
Lint/SymbolConversion:
|
47
|
-
Enabled: false
|
48
|
-
|
49
|
-
Style/RedundantParentheses:
|
50
|
-
Enabled: false
|
51
|
-
|
52
|
-
Style/MapIntoArray:
|
53
|
-
Enabled: false
|
54
|
-
|
55
|
-
Style/SuperWithArgsParentheses:
|
56
|
-
Enabled: false
|
57
|
-
|
58
|
-
Style/ArgumentsForwarding:
|
59
|
-
Enabled: false
|
60
|
-
|
61
|
-
Style/SuperArguments:
|
62
|
-
Enabled: false
|
63
|
-
|
64
43
|
Lint/SelfAssignment:
|
65
44
|
Enabled: false
|
66
|
-
|
67
|
-
Style/SendWithLiteralMethodName:
|
68
|
-
Enabled: false
|
69
|
-
|
70
|
-
Rails/WhereRange:
|
71
|
-
Enabled: false
|
data/config/rubocop/faker.yml
CHANGED
@@ -0,0 +1,23 @@
|
|
1
|
+
require: rubocop-graphql
|
2
|
+
|
3
|
+
GraphQL:
|
4
|
+
Enabled: true
|
5
|
+
Include:
|
6
|
+
- "**/lib/decidim/api/**/*"
|
7
|
+
Exclude:
|
8
|
+
- "**/lib/decidim/api/test/**/*"
|
9
|
+
- "**/lib/decidim/api/functions/*"
|
10
|
+
- "spec/**/*"
|
11
|
+
- "test/**/*"
|
12
|
+
|
13
|
+
GraphQL/ObjectDescription:
|
14
|
+
Exclude:
|
15
|
+
- "**/lib/decidim/api/engine.rb"
|
16
|
+
- "**/lib/decidim/api/schema.rb"
|
17
|
+
- "**/lib/decidim/api/graphiql/config.rb"
|
18
|
+
- "**/lib/decidim/api/functions/*"
|
19
|
+
- "spec/**/*"
|
20
|
+
- "test/**/*"
|
21
|
+
|
22
|
+
GraphQL/ExtractType:
|
23
|
+
Enabled: false
|
data/config/rubocop/rspec.yml
CHANGED
data/config/rubocop/ruby.yml
CHANGED
@@ -66,7 +66,7 @@ AllCops:
|
|
66
66
|
# If a value is specified for TargetRubyVersion then it is used.
|
67
67
|
# Else if .ruby-version exists and it contains an MRI version it is used.
|
68
68
|
# Otherwise we fallback to the oldest officially supported Ruby version (2.0).
|
69
|
-
TargetRubyVersion: 3.
|
69
|
+
TargetRubyVersion: 3.3
|
70
70
|
|
71
71
|
# Indent private/protected/public as deep as method definitions
|
72
72
|
Layout/AccessModifierIndentation:
|
data/decidim-dev.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.version = Decidim::Dev.version
|
11
11
|
s.authors = ["Josep Jaume Rey Peroy", "Marc Riera Casals", "Oriol Gual Oliva"]
|
12
12
|
s.email = ["josepjaume@gmail.com", "mrc2407@gmail.com", "oriolgual@gmail.com"]
|
13
|
-
s.license = "AGPL-3.0"
|
13
|
+
s.license = "AGPL-3.0-or-later"
|
14
14
|
s.homepage = "https://decidim.org"
|
15
15
|
s.metadata = {
|
16
16
|
"bug_tracker_uri" => "https://github.com/decidim/decidim/issues",
|
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
|
|
19
19
|
"homepage_uri" => "https://decidim.org",
|
20
20
|
"source_code_uri" => "https://github.com/decidim/decidim"
|
21
21
|
}
|
22
|
-
s.required_ruby_version = "~> 3.
|
22
|
+
s.required_ruby_version = "~> 3.3.0"
|
23
23
|
|
24
24
|
s.name = "decidim-dev"
|
25
25
|
s.summary = "Decidim dev tools"
|
@@ -33,17 +33,22 @@ Gem::Specification.new do |s|
|
|
33
33
|
end
|
34
34
|
|
35
35
|
s.add_dependency "capybara", "~> 3.39"
|
36
|
-
s.add_dependency "decidim", Decidim::Dev.version
|
36
|
+
s.add_dependency "decidim-admin", Decidim::Dev.version
|
37
|
+
s.add_dependency "decidim-api", Decidim::Dev.version
|
38
|
+
s.add_dependency "decidim-comments", Decidim::Dev.version
|
39
|
+
s.add_dependency "decidim-core", Decidim::Dev.version
|
40
|
+
s.add_dependency "decidim-generators", Decidim::Dev.version
|
41
|
+
s.add_dependency "decidim-verifications", Decidim::Dev.version
|
37
42
|
s.add_dependency "factory_bot_rails", "~> 6.2"
|
38
43
|
s.add_dependency "faker", "~> 3.2"
|
39
44
|
|
40
|
-
s.add_dependency "bullet", "~>
|
45
|
+
s.add_dependency "bullet", "~> 8.0.0"
|
41
46
|
s.add_dependency "byebug", "~> 11.0"
|
42
|
-
s.add_dependency "erb_lint", "~> 0.
|
47
|
+
s.add_dependency "erb_lint", "~> 0.8.0"
|
43
48
|
s.add_dependency "i18n-tasks", "~> 1.0"
|
44
49
|
s.add_dependency "nokogiri", "~> 1.16", ">= 1.16.2"
|
45
50
|
s.add_dependency "parallel_tests", "~> 4.2"
|
46
|
-
s.add_dependency "puma", "~> 6.
|
51
|
+
s.add_dependency "puma", "~> 6.5"
|
47
52
|
s.add_dependency "rails-controller-testing", "~> 1.0"
|
48
53
|
s.add_dependency "rspec", "~> 3.12"
|
49
54
|
s.add_dependency "rspec-cells", "~> 0.3.7"
|
@@ -51,10 +56,11 @@ Gem::Specification.new do |s|
|
|
51
56
|
s.add_dependency "rspec_junit_formatter", "~> 0.6.0"
|
52
57
|
s.add_dependency "rspec-rails", "~> 6.0"
|
53
58
|
s.add_dependency "rspec-retry", "~> 0.6.2"
|
54
|
-
s.add_dependency "rubocop", "~> 1.
|
59
|
+
s.add_dependency "rubocop", "~> 1.69.0"
|
55
60
|
s.add_dependency "rubocop-capybara", "~> 2.21"
|
56
61
|
s.add_dependency "rubocop-factory_bot", "~> 2.26"
|
57
62
|
s.add_dependency "rubocop-faker", "~> 1.1"
|
63
|
+
s.add_dependency "rubocop-graphql", "~> 1.5"
|
58
64
|
s.add_dependency "rubocop-performance", "~> 1.21"
|
59
65
|
s.add_dependency "rubocop-rails", "~> 2.25"
|
60
66
|
s.add_dependency "rubocop-rspec", "~> 3.0"
|
@@ -8,10 +8,10 @@ Decidim.register_component(:dummy) do |component|
|
|
8
8
|
component.actions = %w(foo bar)
|
9
9
|
|
10
10
|
component.newsletter_participant_entities = ["Decidim::Dev::DummyResource"]
|
11
|
+
component.permissions_class_name = "Decidim::Dev::Permissions"
|
11
12
|
|
12
13
|
component.settings(:global) do |settings|
|
13
|
-
settings.attribute :
|
14
|
-
settings.attribute :scope_id, type: :scope
|
14
|
+
settings.attribute :taxonomy_filters, type: :taxonomy_filters, default: []
|
15
15
|
settings.attribute :comments_enabled, type: :boolean, default: true
|
16
16
|
settings.attribute :comments_max_length, type: :integer, required: false
|
17
17
|
settings.attribute :resources_permissions_enabled, type: :boolean, default: true
|
@@ -32,6 +32,8 @@ end
|
|
32
32
|
|
33
33
|
1.step do
|
34
34
|
port = rand(5000..6999)
|
35
|
+
next if port == 6379 # Reserved for Redis
|
36
|
+
|
35
37
|
begin
|
36
38
|
redis = Redis.new
|
37
39
|
reserved_ports = (redis.get("decidim_test_capybara_reserved_ports") || "").split(",").map(&:to_i)
|
@@ -66,6 +68,13 @@ Capybara.register_driver :headless_chrome do |app|
|
|
66
68
|
"--window-size=1920,1080"
|
67
69
|
end
|
68
70
|
options.args << "--ignore-certificate-errors" if ENV["TEST_SSL"]
|
71
|
+
|
72
|
+
options.add_preference(:download,
|
73
|
+
directory_upgrade: true,
|
74
|
+
prompt_for_download: false,
|
75
|
+
default_directory: DownloadHelper::PATH.to_s)
|
76
|
+
options.add_preference(:browser, set_download_behavior: { behavior: "allow" })
|
77
|
+
|
69
78
|
Capybara::Selenium::Driver.new(
|
70
79
|
app,
|
71
80
|
browser: :chrome,
|
@@ -111,7 +120,7 @@ Capybara.register_driver :iphone do |app|
|
|
111
120
|
options.args << "--no-sandbox"
|
112
121
|
# Do not limit browser resources
|
113
122
|
options.args << "--disable-dev-shm-usage"
|
114
|
-
options.add_emulation(device_name: "iPhone
|
123
|
+
options.add_emulation(device_name: "iPhone XR")
|
115
124
|
|
116
125
|
Capybara::Selenium::Driver.new(
|
117
126
|
app,
|
@@ -139,33 +148,9 @@ Capybara.save_path = Rails.root.join("tmp/screenshots")
|
|
139
148
|
Capybara.default_max_wait_time = 10
|
140
149
|
|
141
150
|
RSpec.configure do |config|
|
142
|
-
config.before :all, type: :system do
|
143
|
-
if ENV["BIG_SCREEN_SIZE"].present?
|
144
|
-
warn "[DECIDIM] ChromeDriver Workaround is being active: Setting window size to 1920x3000."
|
145
|
-
else
|
146
|
-
warn "[DECIDIM] ChromeDriver Workaround is being active: Setting window size to 1920x1080."
|
147
|
-
end
|
148
|
-
end
|
149
|
-
|
150
151
|
config.before :each, type: :system do
|
151
152
|
driven_by(:headless_chrome)
|
152
153
|
|
153
|
-
# Workaround for flaky spec related to resolution change
|
154
|
-
#
|
155
|
-
# For some unknown reason, depending on the order run for these specs, the resolution is changed to
|
156
|
-
# 800x600, which breaks the drag and drop. This forces the resolution to be 1920x1080.
|
157
|
-
# One possible culprit for the screen resolution change is the alert error intercepting which messes with the window focus.
|
158
|
-
# This has been reported to SeleniumHQ, https://github.com/SeleniumHQ/selenium/issues/13553
|
159
|
-
# and to the chromedriver project, https://bugs.chromium.org/p/chromedriver/issues/detail?id=4709
|
160
|
-
#
|
161
|
-
# Note to future maintainers: If you remove this workaround, please make sure to check if the issue has been fixed.
|
162
|
-
# If that is the case, please remove this comment, workaround, and the above warning that starts with "[DECIDIM] ChromeDriver Workaround".
|
163
|
-
if ENV["BIG_SCREEN_SIZE"].present?
|
164
|
-
current_window.resize_to(1920, 3000)
|
165
|
-
else
|
166
|
-
current_window.resize_to(1920, 1080)
|
167
|
-
end
|
168
|
-
|
169
154
|
switch_to_default_host
|
170
155
|
domain = (try(:organization) || try(:current_organization))&.host
|
171
156
|
if domain
|
@@ -16,6 +16,7 @@ RSpec.configure do |config|
|
|
16
16
|
t.float :latitude
|
17
17
|
t.float :longitude
|
18
18
|
t.datetime :published_at
|
19
|
+
t.datetime :deleted_at
|
19
20
|
t.integer :coauthorships_count, null: false, default: 0
|
20
21
|
t.integer :endorsements_count, null: false, default: 0
|
21
22
|
t.integer :comments_count, null: false, default: 0
|
@@ -50,6 +51,7 @@ RSpec.configure do |config|
|
|
50
51
|
t.float :latitude
|
51
52
|
t.float :longitude
|
52
53
|
t.datetime :published_at
|
54
|
+
t.datetime :deleted_at
|
53
55
|
t.integer :coauthorships_count, null: false, default: 0
|
54
56
|
t.integer :endorsements_count, null: false, default: 0
|
55
57
|
t.integer :comments_count, null: false, default: 0
|
@@ -22,7 +22,7 @@ end
|
|
22
22
|
|
23
23
|
shared_context "with a component" do
|
24
24
|
let(:manifest) { Decidim.find_component_manifest(manifest_name) }
|
25
|
-
let(:user) { create
|
25
|
+
let(:user) { create(:user, :confirmed, organization:) }
|
26
26
|
|
27
27
|
let!(:organization) { create(:organization, *organization_traits, available_authorizations: %w(dummy_authorization_handler another_dummy_authorization_handler)) }
|
28
28
|
|
@@ -38,8 +38,14 @@ shared_context "with a component" do
|
|
38
38
|
participatory_space:)
|
39
39
|
end
|
40
40
|
|
41
|
-
let!(:category) { create
|
42
|
-
let!(:scope) { create
|
41
|
+
let!(:category) { create(:category, participatory_space:) }
|
42
|
+
let!(:scope) { create(:scope, organization:) }
|
43
|
+
let(:root_taxonomy) { create(:taxonomy, organization:) }
|
44
|
+
let!(:taxonomy) { create(:taxonomy, organization:, parent: root_taxonomy) }
|
45
|
+
let(:taxonomy_filter) { create(:taxonomy_filter, internal_name:, name:, participatory_space_manifests: [participatory_space.manifest.name], root_taxonomy:) }
|
46
|
+
let!(:taxonomy_filter_item) { create(:taxonomy_filter_item, taxonomy_filter:, taxonomy_item: taxonomy) }
|
47
|
+
let(:internal_name) { { "en" => "Internal taxonomy filter name" } }
|
48
|
+
let(:name) { { "en" => "Public taxonomy filter name" } }
|
43
49
|
|
44
50
|
let(:organization_traits) { [] }
|
45
51
|
|
@@ -91,10 +97,10 @@ shared_context "when managing a component as an admin" do
|
|
91
97
|
let(:admin_component_organization_traits) { [] }
|
92
98
|
|
93
99
|
let(:user) do
|
94
|
-
create
|
100
|
+
create(:user,
|
95
101
|
:admin,
|
96
102
|
:confirmed,
|
97
|
-
organization:
|
103
|
+
organization:)
|
98
104
|
end
|
99
105
|
end
|
100
106
|
|
@@ -102,9 +108,9 @@ shared_context "when managing a component as a process admin" do
|
|
102
108
|
include_context "when managing a component"
|
103
109
|
|
104
110
|
let(:user) do
|
105
|
-
create
|
111
|
+
create(:process_admin,
|
106
112
|
:confirmed,
|
107
113
|
organization:,
|
108
|
-
participatory_process:
|
114
|
+
participatory_process:)
|
109
115
|
end
|
110
116
|
end
|
@@ -47,15 +47,15 @@ module ConfirmationHelpers
|
|
47
47
|
# Used to accept the "onbeforeunload" event's normal browser confirm modal
|
48
48
|
# as this cannot be overridden. Original confirm dismiss implementation in
|
49
49
|
# Capybara.
|
50
|
-
def accept_page_unload(text = nil,
|
51
|
-
|
50
|
+
def accept_page_unload(text = nil, **, &)
|
51
|
+
accept_confirm(text, &)
|
52
52
|
end
|
53
53
|
|
54
54
|
# Used to dismiss the "onbeforeunload" event's normal browser confirm modal
|
55
55
|
# as this cannot be overridden. Original confirm dismiss implementation in
|
56
56
|
# Capybara.
|
57
|
-
def dismiss_page_unload(text = nil,
|
58
|
-
|
57
|
+
def dismiss_page_unload(text = nil, **, &)
|
58
|
+
dismiss_confirm(text, &)
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
@@ -19,6 +19,14 @@ module Decidim
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
end
|
22
|
+
|
23
|
+
def process(action, method: "GET", params: nil, session: nil, body: nil, flash: {}, format: nil, xhr: false, as: nil) # rubocop:disable Metrics/ParameterLists
|
24
|
+
params = (params || {}).symbolize_keys
|
25
|
+
|
26
|
+
params.merge!(use_route: request.env["decidim.current_component"]&.mounted_engine) if request.env["decidim.current_component"].present?
|
27
|
+
|
28
|
+
super
|
29
|
+
end
|
22
30
|
end
|
23
31
|
end
|
24
32
|
|
@@ -14,6 +14,19 @@ module GeocoderHelpers
|
|
14
14
|
)
|
15
15
|
end
|
16
16
|
|
17
|
+
def stub_geocoding_coordinates(coordinates)
|
18
|
+
geocoder_request_url = "https://nominatim.openstreetmap.org/reverse?accept-language=en&addressdetails=1&format=json&lat=#{coordinates[0]}&lon=#{coordinates[1]}"
|
19
|
+
geocoder_response = File.read(Decidim::Dev.asset("geocoder_result_here.json"))
|
20
|
+
|
21
|
+
stub_request(:get, geocoder_request_url).with(
|
22
|
+
headers: {
|
23
|
+
"Accept" => "*/*",
|
24
|
+
"Accept-Encoding" => "gzip;q=1.0,deflate;q=0.6,identity;q=0.3",
|
25
|
+
"User-Agent" => "Ruby"
|
26
|
+
}
|
27
|
+
).to_return(body: geocoder_response)
|
28
|
+
end
|
29
|
+
|
17
30
|
# Waits for the front-end geocoding request to finish in order to ensure there
|
18
31
|
# are no pending requests when proceeding.
|
19
32
|
def fill_in_geocoding(attribute, options = {})
|
@@ -21,8 +21,8 @@ module ActionDispatch
|
|
21
21
|
|
22
22
|
# Add the file URI scheme so terminal emulators can open one click
|
23
23
|
def display_image
|
24
|
-
message =
|
25
|
-
message <<
|
24
|
+
message = "[Screenshot Image]: file://#{image_path}\n"
|
25
|
+
message << "[Screenshot HTML]: file://#{html_path}\n" if save_html?
|
26
26
|
|
27
27
|
case output_type
|
28
28
|
when "artifact"
|
data/lib/decidim/dev/version.rb
CHANGED
data/lib/tasks/generators.rake
CHANGED
@@ -42,9 +42,9 @@ namespace :decidim do
|
|
42
42
|
|
43
43
|
def lighthouse_paths
|
44
44
|
["/"].tap do |urls|
|
45
|
-
urls << Decidim::ResourceLocatorPresenter.new(Decidim::ParticipatoryProcess.published.first).path
|
46
|
-
urls << Decidim::ResourceLocatorPresenter.new(Decidim::Meetings::Meeting.published.not_hidden.first).path
|
47
|
-
urls << Decidim::ResourceLocatorPresenter.new(Decidim::Proposals::Proposal.published.not_hidden.first).path
|
45
|
+
urls << Decidim::ResourceLocatorPresenter.new(Decidim::ParticipatoryProcess.published.first).path if Decidim.module_installed?(:participatory_processes)
|
46
|
+
urls << Decidim::ResourceLocatorPresenter.new(Decidim::Meetings::Meeting.published.not_hidden.first).path if Decidim.module_installed?(:meetings)
|
47
|
+
urls << Decidim::ResourceLocatorPresenter.new(Decidim::Proposals::Proposal.published.not_hidden.first).path if Decidim.module_installed?(:proposals)
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|