• Show log

    Commit

  • Hash : 583e4141
    Author : Patrick Steinhardt
    Date : 2017-08-30T14:35:57

    tests: deterministically generate test suite definitions
    
    The script "generate.py" is used to parse all test source files for unit
    tests. These are then written into a "clar.suite" file, which can be
    included by the main test executable to make available all test suites
    and unit tests.
    
    Our current algorithm simply collects all test suites inside of a dict,
    iterates through its items and dumps them in a special format into the
    file. As the order is not guaranteed to be deterministic for Python
    dictionaries, this may result in arbitrarily ordered C structs. This
    obviously defeats the purpose of reproducible builds, where the same
    input should always result in the exact same output.
    
    Fix this issue by sorting the test suites by name previous to dumping
    them as structs. This enables reproducible builds for the libgit2_clar
    file.
    

  • README.md

  • Writing Clar tests for libgit2

    For information on the Clar testing framework and a detailed introduction please visit:

    https://github.com/vmg/clar

    • Write your modules and tests. Use good, meaningful names.

    • Make sure you actually build the tests by setting:

        cmake -DBUILD_CLAR=ON build/
    • Test:

        ./build/libgit2_clar
    • Make sure everything is fine.

    • Send your pull request. That’s it.