diff options
author | 2022-11-18 15:14:47 +0100 | |
---|---|---|
committer | 2022-11-21 08:07:49 +0000 | |
commit | 1ca951c17652fd89c36798cd7cc9b5a4c254f86e (patch) | |
tree | e57c034e89cea43f399d2d55dd369b8d98e410a4 /runtime/indirect_reference_table_test.cc | |
parent | 17983ac8243d4cc6c5097d452580468176fd1a96 (diff) |
Clean up `IndirectReferenceTable` construction.
Split the parts that can fail to a separate function.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Bug: 172332525
Change-Id: I95200a31cc757e4593d9cc7f956dd4d5ef624f92
Diffstat (limited to 'runtime/indirect_reference_table_test.cc')
-rw-r--r-- | runtime/indirect_reference_table_test.cc | 56 |
1 files changed, 21 insertions, 35 deletions
diff --git a/runtime/indirect_reference_table_test.cc b/runtime/indirect_reference_table_test.cc index af0ebaecf0..8e04469825 100644 --- a/runtime/indirect_reference_table_test.cc +++ b/runtime/indirect_reference_table_test.cc @@ -60,11 +60,9 @@ TEST_F(IndirectReferenceTableTest, BasicTest) { ScopedObjectAccess soa(Thread::Current()); static const size_t kTableMax = 20; std::string error_msg; - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; StackHandleScope<5> hs(soa.Self()); Handle<mirror::Class> c = @@ -302,11 +300,9 @@ TEST_F(IndirectReferenceTableTest, Holes) { // 1) Segment with holes (current_num_holes_ > 0), push new segment, add/remove reference. { - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; const IRTSegmentState cookie0 = kIRTFirstSegment; @@ -333,11 +329,9 @@ TEST_F(IndirectReferenceTableTest, Holes) { // 2) Segment with holes (current_num_holes_ > 0), pop segment, add/remove reference { - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; const IRTSegmentState cookie0 = kIRTFirstSegment; @@ -369,11 +363,9 @@ TEST_F(IndirectReferenceTableTest, Holes) { // 3) Segment with holes (current_num_holes_ > 0), push new segment, pop segment, add/remove // reference. { - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; const IRTSegmentState cookie0 = kIRTFirstSegment; @@ -408,11 +400,9 @@ TEST_F(IndirectReferenceTableTest, Holes) { // 4) Empty segment, push new segment, create a hole, pop a segment, add/remove a reference. { - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; const IRTSegmentState cookie0 = kIRTFirstSegment; @@ -451,11 +441,9 @@ TEST_F(IndirectReferenceTableTest, Holes) { // 5) Base segment, push new segment, create a hole, pop a segment, push new segment, add/remove // reference { - IndirectReferenceTable irt(kTableMax, - kGlobal, - IndirectReferenceTable::ResizableCapacity::kNo, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kGlobal, IndirectReferenceTable::ResizableCapacity::kNo); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; const IRTSegmentState cookie0 = kIRTFirstSegment; @@ -501,11 +489,9 @@ TEST_F(IndirectReferenceTableTest, Resize) { ASSERT_TRUE(obj0 != nullptr); std::string error_msg; - IndirectReferenceTable irt(kTableMax, - kLocal, - IndirectReferenceTable::ResizableCapacity::kYes, - &error_msg); - ASSERT_TRUE(irt.IsValid()) << error_msg; + IndirectReferenceTable irt(kLocal, IndirectReferenceTable::ResizableCapacity::kYes); + bool success = irt.Initialize(kTableMax, &error_msg); + ASSERT_TRUE(success) << error_msg; CheckDump(&irt, 0, 0); const IRTSegmentState cookie = kIRTFirstSegment; |