Skip to content

Commit 5b1d3eb

Browse files
authored
Ensure NotInParallel tests don't run alongside any others (#3015)
1 parent 9b0d3e8 commit 5b1d3eb

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

TUnit.Engine/Scheduling/TestScheduler.cs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -174,10 +174,9 @@ private async Task ExecuteGroupedTestsAsync(
174174
// 1. NotInParallel tests (global) - must run one at a time
175175
if (groupedTests.NotInParallel.Length > 0)
176176
{
177-
var globalNotInParallelTask = ExecuteNotInParallelTestsAsync(
177+
await ExecuteNotInParallelTestsAsync(
178178
groupedTests.NotInParallel,
179179
cancellationToken);
180-
allTestTasks.Add(globalNotInParallelTask);
181180
}
182181

183182
// 2. Keyed NotInParallel tests
@@ -319,7 +318,7 @@ private async Task ExecuteParallelGroupAsync(
319318
// Use worker pool pattern for parallel groups
320319
var testQueue = new System.Collections.Concurrent.ConcurrentQueue<AbstractExecutableTest>(tests);
321320
var workers = new Task[maxParallelism.Value];
322-
321+
323322
for (int i = 0; i < maxParallelism.Value; i++)
324323
{
325324
workers[i] = Task.Run(async () =>
@@ -328,12 +327,12 @@ private async Task ExecuteParallelGroupAsync(
328327
{
329328
if (cancellationToken.IsCancellationRequested)
330329
break;
331-
330+
332331
await test.ExecutionTask.ConfigureAwait(false);
333332
}
334333
}, cancellationToken);
335334
}
336-
335+
337336
await Task.WhenAll(workers).ConfigureAwait(false);
338337
}
339338
else
@@ -355,7 +354,7 @@ private async Task ExecuteParallelTestsAsync(
355354
// Create a fixed number of worker tasks that process tests from a queue
356355
var testQueue = new System.Collections.Concurrent.ConcurrentQueue<AbstractExecutableTest>(tests);
357356
var workers = new Task[maxParallelism.Value];
358-
357+
359358
// Create worker tasks
360359
for (int i = 0; i < maxParallelism.Value; i++)
361360
{
@@ -365,12 +364,12 @@ private async Task ExecuteParallelTestsAsync(
365364
{
366365
if (cancellationToken.IsCancellationRequested)
367366
break;
368-
367+
369368
await test.ExecutionTask.ConfigureAwait(false);
370369
}
371370
}, cancellationToken);
372371
}
373-
372+
374373
await Task.WhenAll(workers).ConfigureAwait(false);
375374
}
376375
else

0 commit comments

Comments
 (0)