diff --git a/unittests/runtime/TaskStatus.cpp b/unittests/runtime/TaskStatus.cpp index 7bbf84837a45b..f0c18cc04618e 100644 --- a/unittests/runtime/TaskStatus.cpp +++ b/unittests/runtime/TaskStatus.cpp @@ -137,3 +137,15 @@ TEST(TaskStatusTest, cancellation_simple) { swift_job_run(task, createFakeExecutor(1234)); }); } + +TEST(TaskStatusTest, main_actor_simple) { + auto mainExecutor = swift_task_getMainExecutor(); + bool hasRun = false; + + struct Storage { int value; }; + withSimpleTask(Storage{47}, [&](ValueContext *context) { + EXPECT_TRUE(swift_task_isCurrentExecutor(mainExecutor)); + }, [&](AsyncTask *task) { + swift_job_run(task, mainExecutor); + }); +}