Adding permission tests for epic related user stories

remotes/origin/issue/4795/notification_even_they_are_disabled
Alejandro Alonso 2016-08-25 10:08:27 +02:00 committed by David Barragán Merino
parent 7313dfd996
commit 544cdc00d0
2 changed files with 6 additions and 31 deletions

View File

@ -136,6 +136,7 @@ def update_epic_related_userstories_order_in_bulk(bulk_data: list, epic: object)
[{'us_id': <value>, 'order': <value>}, ...] [{'us_id': <value>, 'order': <value>}, ...]
""" """
related_user_stories = epic.relateduserstory_set.all() related_user_stories = epic.relateduserstory_set.all()
# select_related
rus_orders = {rus.id: rus.order for rus in related_user_stories} rus_orders = {rus.id: rus.order for rus in related_user_stories}
rus_conversion = {rus.user_story_id: rus.id for rus in related_user_stories} rus_conversion = {rus.user_story_id: rus.id for rus in related_user_stories}
@ -274,7 +275,8 @@ def _get_epics_assigned_to(project, queryset):
FROM projects_membership FROM projects_membership
LEFT OUTER JOIN counters ON ("projects_membership"."user_id" = "counters"."assigned_to_id") LEFT OUTER JOIN counters ON ("projects_membership"."user_id" = "counters"."assigned_to_id")
INNER JOIN "users_user" ON ("projects_membership"."user_id" = "users_user"."id") INNER JOIN "users_user" ON ("projects_membership"."user_id" = "users_user"."id")
WHERE "projects_membership"."project_id" = %s AND "projects_membership"."user_id" IS NOT NULL WHERE "projects_membership"."project_id" = %s
AND "projects_membership"."user_id" IS NOT NULL
-- unassigned epics -- unassigned epics
UNION UNION
@ -336,7 +338,8 @@ def _get_epics_owners(project, queryset):
FROM projects_membership FROM projects_membership
LEFT OUTER JOIN counters ON ("projects_membership"."user_id" = "counters"."owner_id") LEFT OUTER JOIN counters ON ("projects_membership"."user_id" = "counters"."owner_id")
INNER JOIN "users_user" ON ("projects_membership"."user_id" = "users_user"."id") INNER JOIN "users_user" ON ("projects_membership"."user_id" = "users_user"."id")
WHERE "projects_membership"."project_id" = %s AND "projects_membership"."user_id" IS NOT NULL WHERE "projects_membership"."project_id" = %s
AND "projects_membership"."user_id" IS NOT NULL
-- System users -- System users
UNION UNION

View File

@ -675,34 +675,6 @@ def test_epic_action_bulk_create(client, data):
assert results == [401, 403, 403, 451, 451] assert results == [401, 403, 403, 451, 451]
def test_bulk_create_related_userstories(client, data):
public_url = reverse('epics-related-userstories-bulk-create', args=[data.public_epic.pk])
private_url1 = reverse('epics-related-userstories-bulk-create', args=[data.private_epic1.pk])
private_url2 = reverse('epics-related-userstories-bulk-create', args=[data.private_epic2.pk])
blocked_url = reverse('epics-related-userstories-bulk-create', args=[data.blocked_epic.pk])
users = [
None,
data.registered_user,
data.project_member_without_perms,
data.project_member_with_perms,
data.project_owner
]
bulk_data = json.dumps({
"userstories": "test1\ntest2",
})
results = helper_test_http_method(client, 'post', public_url, bulk_data, users)
assert results == [401, 403, 403, 200, 200]
results = helper_test_http_method(client, 'post', private_url1, bulk_data, users)
assert results == [401, 403, 403, 200, 200]
results = helper_test_http_method(client, 'post', private_url2, bulk_data, users)
assert results == [401, 403, 403, 200, 200]
results = helper_test_http_method(client, 'post', blocked_url, bulk_data, users)
assert results == [401, 403, 403, 451, 451]
def test_epic_action_upvote(client, data): def test_epic_action_upvote(client, data):
public_url = reverse('epics-upvote', kwargs={"pk": data.public_epic.pk}) public_url = reverse('epics-upvote', kwargs={"pk": data.public_epic.pk})
private_url1 = reverse('epics-upvote', kwargs={"pk": data.private_epic1.pk}) private_url1 = reverse('epics-upvote', kwargs={"pk": data.private_epic1.pk})