Skip to content

Commit

Permalink
UT[mwcsys::ExecUtil]: suppress default allocator check failure (#409)
Browse files Browse the repository at this point in the history
Signed-off-by: Evgeny Malygin <[email protected]>
  • Loading branch information
678098 authored Aug 29, 2024
1 parent 6f2d541 commit bd72cb4
Showing 1 changed file with 24 additions and 20 deletions.
44 changes: 24 additions & 20 deletions src/groups/mwc/mwcsys/mwcsys_executil.t.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ static void test1_execute()
PVV(test.d_line << ": executing command '" << test.d_command << "'");

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::execute(&output, test.d_command);
const int rc = mwcsys::ExecUtil::execute(&output, test.d_command);
ASSERT_EQ_D("line " << test.d_line, rc, test.d_expectedRc);
ASSERT_EQ_D("line " << test.d_line, output, test.d_expectedOutput);
}
Expand Down Expand Up @@ -204,9 +204,9 @@ static void test3_outputFromFileNoGen()
createFile(k_TESTFILE, test.d_content, S_IRWXU);

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
test.d_arguments);
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
test.d_arguments);
ASSERT_EQ_D("line " << test.d_line, rc, 0);
ASSERT_EQ_D("line " << test.d_line, output, test.d_expectedOutput);

Expand Down Expand Up @@ -263,9 +263,9 @@ static void test4_outputFromFileGen()
createFile(k_TESTFILE, test.d_content, S_IRWXU);

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
test.d_arguments);
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
test.d_arguments);
ASSERT_EQ_D("line " << test.d_line, (rc == 0), test.d_expectSuccess);
ASSERT_EQ_D("line " << test.d_line, output, test.d_expectedOutput);

Expand Down Expand Up @@ -300,19 +300,19 @@ static void test5_outputFromFileError()
}

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
ASSERT_NE(rc, 0);
}

{
PV("Not a regular input file");

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
"./", // a directory
"dummyArgs");
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
"./", // a directory
"dummyArgs");
ASSERT_NE(rc, 0);
}

Expand All @@ -322,9 +322,9 @@ static void test5_outputFromFileError()
createFile(k_TESTFILE, "#! /bin/bash\necho -n 'yes'", S_IRUSR);

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
ASSERT_NE(rc, 0);

bdls::FilesystemUtil::remove(k_TESTFILE);
Expand All @@ -338,9 +338,9 @@ static void test5_outputFromFileError()
S_IRWXU);

bsl::string output(s_allocator_p);
int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
const int rc = mwcsys::ExecUtil::outputFromFile(&output,
k_TESTFILE,
"dummyArgs");
ASSERT_NE(rc, 0);

bdls::FilesystemUtil::remove(k_TESTFILE);
Expand Down Expand Up @@ -368,5 +368,9 @@ int main(int argc, char* argv[])
} break;
}

TEST_EPILOG(mwctst::TestHelper::e_CHECK_DEF_GBL_ALLOC);
// 'bdls::FilesystemUtil::remove' builds a 'bsl::string' using a default
// allocator. The string allocates memory in heap if we provide a long
// enough filename to the call. It causes the default allocator check to
// fail. More details in the ticket 176461860.
TEST_EPILOG(mwctst::TestHelper::e_CHECK_GBL_ALLOC);
}

0 comments on commit bd72cb4

Please sign in to comment.