1548 |
1548 |
assert 'new transaction_date for transaction' in caplog.text
|
1549 |
1549 |
|
1550 |
1550 |
|
1551 |
|
def test_successfull_items_can_pay_only_one_basket_item(app, basket_page, regie, user):
|
|
1551 |
@pytest.fixture
|
|
1552 |
def mono_regie(regie):
|
1552 |
1553 |
regie.can_pay_only_one_basket_item = True
|
1553 |
1554 |
regie.save()
|
1554 |
|
item = BasketItem.objects.create(user=user, regie=regie, amount=42, subject='foo item')
|
1555 |
|
BasketItem.objects.create(user=user, regie=regie, amount=84, subject='bar item')
|
|
1555 |
return regie
|
|
1556 |
|
|
1557 |
|
|
1558 |
def test_successfull_items_can_pay_only_one_basket_item(app, basket_page, mono_regie, user):
|
|
1559 |
item = BasketItem.objects.create(user=user, regie=mono_regie, amount=42, subject='foo item')
|
|
1560 |
BasketItem.objects.create(user=user, regie=mono_regie, amount=84, subject='bar item')
|
1556 |
1561 |
|
1557 |
1562 |
resp = login(app).get('/test_basket_cell/')
|
1558 |
1563 |
assert 'foo item' in resp.text
|
... | ... | |
1565 |
1570 |
assert qs['subject'][0] == 'foo item', 'item.subject was not provided to eopayment'
|
1566 |
1571 |
args = {'transaction_id': qs['transaction_id'][0], 'signed': True, 'ok': True, 'reason': 'Paid'}
|
1567 |
1572 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request'):
|
1568 |
|
resp = app.get(get_url(True, 'lingo-callback', regie), params=args)
|
|
1573 |
resp = app.get(get_url(True, 'lingo-callback', mono_regie), params=args)
|
1569 |
1574 |
|
1570 |
1575 |
resp = app.get('/test_basket_cell/')
|
1571 |
1576 |
assert 'foo item' not in resp.text
|
... | ... | |
1573 |
1578 |
|
1574 |
1579 |
|
1575 |
1580 |
@mock.patch('combo.apps.lingo.models.BasketItem.get_items_to_be_paid')
|
1576 |
|
def test_failure_can_only_pay_one_basket_item(get_items_to_be_paid, app, regie, user, user_name_id, caplog):
|
1577 |
|
regie.can_pay_only_one_basket_item = True
|
1578 |
|
regie.save()
|
1579 |
|
|
|
1581 |
def test_failure_can_only_pay_one_basket_item(get_items_to_be_paid, app, mono_regie, user, user_name_id, caplog):
|
1580 |
1582 |
item = mock.Mock(spec=['capture_date'], capture_date=None)
|
1581 |
1583 |
get_items_to_be_paid.return_value.filter.return_value = [item, item]
|
1582 |
1584 |
|
... | ... | |
1586 |
1588 |
assert '_messages' not in app.session
|
1587 |
1589 |
assert len(caplog.records) == 0
|
1588 |
1590 |
response = app.post('/lingo/pay', params={
|
1589 |
|
'regie': regie.id,
|
|
1591 |
'regie': mono_regie.id,
|
1590 |
1592 |
'csrfmiddlewaretoken': token,
|
1591 |
1593 |
})
|
1592 |
1594 |
assert 'Grouping basket items is not allowed.' in app.session['_messages']
|
1593 |
|
-
|