@@ -28,6 +28,7 @@ type ServerInstance = {
28
28
addTestResultListener : AddListener < TestResultListener > ;
29
29
addTestDoneListener : AddListener < TestDoneListener > ;
30
30
forceTestCompletion : ( ) => void ;
31
+ setReadyToAcceptTestResults : ( isReady : boolean ) => void ;
31
32
start : ( ) => Promise < void > ;
32
33
stop : ( ) => Promise < Error | undefined > ;
33
34
} ;
@@ -96,6 +97,11 @@ const createServerInstance = (): ServerInstance => {
96
97
const [ testStartedListeners , addTestStartedListener ] = createListenerState < TestStartedListener > ( ) ;
97
98
const [ testResultListeners , addTestResultListener ] = createListenerState < TestResultListener > ( ) ;
98
99
const [ testDoneListeners , addTestDoneListener ] = createListenerState < TestDoneListener > ( ) ;
100
+ let isReadyToAcceptTestResults = true ;
101
+
102
+ const setReadyToAcceptTestResults = ( isReady : boolean ) => {
103
+ isReadyToAcceptTestResults = isReady ;
104
+ } ;
99
105
100
106
const forceTestCompletion = ( ) => {
101
107
testDoneListeners . forEach ( ( listener ) => {
@@ -122,6 +128,10 @@ const createServerInstance = (): ServerInstance => {
122
128
}
123
129
124
130
case Routes . testResults : {
131
+ if ( ! isReadyToAcceptTestResults ) {
132
+ return res . end ( 'ok' ) ;
133
+ }
134
+
125
135
getPostJSONRequestData < TestResult > ( req , res ) ?. then ( ( data ) => {
126
136
if ( ! data ) {
127
137
// The getPostJSONRequestData function already handled the response
@@ -201,6 +211,7 @@ const createServerInstance = (): ServerInstance => {
201
211
} ) ;
202
212
203
213
return {
214
+ setReadyToAcceptTestResults,
204
215
setTestConfig,
205
216
addTestStartedListener,
206
217
addTestResultListener,
0 commit comments