newsletters: assume no transport restrictions means they're all ok (#13211)
This commit is contained in:
parent
7b22f9fdf7
commit
8e1373022f
|
@ -103,17 +103,15 @@ class NewslettersCell(CellBase):
|
|||
|
||||
def check_transport(self, transport):
|
||||
restrictions = self.get_transports_restrictions()
|
||||
if restrictions and transport in restrictions:
|
||||
return True
|
||||
return False
|
||||
if restrictions and transport not in restrictions:
|
||||
return False
|
||||
return True
|
||||
|
||||
def filter_data(self, data):
|
||||
filtered = []
|
||||
for item in data:
|
||||
if not self.check_resource(item['text']):
|
||||
continue
|
||||
if not self.transports_restrictions:
|
||||
filtered.append(item)
|
||||
for t in item['transports']:
|
||||
if self.check_transport(t['id']):
|
||||
filtered.append(item)
|
||||
|
|
|
@ -91,10 +91,23 @@ def test_get_newsletters_by_transports(mock_get, cell):
|
|||
mock_get.return_value = mock_json
|
||||
assert cell.get_newsletters() == expected_newsletters
|
||||
|
||||
@mock.patch('combo.apps.newsletters.models.requests.get')
|
||||
def test_get_newsletters_by_unrestricted_transports(mock_get, cell):
|
||||
cell.transports_restrictions = ''
|
||||
expected_newsletters = []
|
||||
for n in NEWSLETTERS:
|
||||
for t in n['transports']:
|
||||
expected_newsletters.append(n)
|
||||
mock_json = mock.Mock()
|
||||
mock_json.json.return_value = {'err': 0,
|
||||
'data': NEWSLETTERS}
|
||||
mock_get.return_value = mock_json
|
||||
assert cell.get_newsletters() == expected_newsletters
|
||||
|
||||
@mock.patch('combo.apps.newsletters.models.requests.get')
|
||||
def test_get_newsletters_by_resources(mock_get, cell):
|
||||
restrictions = ('marches-publics', 'familles', 'democratie-locale')
|
||||
cell.transports_restrictions = 'mail'
|
||||
cell.resources_restrictions = ','.join(restrictions)
|
||||
expected_newsletters = []
|
||||
for n in NEWSLETTERS:
|
||||
|
|
Loading…
Reference in New Issue