test: enable unit tests to suspend logging

This commit is contained in:
Miroslav Lichvar 2018-08-28 14:20:40 +02:00
parent eb8c9ad601
commit e034a07be8
3 changed files with 16 additions and 4 deletions

View file

@ -75,6 +75,16 @@ main(int argc, char **argv)
return 0;
}
void TST_SuspendLogging(void)
{
LOG_OpenFileLog("/dev/null");
}
void TST_ResumeLogging(void)
{
LOG_OpenFileLog(NULL);
}
double
TST_GetRandomDouble(double min, double max)
{

View file

@ -35,6 +35,9 @@ extern void test_unit(void);
extern void TST_Fail(int line);
extern void TST_SuspendLogging(void);
extern void TST_ResumeLogging(void);
extern double TST_GetRandomDouble(double min, double max);
extern void TST_GetRandomAddress(IPAddr *ip, int family, int bits);
extern void TST_SwapAddressBit(IPAddr *ip, unsigned int b);

View file

@ -251,18 +251,17 @@ void test_unit(void) {
TEST_CHECK(SQUARE(3.0) == 3.0 * 3.0);
/* Suppress log messages */
unlink("test.log");
LOG_OpenFileLog("test.log");
rmdir("testdir");
uid = geteuid();
gid = getegid();
TEST_CHECK(UTI_CreateDirAndParents("testdir", 0700, uid, gid));
TST_SuspendLogging();
TEST_CHECK(UTI_CheckDirPermissions("testdir", 0700, uid, gid));
TEST_CHECK(!UTI_CheckDirPermissions("testdir", 0300, uid, gid));
TEST_CHECK(!UTI_CheckDirPermissions("testdir", 0700, uid + 1, gid));
TEST_CHECK(!UTI_CheckDirPermissions("testdir", 0700, uid, gid + 1));
TST_ResumeLogging();
}