diff options
Diffstat (limited to 'unix')
| -rw-r--r-- | unix/coverage.c | 9 | ||||
| -rw-r--r-- | unix/main.c | 13 |
2 files changed, 12 insertions, 10 deletions
diff --git a/unix/coverage.c b/unix/coverage.c index 48dbfd5c7..bc66ec3f1 100644 --- a/unix/coverage.c +++ b/unix/coverage.c @@ -7,13 +7,11 @@ #if defined(MICROPY_UNIX_COVERAGE) // function to run extra tests for things that can't be checked by scripts -void run_extra_coverage_tests(void); - -void run_extra_coverage_tests(void) { +STATIC mp_obj_t extra_coverage(void) { // repl autocomplete { const char *str; - mp_uint_t len = mp_repl_autocomplete("__", 2, &mp_plat_print, &str); + mp_uint_t len = mp_repl_autocomplete("__n", 3, &mp_plat_print, &str); printf("%.*s\n", (int)len, str); mp_store_global(MP_QSTR_sys, mp_import_name(MP_QSTR_sys, mp_const_none, MP_OBJ_NEW_SMALL_INT(0))); @@ -21,6 +19,9 @@ void run_extra_coverage_tests(void) { len = mp_repl_autocomplete("sys.impl", 8, &mp_plat_print, &str); printf("%.*s\n", (int)len, str); } + + return mp_const_none; } +MP_DEFINE_CONST_FUN_OBJ_0(extra_coverage_obj, extra_coverage); #endif diff --git a/unix/main.c b/unix/main.c index abea15728..9794f6083 100644 --- a/unix/main.c +++ b/unix/main.c @@ -356,6 +356,13 @@ int main(int argc, char **argv) { mp_obj_list_init(mp_sys_argv, 0); + #if defined(MICROPY_UNIX_COVERAGE) + { + MP_DECLARE_CONST_FUN_OBJ(extra_coverage_obj); + mp_store_global(QSTR_FROM_STR_STATIC("extra_coverage"), (mp_obj_t)&extra_coverage_obj); + } + #endif + // Here is some example code to create a class and instance of that class. // First is the Python, then the C code. // @@ -434,12 +441,6 @@ int main(int argc, char **argv) { MP_STATE_VM(mp_optimise_value) = 0; for (char *p = argv[a] + 1; *p && *p == 'O'; p++, MP_STATE_VM(mp_optimise_value)++); } - #if defined(MICROPY_UNIX_COVERAGE) - } else if (strcmp(argv[a], "--coverage") == 0) { - void run_extra_coverage_tests(void); - run_extra_coverage_tests(); - ret = 0; - #endif } else { return usage(argv); } |
