def test_exact_match_returns_true_if_something_matched(mock_match):
    mock_match.return_value = iter([{'_source': {'control_number': 4328}}])

    data = {}
    extra_data = {}

    obj = MockObj(data, extra_data)
    eng = MockEng()

    assert exact_match(obj, eng)
    assert 'matches' in obj.extra_data

    expected = [4328]
    result = get_value(obj.extra_data, 'matches.exact')

    assert expected == result
def test_exact_match_returns_true_if_something_matched(mock_match):
    mock_match.return_value = iter([{'_source': {'control_number': 4328}}])

    data = {}
    extra_data = {}

    obj = MockObj(data, extra_data)
    eng = MockEng()

    assert exact_match(obj, eng)
    assert 'matches' in obj.extra_data

    expected = [4328]
    result = get_value(obj.extra_data, 'matches.exact')

    assert expected == result
def test_exact_match_returns_false_if_nothing_matched(mock_match):
    mock_match.return_value = iter([])

    data = {}
    extra_data = {}

    obj = MockObj(data, extra_data)
    eng = MockEng()

    assert not exact_match(obj, eng)
    assert 'matches' in obj.extra_data

    expected = []
    result = get_value(obj.extra_data, 'matches.exact')

    assert expected == result
def test_exact_match_returns_false_if_nothing_matched(mock_match):
    mock_match.return_value = iter([])

    data = {}
    extra_data = {}

    obj = MockObj(data, extra_data)
    eng = MockEng()

    assert not exact_match(obj, eng)
    assert 'matches' in obj.extra_data

    expected = []
    result = get_value(obj.extra_data, 'matches.exact')

    assert expected == result