|
164 | 164 | ]
|
165 | 165 | ),
|
166 | 166 | ],
|
| 167 | + [ |
| 168 | + # test case containing two roots, one of them without subtasks |
| 169 | + ( |
| 170 | + [ |
| 171 | + (1, [(2, "Task-5", [])]), |
| 172 | + ( |
| 173 | + 3, |
| 174 | + [ |
| 175 | + (4, "Task-1", []), |
| 176 | + (5, "Task-2", [[["main"], 4]]), |
| 177 | + (6, "Task-3", [[["main"], 4]]), |
| 178 | + (7, "Task-4", [[["main"], 4]]), |
| 179 | + ], |
| 180 | + ), |
| 181 | + (8, []), |
| 182 | + (0, []), |
| 183 | + ] |
| 184 | + ), |
| 185 | + ( |
| 186 | + [ |
| 187 | + ["└── (T) Task-5"], |
| 188 | + [ |
| 189 | + "└── (T) Task-1", |
| 190 | + " └── main", |
| 191 | + " ├── (T) Task-2", |
| 192 | + " ├── (T) Task-3", |
| 193 | + " └── (T) Task-4", |
| 194 | + ], |
| 195 | + ] |
| 196 | + ), |
| 197 | + ], |
167 | 198 | ]
|
168 | 199 |
|
169 | 200 | TEST_INPUTS_CYCLES_TREE = [
|
|
300 | 331 | ),
|
301 | 332 | (
|
302 | 333 | [
|
| 334 | + [1, "0x2", "Task-1", "", "", "0x0"], |
303 | 335 | [
|
304 | 336 | 1,
|
305 | 337 | "0x3",
|
|
409 | 441 | ),
|
410 | 442 | (
|
411 | 443 | [
|
| 444 | + [9, "0x5", "Task-5", "", "", "0x0"], |
412 | 445 | [9, "0x6", "Task-6", "main2", "Task-5", "0x5"],
|
413 | 446 | [9, "0x7", "Task-7", "main2", "Task-5", "0x5"],
|
414 | 447 | [9, "0x8", "Task-8", "main2", "Task-5", "0x5"],
|
| 448 | + [10, "0x1", "Task-1", "", "", "0x0"], |
415 | 449 | [10, "0x2", "Task-2", "main", "Task-1", "0x1"],
|
416 | 450 | [10, "0x3", "Task-3", "main", "Task-1", "0x1"],
|
417 | 451 | [10, "0x4", "Task-4", "main", "Task-1", "0x1"],
|
418 | 452 | ]
|
419 | 453 | ),
|
420 | 454 | ],
|
| 455 | + [ |
| 456 | + # test case containing two roots, one of them without subtasks |
| 457 | + ( |
| 458 | + [ |
| 459 | + (1, [(2, "Task-5", [])]), |
| 460 | + ( |
| 461 | + 3, |
| 462 | + [ |
| 463 | + (4, "Task-1", []), |
| 464 | + (5, "Task-2", [[["main"], 4]]), |
| 465 | + (6, "Task-3", [[["main"], 4]]), |
| 466 | + (7, "Task-4", [[["main"], 4]]), |
| 467 | + ], |
| 468 | + ), |
| 469 | + (8, []), |
| 470 | + (0, []), |
| 471 | + ] |
| 472 | + ), |
| 473 | + ( |
| 474 | + [ |
| 475 | + [1, "0x2", "Task-5", "", "", "0x0"], |
| 476 | + [3, "0x4", "Task-1", "", "", "0x0"], |
| 477 | + [3, "0x5", "Task-2", "main", "Task-1", "0x4"], |
| 478 | + [3, "0x6", "Task-3", "main", "Task-1", "0x4"], |
| 479 | + [3, "0x7", "Task-4", "main", "Task-1", "0x4"], |
| 480 | + ] |
| 481 | + ), |
| 482 | + ], |
421 | 483 | # CASES WITH CYCLES
|
422 | 484 | [
|
423 | 485 | # this test case contains a cycle: two tasks awaiting each other.
|
|
440 | 502 | ),
|
441 | 503 | (
|
442 | 504 | [
|
| 505 | + [1, "0x2", "Task-1", "", "", "0x0"], |
443 | 506 | [1, "0x3", "a", "awaiter2", "b", "0x4"],
|
444 | 507 | [1, "0x3", "a", "main", "Task-1", "0x2"],
|
445 | 508 | [1, "0x4", "b", "awaiter", "a", "0x3"],
|
|
480 | 543 | ),
|
481 | 544 | (
|
482 | 545 | [
|
| 546 | + [1, "0x2", "Task-1", "", "", "0x0"], |
483 | 547 | [
|
484 | 548 | 1,
|
485 | 549 | "0x3",
|
@@ -570,7 +634,10 @@ def test_only_independent_tasks_tree(self):
|
570 | 634 |
|
571 | 635 | def test_only_independent_tasks_table(self):
|
572 | 636 | input_ = [(1, [(10, "taskA", []), (11, "taskB", [])])]
|
573 |
| - self.assertEqual(tools.build_task_table(input_), []) |
| 637 | + self.assertEqual( |
| 638 | + tools.build_task_table(input_), |
| 639 | + [[1, "0xa", "taskA", "", "", "0x0"], [1, "0xb", "taskB", "", "", "0x0"]], |
| 640 | + ) |
574 | 641 |
|
575 | 642 | def test_single_task_tree(self):
|
576 | 643 | """Test print_async_tree with a single task and no awaits."""
|
@@ -599,7 +666,7 @@ def test_single_task_table(self):
|
599 | 666 | ],
|
600 | 667 | )
|
601 | 668 | ]
|
602 |
| - expected_output = [] |
| 669 | + expected_output = [[1, "0x2", "Task-1", "", "", "0x0"]] |
603 | 670 | self.assertEqual(tools.build_task_table(result), expected_output)
|
604 | 671 |
|
605 | 672 | def test_cycle_detection(self):
|
@@ -653,6 +720,7 @@ def test_complex_table(self):
|
653 | 720 | )
|
654 | 721 | ]
|
655 | 722 | expected_output = [
|
| 723 | + [1, "0x2", "Task-1", "", "", "0x0"], |
656 | 724 | [1, "0x3", "Task-2", "main", "Task-1", "0x2"],
|
657 | 725 | [1, "0x4", "Task-3", "main", "Task-2", "0x3"],
|
658 | 726 | ]
|
|
0 commit comments