From 7d0bb4319dbf0d90e1b16f9b2a496d07fe857ceb Mon Sep 17 00:00:00 2001 From: Richard Cheng Date: Tue, 17 Sep 2024 13:17:02 -0700 Subject: [PATCH] Fix Random UT Failure: PosixFile (#2835) * Fix preallocate test from picking 0 for length, which causes unintentional error in preallocate cmd. * Fix seek() in SyntheticFileSystem and assert_file_seek() to allow for offset being 0. --- Os/test/ut/file/FileRules.cpp | 4 ++-- Os/test/ut/file/SyntheticFileSystem.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Os/test/ut/file/FileRules.cpp b/Os/test/ut/file/FileRules.cpp index e708ec9569..39b0399b61 100644 --- a/Os/test/ut/file/FileRules.cpp +++ b/Os/test/ut/file/FileRules.cpp @@ -231,7 +231,7 @@ void Os::Test::File::Tester::assert_file_seek(const FwSignedSizeType original_po ASSERT_EQ(this->m_shadow.position(shadow_position), Os::File::Status::OP_OK); const FwSignedSizeType expected_offset = (absolute) ? seek_desired : (original_position + seek_desired); - if (expected_offset > 0) { + if (expected_offset >= 0) { ASSERT_EQ(new_position, expected_offset); } else { ASSERT_EQ(new_position, original_position); @@ -497,7 +497,7 @@ void Os::Test::File::Tester::Preallocate::action( state.assert_file_consistent(); FileState original_file_state = state.current_file_state(); FwSignedSizeType offset = static_cast(STest::Pick::lowerUpper(0, FILE_DATA_MAXIMUM)); - FwSignedSizeType length = static_cast(STest::Pick::lowerUpper(0, FILE_DATA_MAXIMUM)); + FwSignedSizeType length = static_cast(STest::Pick::lowerUpper(1, FILE_DATA_MAXIMUM)); Os::File::Status status = state.m_file.preallocate(offset, length); ASSERT_EQ(Os::File::Status::OP_OK, status); state.shadow_preallocate(offset, length); diff --git a/Os/test/ut/file/SyntheticFileSystem.cpp b/Os/test/ut/file/SyntheticFileSystem.cpp index b81f7c6eae..5bcb59cbf4 100644 --- a/Os/test/ut/file/SyntheticFileSystem.cpp +++ b/Os/test/ut/file/SyntheticFileSystem.cpp @@ -191,7 +191,7 @@ Os::File::Status SyntheticFile::seek(const FwSignedSizeType offset, const SeekTy status = Os::File::Status::NOT_OPENED; } else { FwSignedSizeType new_offset = (absolute) ? offset : (offset + this->m_data->m_pointer); - if (new_offset > 0) { + if (new_offset >= 0) { this->m_data->m_pointer = new_offset; } else { status = Os::File::Status::INVALID_ARGUMENT;