                 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
             }
         )
-
-                
-        //XCTAssertEqual(peripheral.connections.values.first?.maximumUpdateValueLength, Int(finalMTU.rawValue) - 3)
-        //XCTAssertEqual(central.connections.values.first?.maximumUpdateValueLength, Int(finalMTU.rawValue) - 3)
-        
-        // validate GATT PDUs
-        //let mockData = split(pdu: testPDUs.map { $0.1 })
-        
-        //XCTAssertEqual(serverSocket.cache, mockData.server)
-        //XCTAssertEqual(clientSocket.cache, mockData.client)
     }
     
     func testServiceDiscovery() async throws {

        
        // decode and validate bytes
        test(testPDUs)
        
        try await connect(
            serverOptions: GATTPeripheralOptions(


import Foundation
import XCTest
import Bluetooth
import BluetoothHCI
@testable import BluetoothGATT
@testable import GATT

final class GATTTests: XCTestCase {
