• Michal Wajdeczko's avatar
    kunit: Reset suite counter right before running tests · 2e3c94ae
    Michal Wajdeczko authored
    Today we reset the suite counter as part of the suite cleanup,
    called from the module exit callback, but it might not work that
    well as one can try to collect results without unloading a previous
    test (either unintentionally or due to dependencies).
    
    For easy reproduction try to load the kunit-test.ko and then
    collect and parse results from the kunit-example-test.ko load.
    Parser will complain about mismatch of expected test number:
    
    [ ] KTAP version 1
    [ ] 1..1
    [ ]     # example: initializing suite
    [ ]     KTAP version 1
    [ ]     # Subtest: example
    ..
    [ ] # example: pass:5 fail:0 skip:4 total:9
    [ ] # Totals: pass:6 fail:0 skip:6 total:12
    [ ] ok 7 example
    
    [ ] [ERROR] Test: example: Expected test number 1 but found 7
    [ ] ===================== [PASSED] example =====================
    [ ] ============================================================
    [ ] Testing complete. Ran 12 tests: passed: 6, skipped: 6, errors: 1
    
    Since we are now printing suite test plan on every module load,
    right before running suite tests, we should make sure that suite
    counter will also start from 1. Easiest solution seems to be move
    counter reset to the __kunit_test_suites_init() function.
    Signed-off-by: default avatarMichal Wajdeczko <michal.wajdeczko@intel.com>
    Cc: David Gow <davidgow@google.com>
    Cc: Rae Moar <rmoar@google.com>
    Reviewed-by: default avatarDavid Gow <davidgow@google.com>
    Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
    2e3c94ae
test.c 21.9 KB