mirror of https://gitee.com/openkylin/qemu.git
tests: Fixes test-io-channel-file by mask only owner file state mask bits
This is the error on msys2/mingw Running test test-io-channel-file ** ERROR:../tests/test-io-channel-file.c:59:test_io_channel_file_helper: assertion failed (TEST_MASK & ~mask == st.st_mode & 0777): (384 == 438) ERROR test-io-channel-file - Bail out! ERROR:../tests/test-io-channel-file.c:59:test_io_channel_file_helper: assertion failed (TEST_MASK & ~mask == st.st_mode & 0777): (384 == 438) Signed-off-by: Yonggang Luo <luoyonggang@gmail.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20200915171234.236-20-luoyonggang@gmail.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
da0652c043
commit
a92a783d26
|
@ -28,6 +28,16 @@
|
|||
#define TEST_FILE "tests/test-io-channel-file.txt"
|
||||
#define TEST_MASK 0600
|
||||
|
||||
/*
|
||||
* On Windows the stat() function in the C library checks only
|
||||
* the FAT-style READONLY attribute and does not look at the ACL at all.
|
||||
*/
|
||||
#ifdef _WIN32
|
||||
#define TEST_MASK_EXPECT 0700
|
||||
#else
|
||||
#define TEST_MASK_EXPECT 0777
|
||||
#endif
|
||||
|
||||
static void test_io_channel_file_helper(int flags)
|
||||
{
|
||||
QIOChannel *src, *dst;
|
||||
|
@ -56,7 +66,7 @@ static void test_io_channel_file_helper(int flags)
|
|||
umask(mask);
|
||||
ret = stat(TEST_FILE, &st);
|
||||
g_assert_cmpint(ret, >, -1);
|
||||
g_assert_cmpuint(TEST_MASK & ~mask, ==, st.st_mode & 0777);
|
||||
g_assert_cmpuint(TEST_MASK & ~mask, ==, st.st_mode & TEST_MASK_EXPECT);
|
||||
|
||||
unlink(TEST_FILE);
|
||||
object_unref(OBJECT(src));
|
||||
|
|
Loading…
Reference in New Issue