From e0fc622e00eabf004eeacb359f5e38e85d30e71b Mon Sep 17 00:00:00 2001 From: Scott Haseley Date: Wed, 6 Apr 2016 13:26:05 -0400 Subject: [PATCH] Added progress functions that print '.'. There are versions that are always loud or only loud during automated testing. --- kern/include/kern/test161.h | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/kern/include/kern/test161.h b/kern/include/kern/test161.h index 096384b..4922635 100644 --- a/kern/include/kern/test161.h +++ b/kern/include/kern/test161.h @@ -35,6 +35,35 @@ #include +#ifdef _KERNEL +#define __TEST161_PROGRESS_N(iter, mod) do { \ + if (((iter) % mod) == 0) { \ + kprintf("."); \ + } \ +} while (0) +#else +#include +#define __TEST161_PROGRESS_N(iter, mod) do { \ + if (((iter) % mod) == 0) { \ + printf("."); \ + } \ +} while (0) +#endif + +// Always loud +#define TEST161_LPROGRESS_N(iter, mod) __TEST161_PROGRESS_N(iter, mod) +#define TEST161_LPROGRESS(iter) __TEST161_PROGRESS_N(iter, 100) + +// Depends on whether or not it's automated testing. Some tests are +// quite verbose with useful information so these should just stay quiet. +#ifdef SECRET_TESTING +#define TEST161_TPROGRESS_N(iter, mod) __TEST161_PROGRESS_N(iter, mod) +#define TEST161_TPROGRESS(iter) __TEST161_PROGRESS_N(iter, 100) +#else +#define TEST161_TPROGRESS_N(iter, mod) +#define TEST161_TPROGRESS(iter) +#endif + int success(int, const char *, const char *); int secprintf(const char *secret, const char *msg, const char *name); int partial_credit(const char *secret, const char *name, int scored, int total);