[PATCH 6/6] lib: fwts_framework: make test priority a strongly typed enum
Colin King
colin.king at canonical.com
Wed Nov 21 16:24:45 UTC 2012
From: Colin Ian King <colin.king at canonical.com>
Test priority was going to be some fancy percentage ordering scheme
but as it happens, it just tuned out to be a few settings. So lets
make it into an enum type.
Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
src/lib/include/fwts_framework.h | 24 +++++++++++++-----------
src/lib/src/fwts_framework.c | 2 +-
2 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/src/lib/include/fwts_framework.h b/src/lib/include/fwts_framework.h
index 2f84693..ea40a07 100644
--- a/src/lib/include/fwts_framework.h
+++ b/src/lib/include/fwts_framework.h
@@ -71,6 +71,17 @@ typedef struct {
uint32_t infoonly;
} fwts_results;
+/*
+ * Where to schedule a test, priority sorted lowest first, highest last
+ */
+typedef enum {
+ FWTS_TEST_FIRST = 0,
+ FWTS_TEST_EARLY = 1,
+ FWTS_TEST_ANYTIME = 2,
+ FWTS_TEST_LATE = 3,
+ FWTS_TEST_LAST = 4
+} fwts_priority;
+
static inline void fwts_results_zero(fwts_results *results)
{
memset(results, 0, sizeof(fwts_results));
@@ -158,14 +169,14 @@ typedef struct fwts_framework_ops {
typedef struct fwts_framework_test {
const char *name;
fwts_framework_ops *ops;
- int priority;
+ fwts_priority priority;
fwts_framework_flags flags;
fwts_results results; /* Per test results */
bool was_run;
} fwts_framework_test;
int fwts_framework_args(const int argc, char **argv);
-void fwts_framework_test_add(const char *name, fwts_framework_ops *ops, const int priority, const fwts_framework_flags flags);
+void fwts_framework_test_add(const char *name, fwts_framework_ops *ops, const fwts_priority priority, const fwts_framework_flags flags);
int fwts_framework_compare_test_name(void *, void *);
void fwts_framework_show_version(FILE *fp, const char *name);
@@ -219,15 +230,6 @@ static inline int fwts_tests_passed(const fwts_framework *fw)
}
/*
- * Where to schedule a test, priority sorted lowest first, highest last
- */
-#define FWTS_TEST_FIRST 0
-#define FWTS_TEST_EARLY 10
-#define FWTS_TEST_ANYTIME 50
-#define FWTS_TEST_LATE 75
-#define FWTS_TEST_LAST 100
-
-/*
* Batch (run w/o interaction) or interactive (requires user interaction) flags
*/
#define FWTS_TEST_INTERACTIVE(flags) \
diff --git a/src/lib/src/fwts_framework.c b/src/lib/src/fwts_framework.c
index d688edf..00b9ed7 100644
--- a/src/lib/src/fwts_framework.c
+++ b/src/lib/src/fwts_framework.c
@@ -119,7 +119,7 @@ static int fwts_framework_compare_priority(void *data1, void *data2)
*/
void fwts_framework_test_add(const char *name,
fwts_framework_ops *ops,
- const int priority,
+ const fwts_priority priority,
const fwts_framework_flags flags)
{
fwts_framework_test *new_test;
--
1.7.10.4
More information about the fwts-devel
mailing list