[SOLVED] CS代考计算机代写 #ifndef TESTS_LIB_H

30 $

File Name: CS代考计算机代写_#ifndef_TESTS_LIB_H.zip
File Size: 405.06 KB

SKU: 3744502742 Category: Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Or Upload Your Assignment Here:


#ifndef TESTS_LIB_H
#define TESTS_LIB_H

#include
#include
#include
#include

extern const char *test_name;
extern bool quiet;

void msg (const char *, …) PRINTF_FORMAT (1, 2);
void fail (const char *, …) PRINTF_FORMAT (1, 2) NO_RETURN;

/* Takes an expression to test for SUCCESS and a message, which
may include printf-style arguments.Logs the message, then
tests the expression.If it is zero, indicating failure,
emits the message as a failure.

Somewhat tricky to use:

– SUCCESS must not have side effects that affect the
message, because that will cause the original message and
the failure message to differ.

– The message must not have side effects of its own, because
it will be printed twice on failure, or zero times on
success if quiet is set. */
#define CHECK(SUCCESS, …)
do
{
msg (__VA_ARGS__);
if (!(SUCCESS))
fail (__VA_ARGS__);
}
while (0)

void shuffle (void *, size_t cnt, size_t size);

void exec_children (const char *child_name, pid_t pids[], size_t child_cnt);
void wait_children (pid_t pids[], size_t child_cnt);

void check_file_handle (int fd, const char *file_name,
const void *buf_, size_t filesize);
void check_file (const char *file_name, const void *buf, size_t filesize);

void compare_bytes (const void *read_data, const void *expected_data,
size_t size, size_t ofs, const char *file_name);

#endif /* test/lib.h */

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] CS代考计算机代写 #ifndef TESTS_LIB_H
30 $