mirror of
https://github.com/lucaspalomodevelop/eventcally.git
synced 2026-03-13 00:07:22 +00:00
Merge pull request #296 from DanielGrams/issue/295
Referenz einfacher löschen #295
This commit is contained in:
commit
4f7edd2378
@ -49,7 +49,6 @@ describe("Reference", () => {
|
||||
cy.createAdminUnit().then(function (adminUnitId) {
|
||||
cy.createIncomingReference(adminUnitId).then(function (referenceId) {
|
||||
cy.visit("/reference/" + referenceId + "/delete");
|
||||
cy.get("#name").type("Name");
|
||||
cy.screenshot("delete");
|
||||
cy.get("#submit").click();
|
||||
cy.url().should(
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
from flask_babelex import lazy_gettext
|
||||
from flask_wtf import FlaskForm
|
||||
from wtforms import SelectField, StringField, SubmitField
|
||||
from wtforms import SelectField, SubmitField
|
||||
from wtforms.validators import DataRequired
|
||||
|
||||
from project.forms.common import event_rating_choices
|
||||
@ -37,4 +37,3 @@ class UpdateEventReferenceForm(FlaskForm):
|
||||
|
||||
class DeleteReferenceForm(FlaskForm):
|
||||
submit = SubmitField(lazy_gettext("Delete reference"))
|
||||
name = StringField(lazy_gettext("Name"), validators=[DataRequired()])
|
||||
|
||||
@ -7,18 +7,7 @@
|
||||
|
||||
<form action="" method="POST">
|
||||
{{ form.hidden_tag() }}
|
||||
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
{{ _('Event') }}
|
||||
</div>
|
||||
<div class="card-body">
|
||||
{{ render_field_with_errors(form.name) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ render_field(form.submit) }}
|
||||
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
||||
|
||||
@ -22,12 +22,7 @@ from project.services.reference import (
|
||||
get_reference_incoming_query,
|
||||
get_reference_outgoing_query,
|
||||
)
|
||||
from project.views.utils import (
|
||||
flash_errors,
|
||||
get_pagination_urls,
|
||||
handleSqlError,
|
||||
non_match_for_deletion,
|
||||
)
|
||||
from project.views.utils import flash_errors, get_pagination_urls, handleSqlError
|
||||
|
||||
|
||||
@app.route("/reference/<int:id>")
|
||||
@ -158,22 +153,19 @@ def reference_delete(id):
|
||||
form = DeleteReferenceForm()
|
||||
|
||||
if form.validate_on_submit():
|
||||
if non_match_for_deletion(form.name.data, reference.event.name):
|
||||
flash(gettext("Entered name does not match event name"), "danger")
|
||||
else:
|
||||
try:
|
||||
db.session.delete(reference)
|
||||
db.session.commit()
|
||||
flash(gettext("Reference successfully deleted"), "success")
|
||||
return redirect(
|
||||
url_for(
|
||||
"manage_admin_unit_references_incoming",
|
||||
id=reference.admin_unit_id,
|
||||
)
|
||||
try:
|
||||
db.session.delete(reference)
|
||||
db.session.commit()
|
||||
flash(gettext("Reference successfully deleted"), "success")
|
||||
return redirect(
|
||||
url_for(
|
||||
"manage_admin_unit_references_incoming",
|
||||
id=reference.admin_unit_id,
|
||||
)
|
||||
except SQLAlchemyError as e:
|
||||
db.session.rollback()
|
||||
flash(handleSqlError(e), "danger")
|
||||
)
|
||||
except SQLAlchemyError as e:
|
||||
db.session.rollback()
|
||||
flash(handleSqlError(e), "danger")
|
||||
else:
|
||||
flash_errors(form)
|
||||
|
||||
|
||||
@ -123,8 +123,7 @@ def test_update(client, seeder, utils, app, mocker, db_error):
|
||||
|
||||
|
||||
@pytest.mark.parametrize("db_error", [True, False])
|
||||
@pytest.mark.parametrize("non_match", [True, False])
|
||||
def test_delete(client, seeder, utils, app, mocker, db_error, non_match):
|
||||
def test_delete(client, seeder, utils, app, mocker, db_error):
|
||||
user_id, admin_unit_id = seeder.setup_base()
|
||||
(
|
||||
other_user_id,
|
||||
@ -139,26 +138,12 @@ def test_delete(client, seeder, utils, app, mocker, db_error, non_match):
|
||||
if db_error:
|
||||
utils.mock_db_commit(mocker)
|
||||
|
||||
form_name = "Name"
|
||||
|
||||
if non_match:
|
||||
form_name = "Falscher Name"
|
||||
|
||||
response = utils.post_form(
|
||||
url,
|
||||
response,
|
||||
{
|
||||
"name": form_name,
|
||||
},
|
||||
{},
|
||||
)
|
||||
|
||||
if non_match:
|
||||
utils.assert_response_error_message(
|
||||
response,
|
||||
b"Der eingegebene Name entspricht nicht dem Namen der Veranstaltung",
|
||||
)
|
||||
return
|
||||
|
||||
if db_error:
|
||||
utils.assert_response_db_error(response)
|
||||
return
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user