Remove rtc::Location from SendTask test helper

that rtc::Location parameter was used only as extra information for the
RTC_CHECKs directly in the function, thus call stack of the crash should
provide all the information about the caller.

Bug: webrtc:11318
Change-Id: Iec6dd2c5de547f3e1601647a614be7ce57a55734
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/270920
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37748}
This commit is contained in:
Danil Chapovalov
2022-08-11 12:26:09 +02:00
committed by WebRTC LUCI CQ
parent e2d829cf77
commit e519f38eaa
37 changed files with 352 additions and 470 deletions

View File

@ -76,20 +76,16 @@ TEST(SequenceCheckerTest, DetachFromThreadAndUseOnTaskQueue) {
SequenceChecker sequence_checker;
sequence_checker.Detach();
TaskQueueForTest queue;
queue.SendTask([&] { EXPECT_TRUE(sequence_checker.IsCurrent()); },
RTC_FROM_HERE);
queue.SendTask([&] { EXPECT_TRUE(sequence_checker.IsCurrent()); });
}
TEST(SequenceCheckerTest, DetachFromTaskQueueAndUseOnThread) {
TaskQueueForTest queue;
queue.SendTask(
[] {
SequenceChecker sequence_checker;
sequence_checker.Detach();
RunOnDifferentThread(
[&] { EXPECT_TRUE(sequence_checker.IsCurrent()); });
},
RTC_FROM_HERE);
queue.SendTask([] {
SequenceChecker sequence_checker;
sequence_checker.Detach();
RunOnDifferentThread([&] { EXPECT_TRUE(sequence_checker.IsCurrent()); });
});
}
TEST(SequenceCheckerTest, MethodNotAllowedOnDifferentThreadInDebug) {
@ -102,8 +98,7 @@ TEST(SequenceCheckerTest, MethodNotAllowedOnDifferentTaskQueueInDebug) {
SequenceChecker sequence_checker;
TaskQueueForTest queue;
queue.SendTask(
[&] { EXPECT_EQ(sequence_checker.IsCurrent(), !RTC_DCHECK_IS_ON); },
RTC_FROM_HERE);
[&] { EXPECT_EQ(sequence_checker.IsCurrent(), !RTC_DCHECK_IS_ON); });
}
TEST(SequenceCheckerTest, DetachFromTaskQueueInDebug) {
@ -111,15 +106,13 @@ TEST(SequenceCheckerTest, DetachFromTaskQueueInDebug) {
sequence_checker.Detach();
TaskQueueForTest queue1;
queue1.SendTask([&] { EXPECT_TRUE(sequence_checker.IsCurrent()); },
RTC_FROM_HERE);
queue1.SendTask([&] { EXPECT_TRUE(sequence_checker.IsCurrent()); });
// IsCurrent should return false in debug builds after moving to
// another task queue.
TaskQueueForTest queue2;
queue2.SendTask(
[&] { EXPECT_EQ(sequence_checker.IsCurrent(), !RTC_DCHECK_IS_ON); },
RTC_FROM_HERE);
[&] { EXPECT_EQ(sequence_checker.IsCurrent(), !RTC_DCHECK_IS_ON); });
}
class TestAnnotations {
@ -146,7 +139,7 @@ TEST(SequenceCheckerTest, TestAnnotations) {
void TestAnnotationsOnWrongQueue() {
TestAnnotations annotations;
TaskQueueForTest queue;
queue.SendTask([&] { annotations.ModifyTestVar(); }, RTC_FROM_HERE);
queue.SendTask([&] { annotations.ModifyTestVar(); });
}
#if RTC_DCHECK_IS_ON

View File

@ -85,20 +85,16 @@ TEST(PendingTaskSafetyFlagTest, PendingTaskSuccess) {
};
std::unique_ptr<Owner> owner;
tq1.SendTask(
[&owner]() {
owner = std::make_unique<Owner>();
EXPECT_FALSE(owner->stuff_done());
},
RTC_FROM_HERE);
tq1.SendTask([&owner]() {
owner = std::make_unique<Owner>();
EXPECT_FALSE(owner->stuff_done());
});
ASSERT_TRUE(owner);
tq2.SendTask([&owner]() { owner->DoStuff(); }, RTC_FROM_HERE);
tq1.SendTask(
[&owner]() {
EXPECT_TRUE(owner->stuff_done());
owner.reset();
},
RTC_FROM_HERE);
tq2.SendTask([&owner]() { owner->DoStuff(); });
tq1.SendTask([&owner]() {
EXPECT_TRUE(owner->stuff_done());
owner.reset();
});
ASSERT_FALSE(owner);
}
@ -129,9 +125,9 @@ TEST(PendingTaskSafetyFlagTest, PendingTaskDropped) {
std::unique_ptr<Owner> owner;
bool stuff_done = false;
tq1.SendTask(
[&owner, &stuff_done]() { owner = std::make_unique<Owner>(&stuff_done); },
RTC_FROM_HERE);
tq1.SendTask([&owner, &stuff_done]() {
owner = std::make_unique<Owner>(&stuff_done);
});
ASSERT_TRUE(owner);
// Queue up a task on tq1 that will execute before the 'DoStuff' task
// can, and delete the `owner` before the 'stuff' task can execute.
@ -142,7 +138,7 @@ TEST(PendingTaskSafetyFlagTest, PendingTaskDropped) {
});
// Queue up a DoStuff...
tq2.SendTask([&owner]() { owner->DoStuff(); }, RTC_FROM_HERE);
tq2.SendTask([&owner]() { owner->DoStuff(); });
ASSERT_TRUE(owner);
blocker.Set();
@ -158,7 +154,7 @@ TEST(PendingTaskSafetyFlagTest, PendingTaskNotAliveInitialized) {
// Create a new flag that initially not `alive`.
auto flag = PendingTaskSafetyFlag::CreateDetachedInactive();
tq.SendTask([&flag]() { EXPECT_FALSE(flag->alive()); }, RTC_FROM_HERE);
tq.SendTask([&flag]() { EXPECT_FALSE(flag->alive()); });
bool task_1_ran = false;
bool task_2_ran = false;