• F
    Unit tests for flowgraph pretty printing. · 3aad0e24
    Felix S. Klock II 提交于
    Each test works by rendering the flowgraph for the last identified
    block we see in expanded pretty-printed output, and comparing it (via
    `diff`) against a checked in "foo.dot-expected.dot" file.
    
    Each test post-processes the output to remove NodeIds ` (id=NUM)` so
    that the expected output is somewhat stable (or at least independent
    of how we assign NodeIds) and easier for a human to interpret when
    looking at the expected output file itself.
    
    ----
    
    Test writing style notes:
    
    I usually tried to write the tests in a way that would avoid duplicate
    labels in the output rendered flow graph, when possible.
    
    The tests that have string literals "unreachable" in the program text
    are deliberately written that way to remind the reader that the
    unreachable nodes in the resulting graph are not an error in the
    control flow computation, but rather a natural consequence of its
    construction.
    3aad0e24
f07.rs 556 字节