tests: improve remote invoices notification code coverage (#24191)

This commit is contained in:
Serghei Mihai 2018-05-31 17:24:18 +02:00 committed by Frédéric Péters
parent 5ae2983c9a
commit 2948c26c2f
2 changed files with 15 additions and 2 deletions

View File

@ -276,7 +276,7 @@ def test_notification_id_and_origin(user):
@mock.patch('combo.utils.requests_wrapper.RequestsSession.request')
def test_notify_remote_items(mock_get, app, user, user2, regie):
def test_notify_remote_items(mock_get, app, user, user2, regie, monkeypatch):
invoice_now = now()
creation_date = (invoice_now - timedelta(days=1)).date().isoformat()
pay_limit_date = (invoice_now + timedelta(days=20)).date().isoformat()
@ -348,12 +348,23 @@ def test_notify_remote_items(mock_get, app, user, user2, regie):
mock_response = mock.Mock(status_code=200, content=json.dumps(FAKE_PENDING_INVOICES))
mock_response.json.return_value = FAKE_PENDING_INVOICES
mock_get.return_value = mock_response
# make sure the regie is not remote
regie.webservice_url = ''
regie.save()
regie.notify_new_remote_invoices()
assert mock_get.call_count == 0
regie.webservice_url = 'http://example.org/regie' # is_remote
regie.save()
regie.notify_new_remote_invoices()
mock_get.assert_not_called()
mock_get.assert_called_once()
from combo.apps.lingo import models
monkeypatch.setattr(models, 'UserSAMLIdentifier', None)
regie.notify_new_remote_invoices()
# make sure no other requests calls are made
assert mock_get.call_count == 1
with mock.patch('combo.apps.lingo.models.UserSAMLIdentifier') as user_saml:
# simulate class exception

View File

@ -23,7 +23,9 @@ deps =
quixote<3.0
vobject
psycopg2
django-mellon
commands =
./getlasso.sh
python manage.py compilemessages
./get_wcs.sh
django18: py.test {posargs: --junitxml=test_{envname}_results.xml --cov-report xml --cov-report html --cov=combo/ tests/}