Projet

Général

Profil

0001-wcs-limit-forms-tracking-codes-search-engine-to-agen.patch

Frédéric Péters, 25 février 2020 15:14

Télécharger (2,66 ko)

Voir les différences:

Subject: [PATCH] wcs: limit forms/tracking codes search engine to agent portal
 (#30508)

 combo/apps/wcs/__init__.py | 4 ++++
 tests/test_wcs.py          | 7 +++++++
 2 files changed, 11 insertions(+)
combo/apps/wcs/__init__.py
17 17
import hashlib
18 18

  
19 19
import django.apps
20
from django.conf import settings
20 21
from django.core.urlresolvers import reverse
21 22
from django.utils.encoding import force_bytes
22 23
from django.utils.translation import ugettext_lazy as _, pgettext_lazy
......
36 37
        if not services:
37 38
            return
38 39

  
40
        if not settings.TEMPLATE_VARS.get('is_portal_agent'):
41
            return
42

  
39 43
        engines = {
40 44
            'tracking-code': {
41 45
                'url': reverse('wcs-tracking-code-search') + '?q=%(q)s',
tests/test_wcs.py
833 833

  
834 834
@wcs_present
835 835
def test_tracking_code_search(app, nocache):
836
    settings.TEMPLATE_VARS['is_portal_agent'] = True
836 837
    assert len(app.get('/api/search/tracking-code/').json.get('data')) == 0
837 838
    assert app.get('/api/search/tracking-code/').json.get('err') == 0
838 839
    assert len(app.get('/api/search/tracking-code/?q=123').json.get('data')) == 0
......
844 845

  
845 846
@wcs_present
846 847
def test_tracking_code_search_rate_limit(app):
848
    settings.TEMPLATE_VARS['is_portal_agent'] = True
847 849
    for i in range(3):
848 850
        assert app.get('/api/search/tracking-code/?q=BBCCDDFF').json.get('err') == 0
849 851
    assert app.get('/api/search/tracking-code/?q=BBCCDDFF').json.get('err') == 1
......
873 875

  
874 876
@wcs_present
875 877
def test_wcs_search_engines(app):
878
    settings.TEMPLATE_VARS['is_portal_agent'] = True
876 879
    search_engines = engines.get_engines()
877 880
    assert 'tracking-code' in search_engines.keys()
878 881
    assert len([x for x in search_engines.keys() if x.startswith('formdata:')]) == 2
882
    settings.TEMPLATE_VARS['is_portal_agent'] = False
883
    search_engines = engines.get_engines()
884
    assert 'tracking-code' not in search_engines.keys()
885
    assert len([x for x in search_engines.keys() if x.startswith('formdata:')]) == 0
879 886

  
880 887
@wcs_present
881 888
def test_backoffice_submission_cell_render(context):
882
-