Projet

Général

Profil

0001-backoffice-ignore-callback-query-parameter-when-coun.patch

Frédéric Péters, 05 février 2016 17:00

Télécharger (2,17 ko)

Voir les différences:

Subject: [PATCH] backoffice: ignore callback query parameter when counting
 forms (#9884)

 tests/test_backoffice_pages.py | 9 +++++++++
 wcs/backoffice/management.py   | 4 +++-
 2 files changed, 12 insertions(+), 1 deletion(-)
tests/test_backoffice_pages.py
1487 1487
    formdef.data_class().rebuild_security()
1488 1488
    resp = login(get_app(pub)).get('/backoffice/management/count?waiting=no')
1489 1489
    assert resp.json['count'] == 37
1490
    resp = login(get_app(pub)).get('/backoffice/management/count?waiting=yes')
1491
    assert resp.json['count'] == 20
1492
    resp = login(get_app(pub)).get('/backoffice/management/count')
1493
    assert resp.json['count'] == 20
1494

  
1495
    # check the callback parameter is ignored, that we still get the default
1496
    # criterias when it's set.
1497
    resp = login(get_app(pub)).get('/backoffice/management/count?callback=toto')
1498
    assert "20" in resp.body
1490 1499

  
1491 1500
def test_count_backoffice_drafts(pub):
1492 1501
    user = create_user(pub)
wcs/backoffice/management.py
655 655
        user_roles = [logged_users_role().id] + (get_request().user.roles or [])
656 656
        criterias = get_global_criteria(get_request(), parsed_values)
657 657
        criterias.append(Equal('is_at_endpoint', False))
658
        if not get_request().form or get_request().form.get('waiting') == 'yes':
658
        query_parameters = (get_request().form or {}).copy()
659
        query_parameters.pop('callback', None)
660
        if not query_parameters or get_request().form.get('waiting') == 'yes':
659 661
            criterias.append(Intersects('actions_roles_array', user_roles))
660 662
        else:
661 663
            criterias.append(Intersects('concerned_roles_array', user_roles))
662
-