0001-wcs-ignore-case-spaces-in-tracking-code-34156.patch
combo/apps/wcs/views.py | ||
---|---|---|
42 | 42 | |
43 | 43 |
@classmethod |
44 | 44 |
def search(self, code, wcs_site=None): |
45 |
code = code.strip().upper() |
|
45 | 46 |
if wcs_site: |
46 | 47 |
wcs_sites = [get_wcs_services().get(wcs_site)] |
47 | 48 |
else: |
... | ... | |
86 | 87 |
def tracking_code_search(request): |
87 | 88 |
hits = [] |
88 | 89 |
query = request.GET.get('q') or '' |
90 |
query = query.strip().upper() |
|
89 | 91 |
if re.match(r'^[BCDFGHJKLMNPQRSTVWXZ]{8}$', query): |
90 | 92 |
url = TrackingCodeView.search(query) |
91 | 93 |
if url: |
tests/test_wcs.py | ||
---|---|---|
636 | 636 |
assert resp.status_code == 302 |
637 | 637 |
assert resp.location == 'http://127.0.0.2:8999/code/CNPHNTFB/load' |
638 | 638 | |
639 |
# space/case |
|
640 |
resp = app.get('/') |
|
641 |
resp.form['code'] = ' cnphntfb' |
|
642 |
resp = resp.form.submit() |
|
643 |
assert resp.status_code == 302 |
|
644 |
assert resp.location == 'http://127.0.0.2:8999/code/CNPHNTFB/load' |
|
645 | ||
639 | 646 |
# lock cell to a single site |
640 | 647 |
cell.wcs_site = 'default' |
641 | 648 |
cell.save() |
... | ... | |
711 | 718 |
assert len(app.get('/api/search/tracking-code/?q=BBCCDDFF').json.get('data')) == 0 |
712 | 719 |
assert len(app.get('/api/search/tracking-code/?q=CNPHNTFB').json.get('data')) == 1 |
713 | 720 |
assert len(app.get('/api/search/tracking-code/?q=BBCCDDFFG').json.get('data')) == 0 |
721 |
assert len(app.get('/api/search/tracking-code/?q= cnphntfb').json.get('data')) == 1 |
|
714 | 722 | |
715 | 723 |
@wcsctl_present |
716 | 724 |
def test_wcs_search_engines(app): |
717 |
- |