Beispiel #1
0
def test_html_diff():
    for case in parse_cases(all_test_cases):
        def test():
            changes = diff(case.old_html, case.new_html, cutoff=0.0)
            assert_html_equal(changes, case.target_changes)
        test.description = 'test_html_diff - %s' % case.name
        yield test
Beispiel #2
0
def reverse_cases(cases):
    for case in parse_cases(cases):
        yield (
            case.name + ' (reverse)',
            case.new_html,
            case.old_html,
            reverse_changes_html(case.target_changes),
            reverse_edit_script(case.edit_script),
        )
Beispiel #3
0
def test_cases_sanity():
    # check that removing the ins and del markup gives the original
    sane_cases = (test_cases + reverse_test_cases + one_way_test_cases)
    for case in parse_cases(sane_cases):

        def test():
            assert_strip_changes(case.old_html, case.new_html,
                                 case.target_changes)

        test.description = 'test_cases_sanity - %s' % case.name
        yield test
Beispiel #4
0
def test_cases_sanity():
    # check that removing the ins and del markup gives the original
    sane_cases = (test_cases + reverse_test_cases + one_way_test_cases)
    for case in parse_cases(sane_cases):
        def test():
            assert_strip_changes(
                case.old_html,
                case.new_html,
                case.target_changes,
            )
        test.description = 'test_cases_sanity - %s' % case.name
        yield test
Beispiel #5
0
def test_html_patch():
    for case in parse_cases(all_test_cases):
        # check that applying the diff gives back the same new_html
        def test():
            edit_script = []
            edit_script = get_edit_script(case.old_html, case.new_html)
            edited_html = html_patch(case.old_html, edit_script)
            assert_html_equal(
                remove_attributes(edited_html),
                remove_attributes(case.new_html),
            )
        test.description = 'test_html_patch - %s' % case.name
        yield test
Beispiel #6
0
def test_edit_script():
    # edit script output does not reverse easily, don't test the reverse cases
    for case in parse_cases(test_cases + one_way_test_cases):
        if not case.edit_script:
            continue

        def test():
            actual_edit_script = get_edit_script(case.old_html, case.new_html)
            assert_equal(
                case.edit_script,
                actual_edit_script,
                ('These edit scripts do not match:\n%s\n!=\n%s'
                 % (pformat(case.edit_script), pformat(actual_edit_script))),
            )
        test.description = 'test_edit_script - %s' % case.name
        yield test