             upgraderCbFired = true
         }
         
+        let firstByteDonePromise: EventLoopPromise<Void> = EmbeddedEventLoop().newPromise()
+        let secondByteDonePromise: EventLoopPromise<Void> = EmbeddedEventLoop().newPromise()
         let allDonePromise: EventLoopPromise<Void> = EmbeddedEventLoop().newPromise()
         let (group, server, client, connectedServer) = try setUpTestWithAutoremoval(upgraders: [upgrader],
                                                                                     extraHandlers: []) { (ctx) in

                self.state = .closed
                ctx.close(mode: mode, promise: promise)
                
                allDonePromise.succeed(result: ())
            }
        }
        

                                                                                        XCTAssertNil(upgradeRequest)
                                                                                        upgradeHandlerCbFired = true
                                                                                        
                                                                                        _ = ctx.channel.pipeline.add(handler: CheckWeReadInlineAndExtraData(firstByteDonePromise: firstByteDonePromise,
                                                                                                                                                            secondByteDonePromise: secondByteDonePromise,
                                                                                                                                                            allDonePromise: allDonePromise))
        }
        defer {
            XCTAssertNoThrow(try group.syncShutdownGracefully())
