         
         // decode and validate bytes
         test(testPDUs)
+        let mockData = split(pdu: testPDUs.map { $0.1 })
         
         // service
         let batteryLevel = GATTBatteryLevel(level: .min)

                    else { XCTFail(); return }
                XCTAssertEqual(foundService.uuid, .batteryService)
                XCTAssertEqual(foundService.isPrimary, true)
            }
        )
        

                XCTAssertEqual(services.count, 0)
                let clientMTU = try await central.maximumTransmissionUnit(for: peripheral)
                XCTAssertEqual(clientMTU, finalMTU)
                let maximumUpdateValueLength = await central.storage.connections.values.first?.maximumUpdateValueLength
                XCTAssertEqual(maximumUpdateValueLength, Int(finalMTU.rawValue) - 3)
                let clientCache = await (central.storage.connections.values.first?.client.connection.socket as? TestL2CAPSocket)?.cache
                XCTAssertEqual(clientCache?.prefix(1), mockData.client.prefix(1)) // not same because extra service discovery request
            }
        )
    }
    
    func testServiceDiscovery() async throws {
