Exemple #1
0
def test_hash_equal(alpha, beta):
    """ asserts two equal MD objects have the same hash."""

    alpha = MarkForDeletion(*alpha)
    beta = MarkForDeletion(*beta)

    assert hash(alpha) == hash(beta)
Exemple #2
0
def test_ne(data_a, data_b):
    marked_a, reason_a, reporter_a = data_a
    md_a = MarkForDeletion(marked_a, reporter_a, reason_a)

    marked_b, reason_b, reporter_b = data_b
    md_b = MarkForDeletion(marked_b, reporter_b, reason_b)
    assert md_a != md_b
Exemple #3
0
def test_mark_for_deletion_unset(rescue_sop_fx: Rescue):
    """
    Verify unmarking a case that was MD'ed works as expected
    """
    rescue_sop_fx.marked_for_deletion = MarkForDeletion(
        True, "unit_test[BOT]", "unit test reasons!")

    rescue_sop_fx.unmark_delete()
    assert rescue_sop_fx.marked_for_deletion.marked is False
    assert rescue_sop_fx.marked_for_deletion.reporter is None
    assert rescue_sop_fx.marked_for_deletion.reason is None
Exemple #4
0
def test_mark_for_deletion_setter_bad_data(
        reason: str or None, reporter: str or None, marked: bool,
        mark_for_deletion_fx: MarkForDeletion):
    """
    Verifies setting the mark for deletion property succeeds only when the data is valid

        Args:
            reason (str): md reason
            reporter(str) md reporter
    """
    with pytest.raises(TypeError):
        mark_for_deletion_fx.reason = reason

    with pytest.raises(TypeError):
        mark_for_deletion_fx.reporter = reporter

    with pytest.raises(TypeError):
        mark_for_deletion_fx.marked = marked

    assert isinstance(mark_for_deletion_fx.marked, bool)
    assert mark_for_deletion_fx.reason != reason
    assert mark_for_deletion_fx.reporter != reporter
Exemple #5
0
def test_eq(marked: bool, reason: Optional[str], reporter: Optional[str]):
    md_a = MarkForDeletion(marked, reporter, reason)
    md_b = MarkForDeletion(marked, reporter, reason)
    assert md_a == md_b
Exemple #6
0
def test_hash_unequal(alpha, beta):
    """asserts two unequal Md objects do not have the same hash."""
    alpha = MarkForDeletion(*alpha)
    beta = MarkForDeletion(*beta)

    assert hash(alpha) != hash(beta)
Exemple #7
0
def mark_for_deletion_fx(request) -> MarkForDeletion:
    """Provides a parameterized MFD object"""
    param = request.param
    return MarkForDeletion(marked=param[0], reporter=param[1], reason=param[2])
Exemple #8
0
def mark_for_deletion_plain_fx() -> MarkForDeletion:
    """Provides a plain MFD object"""
    return MarkForDeletion(False)