Ejemplo n.º 1
0
def test_merge_reports():
    r1 = Report()
    r1.add("some error message #1")
    r2 = Report(soft=False)
    r2.add("some error message #2")
    assert r1.merge(r2) is True
    assert r1.errors == ["some error message #1", "some error message #2"]
    assert str(r1) == "some error message #1\nsome error message #2"
Ejemplo n.º 2
0
    def validate(self, current_data: Any) -> Report:
        expected = list(
            filtered_by_type(self.expected_data, type(current_data)))
        if not expected and self.expected_data:
            report = Report(soft=True)
            message = format_error_message(self, current_data)
            report.add("Not valid data: %s" % message)
            return report

        results = {}
        for exp_data in expected:
            report = Report(soft=True)
            checker = Validator(expected_data=exp_data, report=report)
            checker.validate(current_data)
            if not report.has_errors():
                return report
            results[len(report)] = report

        min_error = min(list(results.keys()))
        return results[min_error]
Ejemplo n.º 3
0
def test_not_equal_report(exp_message):
    r = Report()
    r.add("some error message")
    assert r != exp_message
Ejemplo n.º 4
0
def test_equal_report(exp_message):
    r = Report()
    r.add("error")
    assert r == exp_message
Ejemplo n.º 5
0
def test_report_has_errors():
    r = Report(soft=True)
    r.add("some error message")
    assert r.has_errors()
Ejemplo n.º 6
0
def test_add_error_to_report():
    r = Report()
    assert r.add("test message") is True
    assert r.errors == ["test message"]