<% end %>
diff --git a/decidim-signature_collection/app/views/decidim/signature_collection/candidacies/_vote_button.html.erb b/decidim-signature_collection/app/views/decidim/signature_collection/candidacies/_vote_button.html.erb
index 1becf5a6..551a3e0a 100644
--- a/decidim-signature_collection/app/views/decidim/signature_collection/candidacies/_vote_button.html.erb
+++ b/decidim-signature_collection/app/views/decidim/signature_collection/candidacies/_vote_button.html.erb
@@ -4,34 +4,4 @@
candidacy_signatures_path(candidacy_slug: current_candidacy.slug),
class: "button button__xl w-full button__secondary"
) %>
-<% else %>
- <% if candidacy.voted_by?(current_user) %>
- <% if allowed_to? :unvote, :candidacy, candidacy: candidacy %>
- <%= button_to(
- candidacy_candidacy_vote_path(candidacy_slug: current_candidacy.slug),
- method: :delete,
- remote: true,
- data: { disable: true },
- class: "button button__xl w-full button__secondary success"
- ) do %>
- <%= icon "check-line" %>
- <%= unvote_label %>
- <% end %>
- <% else %>
-
- <% end %>
- <% else %>
- <%= action_authorized_link_to(
- :vote,
- t("vote", scope: "decidim.signature_collection.candidacies.vote_cabin"),
- candidacy_signatures_path(candidacy_slug: current_candidacy.slug),
- resource: current_candidacy,
- permissions_holder: current_candidacy.type,
- authorizations_modal_path: authorization_sign_modal_candidacy_path(current_candidacy),
- class: "button button__xl w-full button__secondary"
- ) %>
- <% end %>
<% end %>
diff --git a/decidim-signature_collection/config/locales/ca.yml b/decidim-signature_collection/config/locales/ca.yml
index d5af9f1c..5ee862d6 100644
--- a/decidim-signature_collection/config/locales/ca.yml
+++ b/decidim-signature_collection/config/locales/ca.yml
@@ -207,11 +207,6 @@ ca:
email_outro: Has rebut aquesta notificació perquè estàs seguint la candidatura "%{resource_title}". Pots deixar de rebre notificacions seguint l'enllaç anterior.
email_subject: S'ha ampliat la data de finalització de la recollida de signatura de la candidatura!
notification_title: El termini de recollida de signatures per a la candidatura %{resource_title} s'ha ampliat.
- candidacy_sent_to_technical_validation:
- email_intro: La candidatura "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del taulell d'administració
- email_outro: Has rebut aquesta notificació perquè admnistres la plataforma.
- email_subject: La candidatura %{resource_title} ha sol·licitat validació tècnica.
- notification_title: La candidatura "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del taullel d'administració
milestone_completed:
affected_user:
email_intro: La teva candidatura %{resource_title} ha aconseguit un %{percentage}% de les signatures necessàries!
@@ -225,7 +220,10 @@ ca:
notification_title: La candidatura %{resource_title} ha aconseguit el %{percentage}% de les signatures.
signature_collection:
candidacy_sent_to_technical_validation:
- notification_title: La candidatura "%{resource_title}" s'ha enviat a validació tècnica. Comprova-ho a través del taullel d'administració
+ email_intro: La teva candidatura %{resource_title} ha aconseguit un %{percentage}% de les signatures necessàries!
+ email_outro: Has rebut aquesta notificació perquè has creat la candidatura "%{resource_title}".
+ email_subject: S'ha completat una nova fita!
+ notification_title: La candidatura "%{resource_title}" s'ha enviat a validació tècnica.
support_threshold_reached:
email_intro: La candidatura %{resource_title} ha arribat al llindar de signatures
email_outro: Has rebut aquesta notificació perquè admnistres la plataforma.
@@ -257,6 +255,7 @@ ca:
answers:
edit:
answer: Resposta
+ return_to_create_state_help: Marcant aquesta opció, la candidatura tornarà a l'estat "Creada" per a què la persona que l'ha presentat pugui editar-la amb els canvis sol·licitats en aquesta resposta.
title: Resposta per %{title}
info_candidacy:
created_at: Creada el
diff --git a/decidim-signature_collection/config/locales/en.yml b/decidim-signature_collection/config/locales/en.yml
index 96306456..d0827322 100644
--- a/decidim-signature_collection/config/locales/en.yml
+++ b/decidim-signature_collection/config/locales/en.yml
@@ -215,10 +215,10 @@ en:
notification_title: The candidacy "%{resource_title}" has been sent to technical validation. Check it out at the admin panel
signature_collection:
candidacy_sent_to_technical_validation:
- email_intro: The candidacy "%{resource_title}" has been sent to technical validation. Check it out at the admin panel
+ email_intro: The candidacy "%{resource_title}" has been sent to technical validation.
email_outro: You have received this notification because you are an admin of the platform.
email_subject: Candidacy "%{resource_title}" was sent to technical validation.
- notification_title: The candidacy "%{resource_title}" has been sent to technical validation. Check it out at the admin panel
+ notification_title: The candidacy "%{resource_title}" has been sent to technical validation.
milestone_completed:
affected_user:
email_intro: Your candidacy %{resource_title} has achieved the %{percentage}% of signatures!
@@ -230,9 +230,6 @@ en:
email_outro: You have received this notification because you are following %{resource_title}. You can stop receiving notifications following the previous link.
email_subject: New milestone completed!
notification_title: The %{resource_title} candidacy has achieved the %{percentage}% of signatures.
- signature_collection:
- candidacy_sent_to_technical_validation:
- notification_title: The candidacy "%{resource_title}" has been sent to technical validation. Check it out at the admin panel
support_threshold_reached:
email_intro: The candidacy %{resource_title} has reached the signatures threshold
email_outro: You have received this notification because you are an admin of the platform.
@@ -264,6 +261,7 @@ en:
answers:
edit:
answer: Answer
+ return_to_create_state_help: By checking this option, the candidacy will return to the "Created" state so that the person who submitted it can edit it with the changes requested in this answer.
title: Answer for %{title}
info_candidacy:
created_at: Created at
diff --git a/decidim-signature_collection/config/locales/es.yml b/decidim-signature_collection/config/locales/es.yml
index 90c6e444..c8cc7b8f 100644
--- a/decidim-signature_collection/config/locales/es.yml
+++ b/decidim-signature_collection/config/locales/es.yml
@@ -210,10 +210,10 @@ es:
email_subject: '¡Ampliado el términio de recogida de firmas para esta candidatura!'
notification_title: El plazo de recogida de firmas para la candidatura %{resource_title} se ha ampliado.
candidacy_sent_to_technical_validation:
- email_intro: La candidatura "%{resource_title}" ha sido enviada a la validación técnica. Compruébala en el panel de administración
+ email_intro: La candidatura "%{resource_title}" ha sido enviada a la validación técnica.
email_outro: Has recibido esta notificación porque administras la plataforma.
email_subject: La candidatura "%{resource_title}" fue enviada a validación técnica.
- notification_title: La candidatura "%{resource_title}" ha sido enviada a validación técnica. Compruébalo en el panel de administración
+ notification_title: La candidatura "%{resource_title}" ha sido enviada a validación técnica.
milestone_completed:
affected_user:
email_intro: '¡Tu candidatura %{resource_title} ha conseguido el %{percentage}% de las firmas necesarias!'
@@ -227,7 +227,9 @@ es:
notification_title: La candidatura %{resource_title} ha logrado el %{percentage}% de las firmas.
signature_collection:
candidacy_sent_to_technical_validation:
- notification_title: La candidatura "%{resource_title}" se ha enviado a validación técnica. Compruébalo a través del panel de administración
+ email_outro: Has recibido esta notificación porque has creado la candidatura "%{resource_title}".
+ email_subject: '¡Nuevo hito completado!'
+ notification_title: Tu candidatura %{resource_title} ha conseguido el %{percentage}% de firmas.
support_threshold_reached:
email_intro: La candidatura %{resource_title} ha alcanzado el umbral de firmas
email_outro: Has recibido esta notificación porque administras la plataforma.
@@ -259,6 +261,7 @@ es:
answers:
edit:
answer: Responder
+ return_to_create_state_help: Marcando esta opción, la candidatura volverá al estado "Creada" para que la persona que la ha presentado pueda editarla con los cambios solicitados en esta respuesta.
title: Respuesta para %{title}
info_candidacy:
created_at: Creada el
diff --git a/decidim-signature_collection/lib/decidim/signature_collection/test/factories.rb b/decidim-signature_collection/lib/decidim/signature_collection/test/factories.rb
index 4235316c..8311f5f6 100644
--- a/decidim-signature_collection/lib/decidim/signature_collection/test/factories.rb
+++ b/decidim-signature_collection/lib/decidim/signature_collection/test/factories.rb
@@ -166,6 +166,11 @@
state { "rejected" }
end
+ trait :answered do
+ answer { generate_localized_description(:candidacy_answer, skip_injection:) }
+ answered_at { Time.current }
+ end
+
trait :online do
signature_type { "online" }
end
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/create_candidacy_type_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/create_candidacy_type_spec.rb
index 29c1a03b..8ca9941a 100644
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/create_candidacy_type_spec.rb
+++ b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/create_candidacy_type_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
module Admin
- describe CreateCandidacyType, skip: "Awaiting review" do
+ describe CreateCandidacyType do
let(:form_klass) { CandidacyTypeForm }
describe "successful creation" do
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/publish_candidacy_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/publish_candidacy_spec.rb
index b0b4e110..487dae67 100644
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/publish_candidacy_spec.rb
+++ b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/publish_candidacy_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
module Admin
- describe PublishCandidacy, skip: "Awaiting review" do
+ describe PublishCandidacy do
subject { described_class.new(candidacy, user) }
let(:candidacy) { create(:candidacy, :created) }
@@ -34,10 +34,6 @@ module Admin
action_log = Decidim::ActionLog.last
expect(action_log.version).to be_present
end
-
- it "increments the author's score" do
- expect { subject.call }.to change { Decidim::Gamification.status_for(candidacy.author, :candidacies).score }.by(1)
- end
end
end
end
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_answer_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_answer_spec.rb
index 2cd1cd26..a5ca9c88 100644
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_answer_spec.rb
+++ b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_answer_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
module Admin
- describe UpdateCandidacyAnswer, skip: "Awaiting review" do
+ describe UpdateCandidacyAnswer do
let(:form_klass) { Decidim::SignatureCollection::Admin::CandidacyAnswerForm }
context "when valid data" do
@@ -60,11 +60,11 @@ module Admin
let(:command) { described_class.new(candidacy, form) }
- it "sets candidacy state to created (0)" do
+ it "sets candidacy state to created" do
command.call
candidacy.reload
- expect(candidacy.state).to eq(0)
+ expect(candidacy.state).to eq("created")
end
end
end
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_type_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_type_spec.rb
index 721caf6a..3a63779b 100644
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_type_spec.rb
+++ b/decidim-signature_collection/spec/commands/decidim/signature_collection/admin/update_candidacy_type_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
module Admin
- describe UpdateCandidacyType, skip: "Awaiting review" do
+ describe UpdateCandidacyType do
let(:form_klass) { CandidacyTypeForm }
context "when valid data" do
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/unvote_candidacy_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/unvote_candidacy_spec.rb
deleted file mode 100644
index 37e1fe8f..00000000
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/unvote_candidacy_spec.rb
+++ /dev/null
@@ -1,35 +0,0 @@
-# frozen_string_literal: true
-
-require "spec_helper"
-
-module Decidim
- module SignatureCollection
- describe UnvoteCandidacy, skip: "Awaiting review" do
- describe "User unvotes candidacy" do
- let(:vote) { create(:candidacy_user_vote) }
- let(:command) { described_class.new(vote.candidacy, vote.author) }
-
- it "broadcasts ok" do
- expect(vote).to be_valid
- expect { command.call }.to broadcast :ok
- end
-
- it "Removes the vote" do
- expect(vote).to be_valid
- expect do
- command.call
- end.to change(CandidaciesVote, :count).by(-1)
- end
-
- it "decreases the vote counter by one" do
- candidacy = vote.candidacy
- expect(CandidaciesVote.count).to eq(1)
- expect do
- command.call
- candidacy.reload
- end.to change { candidacy.online_votes_count }.by(-1)
- end
- end
- end
- end
-end
diff --git a/decidim-signature_collection/spec/commands/decidim/signature_collection/vote_candidacy_spec.rb b/decidim-signature_collection/spec/commands/decidim/signature_collection/vote_candidacy_spec.rb
index 204b0026..16e5770d 100644
--- a/decidim-signature_collection/spec/commands/decidim/signature_collection/vote_candidacy_spec.rb
+++ b/decidim-signature_collection/spec/commands/decidim/signature_collection/vote_candidacy_spec.rb
@@ -194,97 +194,6 @@ module SignatureCollection
end
end
end
-
- context "when candidacy type requires extra user fields" do
- let(:candidacy) do
- create(
- :candidacy,
- :with_user_extra_fields_collection,
- organization:
- )
- end
- let(:form_with_personal_data) do
- form_klass.from_params(form_params.merge(personal_data_params)).with_context(current_organization: organization)
- end
-
- let(:invalid_command) { described_class.new(form) }
- let(:command_with_personal_data) { described_class.new(form_with_personal_data) }
-
- it "broadcasts invalid when form does not contain personal data" do
- expect { invalid_command.call }.to broadcast :invalid
- end
-
- context "when another signature exists with the same hash_id" do
- before do
- create(:candidacy_user_vote, candidacy:, hash_id: form_with_personal_data.hash_id)
- end
-
- it "broadcasts invalid" do
- expect { command_with_personal_data.call }.to broadcast :invalid
- end
- end
-
- context "when candidacy type has document number authorization handler" do
- let(:handler_name) { "dummy_authorization_handler" }
- let(:unique_id) { "test_digest" }
- let(:metadata) do
- {
- test: "dummy",
- scope_id: candidacy.scoped_type.scope.id
- }
- end
- let!(:authorization_handler) { Decidim::AuthorizationHandler.handler_for(handler_name) }
-
- before do
- allow(authorization_handler).to receive(:unique_id).and_return(unique_id)
- allow(authorization_handler).to receive(:metadata).and_return(metadata)
- allow(Decidim::AuthorizationHandler).to receive(:handler_for).and_return(authorization_handler)
- candidacy.type.update(document_number_authorization_handler: handler_name)
- end
-
- context "when current_user does not have any authorization for the handler" do
- it "broadcasts invalid" do
- expect { command_with_personal_data.call }.to broadcast :invalid
- end
- end
-
- context "when current_user have an an authorization for the handler" do
- let!(:authorization) { create(:authorization, granted_at:, name: handler_name, unique_id: authorization_unique_id, metadata: authorization_metadata, user: current_user) }
- let(:authorization_unique_id) { unique_id }
- let(:authorization_metadata) { metadata }
- let(:granted_at) { 1.minute.ago }
-
- context "when authorization unique_id and metadata are coincident with handler" do
- it "broadcasts ok" do
- expect { command_with_personal_data.call }.to broadcast :ok
- end
-
- it "stores encrypted user personal data in vote" do
- command_with_personal_data.call
- vote = CandidaciesVote.last
- expect(vote.encrypted_metadata).to be_present
- expect(vote.decrypted_metadata).to eq personal_data_params
- end
- end
-
- context "when authorization unique_id is different of handler unique_id" do
- let(:authorization_unique_id) { "other" }
-
- it "broadcasts invalid" do
- expect { command_with_personal_data.call }.to broadcast :invalid
- end
- end
-
- context "when authorization is not fully granted" do
- let(:granted_at) { nil }
-
- it "broadcasts invalid" do
- expect { command_with_personal_data.call }.to broadcast :invalid
- end
- end
- end
- end
- end
end
end
end
diff --git a/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_controller_spec.rb b/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_controller_spec.rb
index 112726a0..f221c6f6 100644
--- a/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_controller_spec.rb
+++ b/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_controller_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe Decidim::SignatureCollection::Admin::CandidaciesController, skip: "Awaiting review" do
+describe Decidim::SignatureCollection::Admin::CandidaciesController do
routes { Decidim::SignatureCollection::AdminEngine.routes }
let(:user) { create(:user, :confirmed, :admin_terms_accepted, organization:) }
diff --git a/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_types_controller_spec.rb b/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_types_controller_spec.rb
index ae8cffe3..53898f7b 100644
--- a/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_types_controller_spec.rb
+++ b/decidim-signature_collection/spec/controllers/decidim/signature_collection/admin/candidacies_types_controller_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
module Admin
- describe CandidaciesTypesController, skip: "Awaiting review" do
+ describe CandidaciesTypesController do
routes { Decidim::SignatureCollection::AdminEngine.routes }
let(:organization) { create(:organization) }
diff --git a/decidim-signature_collection/spec/controllers/decidim/signature_collection/candidacy_votes_controller_spec.rb b/decidim-signature_collection/spec/controllers/decidim/signature_collection/candidacy_votes_controller_spec.rb
index c8708906..a8346652 100644
--- a/decidim-signature_collection/spec/controllers/decidim/signature_collection/candidacy_votes_controller_spec.rb
+++ b/decidim-signature_collection/spec/controllers/decidim/signature_collection/candidacy_votes_controller_spec.rb
@@ -37,41 +37,6 @@ module SignatureCollection
end
end
end
-
- context "when destroy" do
- let!(:vote) { create(:candidacy_user_vote, candidacy:, author: candidacy.author) }
-
- context "and authorized users" do
- it "Authorized users can unvote" do
- expect(vote).not_to be_nil
-
- expect do
- sign_in candidacy.author, scope: :user
- delete :destroy, params: { candidacy_slug: candidacy.slug, format: :js }
- end.to change { CandidaciesVote.where(candidacy:).count }.by(-1)
- end
- end
-
- context "and unvote disabled" do
- let(:candidacies_type) { create(:candidacies_type, :undo_online_signatures_disabled, organization:) }
- let(:scope) { create(:candidacies_type_scope, type: candidacies_type) }
- let(:candidacy) { create(:candidacy, organization:, scoped_type: scope) }
-
- it "does not remove the vote" do
- expect do
- sign_in candidacy.author, scope: :user
- delete :destroy, params: { candidacy_slug: candidacy.slug, format: :js }
- end.not_to(change { CandidaciesVote.where(candidacy:).count })
- end
-
- it "raises an exception" do
- sign_in candidacy.author, scope: :user
- delete :destroy, params: { candidacy_slug: candidacy.slug, format: :js }
- expect(flash[:alert]).not_to be_empty
- expect(response).to have_http_status(:found)
- end
- end
- end
end
end
end
diff --git a/decidim-signature_collection/spec/events/decidim/signature_collection/candidacy_sent_to_technical_validation_event_spec.rb b/decidim-signature_collection/spec/events/decidim/signature_collection/candidacy_sent_to_technical_validation_event_spec.rb
index 7707d9ee..ed884163 100644
--- a/decidim-signature_collection/spec/events/decidim/signature_collection/candidacy_sent_to_technical_validation_event_spec.rb
+++ b/decidim-signature_collection/spec/events/decidim/signature_collection/candidacy_sent_to_technical_validation_event_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe Decidim::SignatureCollection::CandidacySentToTechnicalValidationEvent, skip: "Awaiting review" do
+describe Decidim::SignatureCollection::CandidacySentToTechnicalValidationEvent do
include_context "when a simple event"
let(:resource) { create(:candidacy) }
@@ -12,8 +12,8 @@
let(:admin_candidacy_url) { "http://#{organization.host}:#{Capybara.server_port}#{admin_candidacy_path}" }
let(:email_subject) { "Candidacy \"#{resource_title}\" was sent to technical validation." }
let(:email_outro) { "You have received this notification because you are an admin of the platform." }
- let(:email_intro) { %(The candidacy "#{resource_title}" has been sent to technical validation. Check it out at the admin panel) }
- let(:notification_title) { %(The candidacy "#{resource_title}" has been sent to technical validation. Check it out at the admin panel) }
+ let(:email_intro) { %(The candidacy "#{resource_title}" has been sent to technical validation.) }
+ let(:notification_title) { %(The candidacy "#{resource_title}" has been sent to technical validation.) }
it_behaves_like "a simple event"
it_behaves_like "a simple event email"
diff --git a/decidim-signature_collection/spec/forms/vote_form_spec.rb b/decidim-signature_collection/spec/forms/vote_form_spec.rb
index 5c29220d..ac0241c9 100644
--- a/decidim-signature_collection/spec/forms/vote_form_spec.rb
+++ b/decidim-signature_collection/spec/forms/vote_form_spec.rb
@@ -4,7 +4,7 @@
module Decidim
module SignatureCollection
- describe VoteForm, skip: "Awaiting review" do
+ describe VoteForm do
subject { form }
let(:form) { described_class.from_params(attributes).with_context(context) }
@@ -57,16 +57,17 @@ module SignatureCollection
let(:current_user) { create(:user, organization: candidacy.organization) }
- let(:document_number) { "01234567A" }
+ let(:document_number) { "12345678Z" }
let(:postal_code) { "87111" }
let(:personal_data) do
{
name: "James",
first_surname: "Morgan",
second_surname: "McGill",
- document_number:,
+ document_type: 1,
+ document_number: document_number,
date_of_birth: 40.years.ago.to_date,
- postal_code:
+ postal_code: postal_code
}
end
@@ -93,12 +94,6 @@ module SignatureCollection
it { is_expected.to be_valid }
end
- describe "#metadata" do
- subject { described_class.from_params(attributes).with_context(context).metadata }
-
- it { is_expected.to eq(personal_data) }
- end
-
describe "#encrypted_metadata" do
subject { described_class.from_params(attributes).with_context(context).encrypted_metadata }
@@ -109,141 +104,6 @@ module SignatureCollection
end
end
end
-
- describe "user_authorized_scope" do
- subject { form.user_authorized_scope }
-
- context "when a handler is configured" do
- it { is_expected.to eq(user_scope) }
-
- context "when the authorization metadata does not match" do
- before do
- authorization.metadata["scope_id"] = nil
- authorization.save!
- end
-
- it { is_expected.to be_nil }
- end
- end
-
- context "when no handler is configured" do
- let(:document_number_authorization_handler) { nil }
-
- it { is_expected.to eq(candidacy.scope) }
- end
-
- context "when the authorization does not have metadata" do
- let!(:authorization) do
- create(
- :authorization,
- :granted,
- name: "dummy_authorization_handler",
- user: current_user,
- unique_id: document_number,
- metadata: nil
- )
- end
-
- it { is_expected.to be_nil }
- end
- end
-
- describe "authorized_scope_candidates" do
- context "when it is a global scope candidacy" do
- let(:scoped_type) { global_candidacy_type_scope }
-
- it "includes all the scopes of the organization" do
- expect(form.authorized_scope_candidates.compact).to match_array(organization.scopes)
- end
-
- it "includes the scope" do
- expect(form.authorized_scope_candidates).to include(nil)
- end
- end
-
- context "when it is a fixed scope" do
- let(:scoped_type) { district_1_candidacy_type_scope }
-
- it "returns the scope descendants" do
- expect(form.authorized_scope_candidates).to contain_exactly(neighbourhood1, neighbourhood3, district1)
- end
- end
- end
-
- describe "authorized_scopes" do
- subject { form.authorized_scopes }
-
- context "when the authorization is not valid" do
- subject { form }
-
- before do
- authorization.granted_at = nil
- authorization.save!
- end
-
- it { is_expected.not_to be_valid }
- end
-
- context "when an authorization is not needed" do
- let(:document_number_authorization_handler) { nil }
-
- it { is_expected.to eq([candidacy.scope]) }
- end
-
- context "when the authorization is valid" do
- context "when it is a global scope candidacy" do
- let(:scoped_type) { global_candidacy_type_scope }
-
- context "when child scope voting is enabled" do
- let(:child_scope_threshold_enabled) { true }
-
- context "when the user scope has children" do
- let(:user_scope) { district1 }
-
- it { is_expected.to contain_exactly(nil, city, district1) }
- end
-
- context "when the user scope is a leaf" do
- let(:user_scope) { neighbourhood1 }
-
- it { is_expected.to contain_exactly(nil, city, district1, neighbourhood1) }
- end
- end
-
- context "when child scope voting is disabled" do
- let(:child_scope_threshold_enabled) { false }
-
- it { is_expected.to eq([nil]) }
- end
- end
-
- context "when it has a defined scope" do
- let(:scoped_type) { district_1_candidacy_type_scope }
-
- context "when child scope voting is enabled" do
- let(:child_scope_threshold_enabled) { true }
-
- context "when the user scope has children" do
- let(:user_scope) { district1 }
-
- it { is_expected.to contain_exactly(district1) }
- end
-
- context "when the user scope is a leaf" do
- let(:user_scope) { neighbourhood1 }
-
- it { is_expected.to contain_exactly(district1, neighbourhood1) }
- end
- end
-
- context "when child scope voting is disabled" do
- let(:child_scope_threshold_enabled) { false }
-
- it { is_expected.to eq([district1]) }
- end
- end
- end
- end
end
end
end
diff --git a/decidim-signature_collection/spec/lib/decidim/signature_collection/engine_spec.rb b/decidim-signature_collection/spec/lib/decidim/signature_collection/engine_spec.rb
index cf6398bf..e6d1b19e 100644
--- a/decidim-signature_collection/spec/lib/decidim/signature_collection/engine_spec.rb
+++ b/decidim-signature_collection/spec/lib/decidim/signature_collection/engine_spec.rb
@@ -2,31 +2,10 @@
require "spec_helper"
-describe Decidim::SignatureCollection::Engine, skip: "Awaiting review" do
+describe Decidim::SignatureCollection::Engine do
it_behaves_like "clean engine"
it "loads engine mailer previews" do
expect(ActionMailer::Preview.all).to include(Decidim::Candidacies::CandidaciesMailerPreview)
end
-
- describe "decidim_signature_collection.authorization_transfer" do
- include_context "authorization transfer"
-
- let(:component) { create(:post_component, organization:) }
- let(:original_records) do
- {
- candidacies: create_list(:candidacy, 3, organization:, author: original_user),
- votes: create_list(:candidacy_user_vote, 5, author: original_user)
- }
- end
- let(:transferred_candidacies) { Decidim::SignatureCollection::Candidacy.where(author: target_user).order(:id) }
- let(:transferred_votes) { Decidim::SignatureCollection::CandidaciesVote.where(author: target_user).order(:id) }
-
- it "handles authorization transfer correctly" do
- expect(transferred_candidacies.count).to eq(3)
- expect(transferred_votes.count).to eq(5)
- expect(transfer.records.count).to eq(8)
- expect(transferred_resources).to eq(transferred_candidacies + transferred_votes)
- end
- end
end
diff --git a/decidim-signature_collection/spec/mailers/decidim/signature_collection/candidacies_mailer_spec.rb b/decidim-signature_collection/spec/mailers/decidim/signature_collection/candidacies_mailer_spec.rb
index b26c13db..cdeabae8 100644
--- a/decidim-signature_collection/spec/mailers/decidim/signature_collection/candidacies_mailer_spec.rb
+++ b/decidim-signature_collection/spec/mailers/decidim/signature_collection/candidacies_mailer_spec.rb
@@ -17,7 +17,7 @@ module SignatureCollection
context "when the promoting committee is enabled" do
it "renders the headers" do
- expect(mail.subject).to eq("Your candidacy '#{translated(candidacy.title)}' has been created")
+ expect(mail.subject).to eq("Your candidacy '#{translated(candidacy.title)}' has been created. You can still review and edit it.")
expect(mail.to).to eq([candidacy.author.email])
end
@@ -37,7 +37,7 @@ module SignatureCollection
let(:candidacy) { create(:candidacy, organization:, scoped_type:) }
it "renders the headers" do
- expect(mail.subject).to eq("Your candidacy '#{translated(candidacy.title)}' has been created")
+ expect(mail.subject).to eq("Your candidacy '#{translated(candidacy.title)}' has been created. You can still review and edit it.")
expect(mail.to).to eq([candidacy.author.email])
end
@@ -174,15 +174,6 @@ module SignatureCollection
expect(mail.message).to be_a(ActionMailer::Base::NullMail)
end
end
-
- context "when a member has no email" do
- let(:user_without_email) { create(:user, organization:, email: nil) }
- let(:members) { [admin1, user_without_email] }
-
- it "sends only to members with email" do
- expect(mail.to).to contain_exactly(admin1.email)
- end
- end
end
end
end
diff --git a/decidim-signature_collection/spec/models/decidim/signature_collection/candidacies_type_spec.rb b/decidim-signature_collection/spec/models/decidim/signature_collection/candidacies_type_spec.rb
index 2471e6fe..0c8ab881 100644
--- a/decidim-signature_collection/spec/models/decidim/signature_collection/candidacies_type_spec.rb
+++ b/decidim-signature_collection/spec/models/decidim/signature_collection/candidacies_type_spec.rb
@@ -4,7 +4,7 @@
module Decidim
module SignatureCollection
- describe CandidaciesType, skip: "Awaiting review" do
+ describe CandidaciesType do
let(:candidacies_type) { build(:candidacies_type) }
it "is valid" do
@@ -44,8 +44,8 @@ module SignatureCollection
context "when minimum_signing_age is zero" do
let(:candidacies_type) { build(:candidacies_type, minimum_signing_age: 0) }
- it "returns false" do
- expect(candidacies_type.minimum_signing_age?).to be false
+ it "returns true" do
+ expect(candidacies_type.minimum_signing_age?).to be true
end
end
end
diff --git a/decidim-signature_collection/spec/permissions/decidim/signature_collection/permissions_spec.rb b/decidim-signature_collection/spec/permissions/decidim/signature_collection/permissions_spec.rb
index ac277f6c..796d0426 100644
--- a/decidim-signature_collection/spec/permissions/decidim/signature_collection/permissions_spec.rb
+++ b/decidim-signature_collection/spec/permissions/decidim/signature_collection/permissions_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe Decidim::SignatureCollection::Permissions, skip: "Awaiting review" do
+describe Decidim::SignatureCollection::Permissions do
subject { described_class.new(user, permission_action, context).permissions.allowed? }
let(:user) { create(:user, organization:) }
@@ -543,54 +543,6 @@
end
end
- context "when unvoting an candidacy" do
- let(:action) do
- { scope: :public, action: :unvote, subject: :candidacy }
- end
- let(:candidacy) { create(:candidacy, organization:) }
- let(:context) do
- { candidacy: }
- end
- let(:votes_enabled?) { true }
- let(:accepts_online_unvotes?) { true }
-
- before do
- allow(candidacy).to receive(:votes_enabled?).and_return(votes_enabled?)
- allow(candidacy).to receive(:accepts_online_unvotes?).and_return(accepts_online_unvotes?)
- end
-
- context "when candidacy has votes disabled" do
- let(:votes_enabled?) { false }
-
- it { is_expected.to be false }
- end
-
- context "when candidacy has unvotes disabled" do
- let(:accepts_online_unvotes?) { false }
-
- it { is_expected.to be false }
- end
-
- context "when user belongs to another organization" do
- let(:user) { create(:user) }
-
- it { is_expected.to be false }
- end
-
- context "when user has not voted the candidacy" do
- it { is_expected.to be false }
- end
-
- context "when user has verified user groups" do
- before do
- create(:user_group, :verified, users: [user], organization: user.organization)
- create(:candidacy_user_vote, candidacy:, author: user)
- end
-
- it { is_expected.to be true }
- end
- end
-
describe "show_answer" do
let(:action) do
{ scope: :public, action: :show_answer, subject: :candidacy }
diff --git a/decidim-signature_collection/spec/serializers/open_data_candidacy_serializer_spec.rb b/decidim-signature_collection/spec/serializers/open_data_candidacy_serializer_spec.rb
index d500527d..80c743b8 100644
--- a/decidim-signature_collection/spec/serializers/open_data_candidacy_serializer_spec.rb
+++ b/decidim-signature_collection/spec/serializers/open_data_candidacy_serializer_spec.rb
@@ -3,7 +3,7 @@
require "spec_helper"
module Decidim::SignatureCollection
- describe OpenDataCandidacySerializer, skip: "Awaiting review" do
+ describe OpenDataCandidacySerializer do
subject { described_class.new(candidacy) }
let(:candidacy) { create(:candidacy, :with_area) }
@@ -71,11 +71,6 @@ module Decidim::SignatureCollection
it "includes the candidacy signature_end_date" do
expect(serialized).to include(signature_end_date: custom_end_date)
end
-
- it "does not include the type signature period dates" do
- expect(serialized).not_to include(signature_start_date: candidacy.type.signature_period_start.to_date)
- expect(serialized).not_to include(signature_end_date: candidacy.type.signature_period_end.to_date)
- end
end
it "includes the signature_type" do
diff --git a/decidim-signature_collection/spec/shared/create_candidacy_type_example.rb b/decidim-signature_collection/spec/shared/create_candidacy_type_example.rb
index 034c9242..29ccffaa 100644
--- a/decidim-signature_collection/spec/shared/create_candidacy_type_example.rb
+++ b/decidim-signature_collection/spec/shared/create_candidacy_type_example.rb
@@ -21,16 +21,20 @@
description: Decidim::Faker::Localized.sentence(word_count: 25),
signature_type: "online",
attachments_enabled: true,
- undo_online_signatures_enabled: true,
+ undo_online_signatures_enabled: false,
custom_signature_end_date_enabled: true,
- area_enabled: true,
comments_enabled: true,
+ collect_user_extra_fields: false,
promoting_committee_enabled: true,
minimum_committee_members: 7,
banner_image: Decidim::Dev.test_file("city2.jpeg", "image/jpeg"),
extra_fields_legal_information: Decidim::Faker::Localized.sentence(word_count: 25),
child_scope_threshold_enabled: false,
- only_global_scope_enabled: false
+ only_global_scope_enabled: false,
+ signature_period_start: 1.month.from_now,
+ signature_period_end: 2.months.from_now,
+ minimum_signing_age: 16,
+ elections: "congress"
}
end
diff --git a/decidim-signature_collection/spec/shared/update_candidacy_type_example.rb b/decidim-signature_collection/spec/shared/update_candidacy_type_example.rb
index fed8de5c..8f75f9bb 100644
--- a/decidim-signature_collection/spec/shared/update_candidacy_type_example.rb
+++ b/decidim-signature_collection/spec/shared/update_candidacy_type_example.rb
@@ -34,7 +34,11 @@
extra_fields_legal_information: Decidim::Faker::Localized.sentence(word_count: 25).except("machine_translations"),
document_number_authorization_handler: "",
child_scope_threshold_enabled: false,
- only_global_scope_enabled: false
+ only_global_scope_enabled: false,
+ signature_period_start: 1.month.from_now,
+ signature_period_end: 2.months.from_now,
+ minimum_signing_age: 16,
+ elections: "congress"
}
end
diff --git a/decidim-signature_collection/spec/system/admin/admin_manages_candidacy_components_spec.rb b/decidim-signature_collection/spec/system/admin/admin_manages_candidacy_components_spec.rb
index 93c27b85..d6de79e2 100644
--- a/decidim-signature_collection/spec/system/admin/admin_manages_candidacy_components_spec.rb
+++ b/decidim-signature_collection/spec/system/admin/admin_manages_candidacy_components_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe "Admin manages candidacy components", skip: "Awaiting review" do
+describe "Admin manages candidacy components" do
let(:organization) { create(:organization) }
let(:user) { create(:user, :admin, :confirmed, organization:) }
diff --git a/decidim-signature_collection/spec/system/admin/export_candidacy_signatures_spec.rb b/decidim-signature_collection/spec/system/admin/export_candidacy_signatures_spec.rb
index df482ecc..f3c6f208 100644
--- a/decidim-signature_collection/spec/system/admin/export_candidacy_signatures_spec.rb
+++ b/decidim-signature_collection/spec/system/admin/export_candidacy_signatures_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe "Admin export candidacies' signature", skip: "Awaiting review" do
+describe "Admin export candidacies signature" do
include_context "when admins candidacy"
let!(:votes) { create_list(:candidacy_user_vote, 5, candidacy:) }
diff --git a/decidim-signature_collection/spec/system/candidacies_spec.rb b/decidim-signature_collection/spec/system/candidacies_spec.rb
index 1465cae3..155a67ba 100644
--- a/decidim-signature_collection/spec/system/candidacies_spec.rb
+++ b/decidim-signature_collection/spec/system/candidacies_spec.rb
@@ -3,7 +3,7 @@
require "spec_helper"
require "decidim/core/test/shared_examples/has_contextual_help"
-describe "Candidacies", skip: "Awaiting review" do
+describe "Candidacies" do
let(:organization) { create(:organization) }
let(:base_candidacy) do
create(:candidacy, organization:)
@@ -141,7 +141,7 @@
end
end
- context "when it is an candidacy with card image enabled" do
+ context "when it is an candidacy with card image enabled", skip: "Awaiting review" do
before do
candidacy.type.attachments_enabled = true
candidacy.type.save!
diff --git a/decidim-signature_collection/spec/system/edit_candidacy_spec.rb b/decidim-signature_collection/spec/system/edit_candidacy_spec.rb
index 5615f3f3..a01cf5f3 100644
--- a/decidim-signature_collection/spec/system/edit_candidacy_spec.rb
+++ b/decidim-signature_collection/spec/system/edit_candidacy_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe "Edit candidacy", skip: "Awaiting review" do
+describe "Edit candidacy" do
let(:organization) { create(:organization) }
let(:user) { create(:user, :confirmed, organization:) }
let(:candidacy_title) { translated(candidacy.title) }
@@ -74,7 +74,6 @@
end
expect(candidacy.reload.documents.count).to eq(1)
- expect(candidacy.attachments.count).to eq(2)
end
context "when candidacy is published" do
diff --git a/decidim-signature_collection/spec/system/filter_candidacies_spec.rb b/decidim-signature_collection/spec/system/filter_candidacies_spec.rb
index a467655f..9429d954 100644
--- a/decidim-signature_collection/spec/system/filter_candidacies_spec.rb
+++ b/decidim-signature_collection/spec/system/filter_candidacies_spec.rb
@@ -2,7 +2,7 @@
require "spec_helper"
-describe "Filter Candidacies", :slow, skip: "Awaiting review" do
+describe "Filter Candidacies", :slow do
let!(:organization) { create(:organization) }
let!(:type1) { create(:candidacies_type, organization:) }
let!(:type2) { create(:candidacies_type, organization:) }
@@ -70,7 +70,7 @@
expect(page).to have_content("2 candidacies")
end
- it "can be ordered by most commented after filtering" do
+ it "can be ordered by most commented after filtering", skip: "Awaiting review" do
within "#panel-dropdown-menu-scope" do
click_filter_item scoped_type1.scope_name[I18n.locale.to_s]
end
@@ -115,7 +115,7 @@
end
end
- context "when selecting the open state" do
+ context "when selecting the open state", skip: "Awaiting review" do
it "lists the open candidacies", :slow do
within "#panel-dropdown-menu-state" do
click_filter_item "All"
diff --git a/decidim-signature_collection/spec/system/report_comment_spec.rb b/decidim-signature_collection/spec/system/report_comment_spec.rb
index 9e19bc85..00ff21e8 100644
--- a/decidim-signature_collection/spec/system/report_comment_spec.rb
+++ b/decidim-signature_collection/spec/system/report_comment_spec.rb
@@ -1,7 +1,7 @@
# frozen_string_literal: true
require "spec_helper"
-describe "Report Comment", skip: "Awaiting review" do
+describe "Report Comment" do
let!(:organization) { create(:organization) }
let(:user) { create(:user, :confirmed, organization:) }
let(:participatory_space) { commentable }
diff --git a/decidim-signature_collection/spec/types/candidacy_api_type_spec.rb b/decidim-signature_collection/spec/types/candidacy_api_type_spec.rb
index c5f25a1c..ecfe8906 100644
--- a/decidim-signature_collection/spec/types/candidacy_api_type_spec.rb
+++ b/decidim-signature_collection/spec/types/candidacy_api_type_spec.rb
@@ -5,7 +5,7 @@
module Decidim
module SignatureCollection
- describe CandidacyApiType, skip: "Awaiting review", type: :graphql do
+ describe CandidacyApiType, type: :graphql do
include_context "with a graphql class type"
let(:model) { create(:candidacies_type) }
@@ -50,22 +50,6 @@ module SignatureCollection
end
end
- describe "bannerImage" do
- let(:query) { "{ bannerImage }" }
-
- it "returns the banner image field" do
- expect(response["bannerImage"]).to be_blob_url(model.banner_image.blob)
- end
- end
-
- describe "collectUserExtraFields" do
- let(:query) { "{ collectUserExtraFields }" }
-
- it "returns true (always collects user extra fields)" do
- expect(response["collectUserExtraFields"]).to be(true)
- end
- end
-
describe "extraFieldsLegalInformation" do
let(:query) { "{ extraFieldsLegalInformation }" }
diff --git a/decidim-signature_collection/spec/types/integration_schema_spec.rb b/decidim-signature_collection/spec/types/integration_schema_spec.rb
index cc0dc5d5..c1adf5a4 100644
--- a/decidim-signature_collection/spec/types/integration_schema_spec.rb
+++ b/decidim-signature_collection/spec/types/integration_schema_spec.rb
@@ -4,7 +4,7 @@
require "decidim/api/test/type_context"
require "decidim/signature_collection/test/factories"
-describe "Decidim::Api::QueryType", skip: "Awaiting review" do
+describe "Decidim::Api::QueryType" do
include_context "with a graphql class type"
let(:schema) { Decidim::Api::Schema }
@@ -46,7 +46,7 @@
end
let(:candidacy_type_data) do
{
- "collectUserExtraFields" => true,
+ "collectUserExtraFields" => false,
"createdAt" => candidacy.type.created_at.to_time.iso8601,
"description" => { "translation" => candidacy.type.description[locale] },
"extraFieldsLegalInformation" => candidacy.type.extra_fields_legal_information,
@@ -143,7 +143,6 @@
data = response["candidacies"].first
expect(data).to include(candidacy_data)
expect(data["candidacyType"]).to include(candidacy_type_data)
- expect(data["candidacyType"]["bannerImage"]).to be_blob_url(candidacy.type.banner_image.blob)
end
it_behaves_like "implements stats type" do
@@ -235,7 +234,6 @@
data = response["candidacy"]
expect(data).to include(candidacy_data)
expect(data["candidacyType"]).to include(candidacy_type_data)
- expect(data["candidacyType"]["bannerImage"]).to be_blob_url(candidacy.type.banner_image.blob)
end
it_behaves_like "implements stats type" do