Esempio n. 1
0
def test_require_batch_id_not_advanced_if_same_node(message):
    batch_identifier = get_operation(message).batch_identifier

    require_batch_id_not_advanced_if_same_node(
        RolledBack(
            publisher=message.header.publisher,
            batch_identifier=batch_identifier,
        ),
        0,
        message,
    )

    require_batch_id_not_advanced_if_same_node(
        RolledBack(
            publisher=message.header.publisher,
            batch_identifier=copy(batch_identifier, node=uuid.uuid1().bytes),
        ),
        0,
        message,
    )

    with pytest.raises(InvalidBatch):
        require_batch_id_not_advanced_if_same_node(
            RolledBack(
                publisher=message.header.publisher,
                batch_identifier=copy(batch_identifier, id=batch_identifier.id + 1),
            ),
            0,
            message,
        )
Esempio n. 2
0
def test_require_same_batch(message):
    batch_identifier = get_operation(message).batch_identifier

    require_same_batch(
        InTransaction(
            publisher=message.header.publisher,
            batch_identifier=batch_identifier,
        ),
        0,
        message,
    )

    with pytest.raises(InvalidBatch):
        require_same_batch(
            InTransaction(
                publisher=message.header.publisher,
                batch_identifier=copy(batch_identifier, id=batch_identifier.id + 1),
            ),
            0,
            message,
        )
Esempio n. 3
0
def test_require_different_publisher(message):
    batch_identifier = get_operation(message).batch_identifier

    require_different_publisher(
        Committed(
            publisher=uuid.uuid1().bytes,  # change the publisher
            batch_identifier=batch_identifier,
        ),
        0,
        message,
    )

    with pytest.raises(InvalidPublisher):
        require_different_publisher(
            Committed(
                publisher=message.header.publisher,
                batch_identifier=batch_identifier,
            ),
            0,
            message,
        )