Changeset 9b20126 in mainline for uspace/lib/pcut/src/run.c


Ignore:
Timestamp:
2014-09-19T08:23:01Z (10 years ago)
Author:
Vojtech Horky <vojtechhorky@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c85a57f
Parents:
15d0046
Message:

Update PCUT to newest version

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/pcut/src/run.c

    r15d0046 r9b20126  
    7070
    7171/** A NULL-like suite. */
    72 static pcut_item_t default_suite = {
    73         .kind = PCUT_KIND_TESTSUITE,
    74         .id = -1,
    75         .previous = NULL,
    76         .next = NULL,
    77         .suite = {
    78                 .name = "Default",
    79                 .setup = NULL,
    80                 .teardown = NULL
    81         }
    82 };
     72static pcut_item_t default_suite;
     73static int default_suite_initialized = 0;
     74
     75static void init_default_suite_when_needed() {
     76        if (default_suite_initialized) {
     77                return;
     78        }
     79        default_suite.id = -1;
     80        default_suite.kind = PCUT_KIND_TESTSUITE;
     81        default_suite.previous = NULL;
     82        default_suite.next = NULL;
     83        default_suite.name = "Default";
     84        default_suite.setup_func = NULL;
     85        default_suite.teardown_func = NULL;
     86}
    8387
    8488/** Find the suite given test belongs to.
     
    9498                it = it->previous;
    9599        }
     100        init_default_suite_when_needed();
    96101        return &default_suite;
    97102}
     
    115120 */
    116121static void leave_test(int outcome) {
     122        PCUT_DEBUG("leave_test(outcome=%d), will_exit=%s", outcome,
     123                leave_means_exit ? "yes" : "no");
    117124        if (leave_means_exit) {
    118125                exit(outcome);
     
    145152                execute_teardown_on_failure = 0;
    146153                prev_message = message;
    147                 run_setup_teardown(current_suite->suite.teardown);
     154                run_setup_teardown(current_suite->teardown_func);
    148155
    149156                /* Tear-down was okay. */
     
    189196        current_test = test;
    190197
     198        pcut_hook_before_test(test);
     199
    191200        /*
    192201         * If anything goes wrong, execute the tear-down function
     
    198207         * Run the set-up function.
    199208         */
    200         run_setup_teardown(current_suite->suite.setup);
     209        run_setup_teardown(current_suite->setup_func);
    201210
    202211        /*
     
    204213         * the actual test.
    205214         */
    206         test->test.func();
     215        test->test_func();
    207216
    208217        /*
     
    211220         */
    212221        execute_teardown_on_failure = 0;
    213         run_setup_teardown(current_suite->suite.teardown);
     222        run_setup_teardown(current_suite->teardown_func);
    214223
    215224        /*
     
    234243 */
    235244int pcut_run_test_forked(pcut_item_t *test) {
     245        int rc;
     246
    236247        report_test_result = 0;
    237248        print_test_error = 1;
    238249        leave_means_exit = 1;
    239250
    240         int rc = run_test(test);
     251        rc = run_test(test);
    241252
    242253        current_test = NULL;
     
    255266 */
    256267int pcut_run_test_single(pcut_item_t *test) {
     268        int rc;
     269
    257270        report_test_result = 1;
    258271        print_test_error = 0;
    259272        leave_means_exit = 0;
    260273
    261         int rc = run_test(test);
     274        rc = run_test(test);
    262275
    263276        current_test = NULL;
     
    273286 */
    274287int pcut_get_test_timeout(pcut_item_t *test) {
    275         PCUT_UNUSED(test);
    276 
    277288        int timeout = PCUT_DEFAULT_TEST_TIMEOUT;
    278 
    279         pcut_extra_t *extras = test->test.extras;
     289        pcut_extra_t *extras = test->extras;
     290
     291
    280292        while (extras->type != PCUT_EXTRA_LAST) {
    281293                if (extras->type == PCUT_EXTRA_TIMEOUT) {
Note: See TracChangeset for help on using the changeset viewer.