Code Duplication    Length = 31-32 lines in 2 locations

tests/integration/services/shop/order/actions/test_create_ticket_bundles.py 1 location

@@ 47-78 (lines=32) @@
44
    action_service.delete_actions(article.item_number)
45
46
47
def test_create_ticket_bundles(
48
    admin_app,
49
    article,
50
    ticket_category,
51
    ticket_quantity,
52
    bundle_quantity,
53
    admin_user,
54
    orderer,
55
    order,
56
    order_action,
57
):
58
    tickets_before_paid = get_tickets_for_order(order)
59
    assert len(tickets_before_paid) == 0
60
61
    mark_order_as_paid(order.id, admin_user.id)
62
63
    tickets_after_paid = get_tickets_for_order(order)
64
    assert len(tickets_after_paid) == ticket_quantity * bundle_quantity
65
66
    for ticket in tickets_after_paid:
67
        assert ticket.owned_by_id == orderer.user_id
68
        assert ticket.used_by_id == orderer.user_id
69
70
    events = order_event_service.get_events_for_order(order.id)
71
    ticket_bundle_created_events = {
72
        event
73
        for event in events
74
        if event.event_type == 'ticket-bundle-created'
75
    }
76
    assert len(ticket_bundle_created_events) == bundle_quantity
77
78
    tear_down_bundles(tickets_after_paid)
79
80
81
# helpers

tests/integration/services/shop/order/actions/test_create_tickets.py 1 location

@@ 48-78 (lines=31) @@
45
    action_service.delete_actions(article.item_number)
46
47
48
def test_create_tickets(
49
    admin_app,
50
    article,
51
    ticket_category,
52
    ticket_quantity,
53
    admin_user,
54
    orderer,
55
    order,
56
    order_action,
57
):
58
    tickets_before_paid = get_tickets_for_order(order)
59
    assert len(tickets_before_paid) == 0
60
61
    mark_order_as_paid(order.id, admin_user.id)
62
63
    tickets_after_paid = get_tickets_for_order(order)
64
    assert len(tickets_after_paid) == ticket_quantity
65
66
    for ticket in tickets_after_paid:
67
        assert ticket.owned_by_id == orderer.user_id
68
        assert ticket.used_by_id == orderer.user_id
69
70
    events = order_event_service.get_events_for_order(order.id)
71
    ticket_created_events = {
72
        event for event in events if event.event_type == 'ticket-created'
73
    }
74
    assert len(ticket_created_events) == ticket_quantity
75
76
    # Clean up.
77
    for ticket in tickets_after_paid:
78
        ticket_service.delete_ticket(ticket.id)
79
80
81
@patch('byceps.services.ticketing.ticket_code_service._generate_ticket_code')