From 58beb0bc9236234a697a3619c5023100a9574a59 Mon Sep 17 00:00:00 2001 From: peter Date: Sat, 5 Sep 2026 07:22:31 +0000 Subject: Full coverage of bin/main.c FossilOrigin-Name: 91deb642cded69b6c480471147004489a6072ec7c6603286aa6c0ebfc75bf030 --- src/include/aplwc.h | 5 ++++- src/include/aplwc_macros.h | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'src/include') diff --git a/src/include/aplwc.h b/src/include/aplwc.h index 459a036..5a6cb79 100644 --- a/src/include/aplwc.h +++ b/src/include/aplwc.h @@ -47,9 +47,11 @@ typedef struct { struct aplwc_ref ref; } AplwcValue; struct aplwc_fns { void *(*alloc)(size_t, size_t *); void (*dealloc)(void *); - int (*hook_alloc)(void); }; +extern uint64_t aplwc_simulate_failure_at; +extern uint64_t aplwc_simulate_failure_count; + struct aplwc *aplwc_new(struct aplwc_fns, enum aplwc_rc *); void aplwc_destroy(struct aplwc *); void aplwc_clear_line(AplwcLine *); @@ -65,5 +67,6 @@ void aplwc_eval(AplwcLine *, AplwcValue *); void aplwc_free_value(AplwcValue *); const char *aplwc_value_string(AplwcValue *); enum aplwc_rc aplwc_load_module(struct aplwc *, const char *, const char *, int n); +int aplwc_simulate_failure(void); #endif /* APLWC_H */ diff --git a/src/include/aplwc_macros.h b/src/include/aplwc_macros.h index f68fea9..80ada28 100644 --- a/src/include/aplwc_macros.h +++ b/src/include/aplwc_macros.h @@ -38,5 +38,7 @@ #define DEBUG(x) ((void)0) #endif +#define FAILCASE(x, fail) (aplwc_simulate_failure() ? (fail) : (x)) +#define FAILCASE_X(x, fail, test) ((test) ? (fail) : (x)) #endif /* APLWC_MACROS_H */ -- cgit v1.2.3