@@ -28,7 +28,7 @@ const pathToWorker = path.join(__dirname, 'command', 'workers', 'runTests.js')
2828
2929const initializeCodecept = async ( configPath , options = { } ) => {
3030 const config = await mainConfig . load ( configPath || '.' )
31- const codecept = new Codecept ( config , options )
31+ const codecept = new Codecept ( config , { ... options , skipDefaultListeners : true } )
3232 await codecept . init ( getTestRoot ( configPath ) )
3333 codecept . loadTests ( )
3434
@@ -625,13 +625,32 @@ class Workers extends EventEmitter {
625625
626626 break
627627 case event . suite . before :
628- this . emit ( event . suite . before , deserializeSuite ( message . data ) )
628+ {
629+ const suite = deserializeSuite ( message . data )
630+ this . emit ( event . suite . before , suite )
631+ event . dispatcher . emit ( event . suite . before , suite )
632+ }
633+ break
634+ case event . suite . after :
635+ {
636+ const suite = deserializeSuite ( message . data )
637+ this . emit ( event . suite . after , suite )
638+ event . dispatcher . emit ( event . suite . after , suite )
639+ }
629640 break
630641 case event . test . before :
631- this . emit ( event . test . before , deserializeTest ( message . data ) )
642+ {
643+ const test = deserializeTest ( message . data )
644+ this . emit ( event . test . before , test )
645+ event . dispatcher . emit ( event . test . before , test )
646+ }
632647 break
633648 case event . test . started :
634- this . emit ( event . test . started , deserializeTest ( message . data ) )
649+ {
650+ const test = deserializeTest ( message . data )
651+ this . emit ( event . test . started , test )
652+ event . dispatcher . emit ( event . test . started , test )
653+ }
635654 break
636655 case event . test . failed :
637656 // For hook failures, emit immediately as there won't be a test.finished event
@@ -645,7 +664,11 @@ class Workers extends EventEmitter {
645664 // Skip individual passed events - we'll emit based on finished state
646665 break
647666 case event . test . skipped :
648- this . emit ( event . test . skipped , deserializeTest ( message . data ) )
667+ {
668+ const test = deserializeTest ( message . data )
669+ this . emit ( event . test . skipped , test )
670+ event . dispatcher . emit ( event . test . skipped , test )
671+ }
649672 break
650673 case event . test . finished :
651674 // Handle different types of test completion properly
@@ -674,28 +697,47 @@ class Workers extends EventEmitter {
674697 }
675698 }
676699
677- this . emit ( event . test . finished , deserializeTest ( data ) )
700+ const test = deserializeTest ( data )
701+ this . emit ( event . test . finished , test )
702+ event . dispatcher . emit ( event . test . finished , test )
678703 }
679704 break
680705 case event . test . after :
681- this . emit ( event . test . after , deserializeTest ( message . data ) )
706+ {
707+ const test = deserializeTest ( message . data )
708+ this . emit ( event . test . after , test )
709+ event . dispatcher . emit ( event . test . after , test )
710+ }
682711 break
683712 case event . step . finished :
684713 this . emit ( event . step . finished , message . data )
714+ event . dispatcher . emit ( event . step . finished , message . data )
685715 break
686716 case event . step . started :
687717 this . emit ( event . step . started , message . data )
718+ event . dispatcher . emit ( event . step . started , message . data )
688719 break
689720 case event . step . passed :
690721 this . emit ( event . step . passed , message . data )
722+ event . dispatcher . emit ( event . step . passed , message . data )
691723 break
692724 case event . step . failed :
693725 this . emit ( event . step . failed , message . data , message . data . error )
726+ event . dispatcher . emit ( event . step . failed , message . data , message . data . error )
694727 break
695728 case event . hook . failed :
696729 // Hook failures are already reported as test failures by the worker
697730 // Just emit the hook.failed event for listeners
698731 this . emit ( event . hook . failed , message . data )
732+ event . dispatcher . emit ( event . hook . failed , message . data )
733+ break
734+ case event . hook . passed :
735+ this . emit ( event . hook . passed , message . data )
736+ event . dispatcher . emit ( event . hook . passed , message . data )
737+ break
738+ case event . hook . finished :
739+ this . emit ( event . hook . finished , message . data )
740+ event . dispatcher . emit ( event . hook . finished , message . data )
699741 break
700742 }
701743 } )
0 commit comments