cregit-Linux how code gets into the kernel

Release 4.18 tools/testing/selftests/kselftest.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 * kselftest.h: kselftest framework return codes to include from
 *              selftests.
 *
 * Copyright (c) 2014 Shuah Khan <shuahkh@osg.samsung.com>
 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
 *
 */
#ifndef __KSELFTEST_H

#define __KSELFTEST_H

#include <stdlib.h>
#include <unistd.h>
#include <stdarg.h>

/* define kselftest exit codes */

#define KSFT_PASS  0

#define KSFT_FAIL  1

#define KSFT_XFAIL 2

#define KSFT_XPASS 3
/* Treat skip as pass */

#define KSFT_SKIP  4

/* counters */

struct ksft_count {
	
unsigned int ksft_pass;
	
unsigned int ksft_fail;
	
unsigned int ksft_xfail;
	
unsigned int ksft_xpass;
	
unsigned int ksft_xskip;
	
unsigned int ksft_error;
};


static struct ksft_count ksft_cnt;


static inline int ksft_test_num(void) { return ksft_cnt.ksft_pass + ksft_cnt.ksft_fail + ksft_cnt.ksft_xfail + ksft_cnt.ksft_xpass + ksft_cnt.ksft_xskip + ksft_cnt.ksft_error; }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder3088.24%150.00%
Shuah Khan411.76%150.00%
Total34100.00%2100.00%


static inline void ksft_inc_pass_cnt(void) { ksft_cnt.ksft_pass++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_inc_fail_cnt(void) { ksft_cnt.ksft_fail++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_inc_xfail_cnt(void) { ksft_cnt.ksft_xfail++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_inc_xpass_cnt(void) { ksft_cnt.ksft_xpass++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_inc_xskip_cnt(void) { ksft_cnt.ksft_xskip++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_inc_error_cnt(void) { ksft_cnt.ksft_error++; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_pass_cnt(void) { return ksft_cnt.ksft_pass; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_fail_cnt(void) { return ksft_cnt.ksft_fail; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_xfail_cnt(void) { return ksft_cnt.ksft_xfail; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_xpass_cnt(void) { return ksft_cnt.ksft_xpass; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_xskip_cnt(void) { return ksft_cnt.ksft_xskip; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline int ksft_get_error_cnt(void) { return ksft_cnt.ksft_error; }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan14100.00%1100.00%
Total14100.00%1100.00%


static inline void ksft_print_header(void) { if (!(getenv("KSFT_TAP_LEVEL"))) printf("TAP version 13\n"); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder1458.33%150.00%
Shuah Khan1041.67%150.00%
Total24100.00%2100.00%


static inline void ksft_print_cnts(void) { printf("Pass %d Fail %d Xfail %d Xpass %d Skip %d Error %d\n", ksft_cnt.ksft_pass, ksft_cnt.ksft_fail, ksft_cnt.ksft_xfail, ksft_cnt.ksft_xpass, ksft_cnt.ksft_xskip, ksft_cnt.ksft_error); printf("1..%d\n", ksft_test_num()); }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan4086.96%375.00%
Paul Elder613.04%125.00%
Total46100.00%4100.00%


static inline void ksft_print_msg(const char *msg, ...) { va_list args; va_start(args, msg); printf("# "); vprintf(msg, args); va_end(args); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder41100.00%1100.00%
Total41100.00%1100.00%


static inline void ksft_test_result_pass(const char *msg, ...) { va_list args; ksft_cnt.ksft_pass++; va_start(args, msg); printf("ok %d ", ksft_test_num()); vprintf(msg, args); va_end(args); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder4591.84%266.67%
Shuah Khan48.16%133.33%
Total49100.00%3100.00%


static inline void ksft_test_result_fail(const char *msg, ...) { va_list args; ksft_cnt.ksft_fail++; va_start(args, msg); printf("not ok %d ", ksft_test_num()); vprintf(msg, args); va_end(args); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder4693.88%266.67%
Shuah Khan36.12%133.33%
Total49100.00%3100.00%


static inline void ksft_test_result_skip(const char *msg, ...) { va_list args; ksft_cnt.ksft_xskip++; va_start(args, msg); printf("ok %d # skip ", ksft_test_num()); vprintf(msg, args); va_end(args); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder4387.76%266.67%
Shuah Khan612.24%133.33%
Total49100.00%3100.00%


static inline void ksft_test_result_error(const char *msg, ...) { va_list args; ksft_cnt.ksft_error++; va_start(args, msg); printf("not ok %d # error ", ksft_test_num()); vprintf(msg, args); va_end(args); }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan49100.00%1100.00%
Total49100.00%1100.00%


static inline int ksft_exit_pass(void) { ksft_print_cnts(); exit(KSFT_PASS); }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan1376.47%133.33%
Paul Elder317.65%133.33%
Darren Hart15.88%133.33%
Total17100.00%3100.00%


static inline int ksft_exit_fail(void) { printf("Bail out!\n"); ksft_print_cnts(); exit(KSFT_FAIL); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder1463.64%150.00%
Shuah Khan836.36%150.00%
Total22100.00%2100.00%


static inline int ksft_exit_fail_msg(const char *msg, ...) { va_list args; va_start(args, msg); printf("Bail out! "); vprintf(msg, args); va_end(args); ksft_print_cnts(); exit(KSFT_FAIL); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder4387.76%250.00%
Shuah Khan510.20%125.00%
Darren Hart12.04%125.00%
Total49100.00%4100.00%


static inline int ksft_exit_xfail(void) { ksft_print_cnts(); exit(KSFT_XFAIL); }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan1376.47%133.33%
Paul Elder317.65%133.33%
Darren Hart15.88%133.33%
Total17100.00%3100.00%


static inline int ksft_exit_xpass(void) { ksft_print_cnts(); exit(KSFT_XPASS); }

Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan1376.47%133.33%
Paul Elder317.65%133.33%
Darren Hart15.88%133.33%
Total17100.00%3100.00%


static inline int ksft_exit_skip(const char *msg, ...) { if (msg) { va_list args; va_start(args, msg); printf("1..%d # Skipped: ", ksft_test_num()); vprintf(msg, args); va_end(args); } else { ksft_print_cnts(); } exit(KSFT_SKIP); }

Contributors

PersonTokensPropCommitsCommitProp
Paul Elder4878.69%360.00%
Shuah Khan1219.67%120.00%
Darren Hart11.64%120.00%
Total61100.00%5100.00%

#endif /* __KSELFTEST_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Shuah Khan40252.28%758.33%
Paul Elder34244.47%433.33%
Darren Hart253.25%18.33%
Total769100.00%12100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.