public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
* [LTP] [PATCH v1] Add TST_EXP_FAIL_PTR
@ 2024-01-11  1:26 Wei Gao via ltp
  2024-01-16 17:49 ` Petr Vorel
  2024-01-17  8:04 ` [LTP] [PATCH v2] " Wei Gao via ltp
  0 siblings, 2 replies; 40+ messages in thread
From: Wei Gao via ltp @ 2024-01-11  1:26 UTC (permalink / raw)
  To: ltp

Signed-off-by: Wei Gao <wegao@suse.com>
---
 include/tst_test_macros.h | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

This is draft patch and should rebase after following patch merge.
https://patchwork.ozlabs.org/project/ltp/patch/20240103115700.14585-1-chrubis@suse.cz/

diff --git a/include/tst_test_macros.h b/include/tst_test_macros.h
index 3f4f9f11d..6e45e0b27 100644
--- a/include/tst_test_macros.h
+++ b/include/tst_test_macros.h
@@ -212,6 +212,26 @@ extern void *TST_RET_PTR;
 		}                                                              \
 	} while (0)
 
+#define TST_EXP_FAIL_SILENT_PTR_(SCALL, SSCALL, ERRNO, ...)             \
+	do {                                                                   \
+		TESTPTR(SCALL);                                                   \
+		                                                               \
+		TST_PASS = 0;                                                  \
+		                                                               \
+		if (TST_RET_PTR) {                                               \
+			TST_MSG_(TFAIL, " succeeded", SSCALL, ##__VA_ARGS__);  \
+		        break;                                                 \
+		}                                                              \
+		                                                               \
+		if (TST_ERR == (ERRNO)) {                                      \
+			TST_PASS = 1;                                          \
+		} else {                                                       \
+			TST_MSGP_(TFAIL | TTERRNO, " expected %s",             \
+				  tst_strerrno(ERRNO),                         \
+				  SSCALL, ##__VA_ARGS__);                      \
+		}                                                              \
+	} while (0)
+
 #define TST_EXP_FAIL(SCALL, ERRNO, ...)                                        \
 	do {                                                                   \
 		TST_EXP_FAIL_SILENT_(TST_RET == 0, SCALL, #SCALL,              \
@@ -228,6 +248,14 @@ extern void *TST_RET_PTR;
 			TST_MSG_(TPASS | TTERRNO, " ", #SCALL, ##__VA_ARGS__); \
 	} while (0)
 
+#define TST_EXP_FAIL_PTR(SCALL, ERRNO, ...)                                        \
+	do {                                                                   \
+		TST_EXP_FAIL_SILENT_PTR_(SCALL, #SCALL,              \
+			ERRNO, ##__VA_ARGS__);                                 \
+		if (TST_PASS)                                                  \
+			TST_MSG_(TPASS | TTERRNO, " ", #SCALL, ##__VA_ARGS__); \
+	} while (0)
+
 #define TST_EXP_FAIL_SILENT(SCALL, ERRNO, ...) \
 	TST_EXP_FAIL_SILENT_(TST_RET == 0, SCALL, #SCALL, ERRNO, ##__VA_ARGS__)
 
-- 
2.35.3


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2024-04-07 23:32 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-11  1:26 [LTP] [PATCH v1] Add TST_EXP_FAIL_PTR Wei Gao via ltp
2024-01-16 17:49 ` Petr Vorel
2024-01-17  8:07   ` Wei Gao via ltp
2024-01-17  8:04 ` [LTP] [PATCH v2] " Wei Gao via ltp
2024-01-17  9:49   ` Petr Vorel
2024-01-30 12:21     ` Petr Vorel
2024-01-17 12:52   ` [LTP] [PATCH v3 0/2] lib: TST_EXP_FAIL_PTR Wei Gao via ltp
2024-01-17 12:52     ` [LTP] [PATCH v3 1/2] " Wei Gao via ltp
2024-01-23  8:45       ` Petr Vorel
2024-01-23 10:41       ` Cyril Hrubis
2024-01-30 12:20         ` Petr Vorel
2024-01-17 12:52     ` [LTP] [PATCH v3 2/2] getcwd01: Implement .test_variants Wei Gao via ltp
2024-01-23  9:45       ` Petr Vorel
2024-02-08  1:32     ` [LTP] [PATCH v4 0/3] lib: TST_EXP_{FAIL,PASS}_PTR_{NULL,VOID} Wei Gao via ltp
2024-02-08  1:32       ` [LTP] [PATCH v4 1/3] " Wei Gao via ltp
2024-03-20 10:47         ` Petr Vorel
2024-03-26 10:54         ` Cyril Hrubis
2024-02-08  1:32       ` [LTP] [PATCH v4 2/3] shmat02.c: Use TST_EXP_FAIL_PTR_VOID Wei Gao via ltp
2024-03-20 10:47         ` Petr Vorel
2024-02-08  1:32       ` [LTP] [PATCH v4 3/3] realpath01.c: use TST_EXP_FAIL_PTR_NULL Wei Gao via ltp
2024-03-20 10:47         ` Petr Vorel
2024-03-27  3:49       ` [LTP] [PATCH v5 0/3] lib: TST_EXP_{FAIL,PASS}_PTR_{NULL,VOID} Wei Gao via ltp
2024-03-27  3:49         ` [LTP] [PATCH v5 1/3] " Wei Gao via ltp
2024-03-28 11:29           ` Petr Vorel
2024-03-28 11:49           ` Petr Vorel
2024-03-28 11:57             ` Petr Vorel
2024-03-28 12:11           ` Petr Vorel
2024-03-27  3:49         ` [LTP] [PATCH v5 2/3] shmat02.c: Use TST_EXP_FAIL_PTR_VOID Wei Gao via ltp
2024-03-27  3:49         ` [LTP] [PATCH v5 3/3] realpath01.c: use TST_EXP_FAIL_PTR_NULL Wei Gao via ltp
2024-04-03  3:28         ` [LTP] [PATCH v6 0/3] lib: TST_EXP_{FAIL,PASS}_PTR_{NULL,VOID} Wei Gao via ltp
2024-04-03  3:28           ` [LTP] [PATCH v6 1/3] " Wei Gao via ltp
2024-04-04 13:51             ` Cyril Hrubis
2024-04-04 16:01               ` Petr Vorel
2024-04-05  8:53                 ` Cyril Hrubis
2024-04-05 10:28                   ` Petr Vorel
2024-04-05 11:23                     ` Cyril Hrubis
2024-04-05 14:03                       ` Petr Vorel
2024-04-07 23:31                         ` Wei Gao via ltp
2024-04-03  3:28           ` [LTP] [PATCH v6 2/3] shmat02.c: Use TST_EXP_FAIL_PTR_VOID Wei Gao via ltp
2024-04-03  3:28           ` [LTP] [PATCH v6 3/3] realpath01.c: use TST_EXP_FAIL_PTR_NULL Wei Gao via ltp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox