@@ -329,37 +329,35 @@ final class WebWorkerTaskExecutorTests: XCTestCase {
329329 XCTAssertTrue ( jsErrorMessage. contains ( " Failed to serialize message " ) , jsErrorMessage)
330330 }
331331
332- /*
333- // Node.js 20 and below doesn't throw exception when transferring the same ArrayBuffer
334- // multiple times.
335- // See https://github.com/nodejs/node/commit/38dee8a1c04237bd231a01410f42e9d172f4c162
336- func testTransferMultipleTimes() async throws {
337- let executor = try await WebWorkerTaskExecutor(numberOfThreads: 1)
338- let Uint8Array = JSObject.global.Uint8Array.function!
339- let buffer = Uint8Array.new(100).buffer.object!
340- let transferring = JSSending.transfer(buffer)
341- let task1 = Task(executorPreference: executor) {
342- let buffer = try await transferring.receive()
343- return buffer.byteLength.number!
344- }
345- let byteLength1 = try await task1.value
346- XCTAssertEqual(byteLength1, 100)
347-
348- let task2 = Task<String?, Never>(executorPreference: executor) {
349- do {
350- _ = try await transferring.receive()
351- return nil
352- } catch {
353- return String(describing: error)
354- }
355- }
356- guard let jsErrorMessage = await task2.value else {
357- XCTFail("Should throw an error")
358- return
359- }
360- XCTAssertTrue(jsErrorMessage.contains("Failed to serialize message"))
361- }
362- */
332+ // // Node.js 20 and below doesn't throw exception when transferring the same ArrayBuffer
333+ // // multiple times.
334+ // // See https://github.com/nodejs/node/commit/38dee8a1c04237bd231a01410f42e9d172f4c162
335+ // func testTransferMultipleTimes() async throws {
336+ // let executor = try await WebWorkerTaskExecutor(numberOfThreads: 1)
337+ // let Uint8Array = JSObject.global.Uint8Array.function!
338+ // let buffer = Uint8Array.new(100).buffer.object!
339+ // let transferring = JSSending.transfer(buffer)
340+ // let task1 = Task(executorPreference: executor) {
341+ // let buffer = try await transferring.receive()
342+ // return buffer.byteLength.number!
343+ // }
344+ // let byteLength1 = try await task1.value
345+ // XCTAssertEqual(byteLength1, 100)
346+ //
347+ // let task2 = Task<String?, Never>(executorPreference: executor) {
348+ // do {
349+ // _ = try await transferring.receive()
350+ // return nil
351+ // } catch {
352+ // return String(describing: error)
353+ // }
354+ // }
355+ // guard let jsErrorMessage = await task2.value else {
356+ // XCTFail("Should throw an error")
357+ // return
358+ // }
359+ // XCTAssertTrue(jsErrorMessage.contains("Failed to serialize message"))
360+ // }
363361
364362 func testCloneMultipleTimes( ) async throws {
365363 let executor = try await WebWorkerTaskExecutor ( numberOfThreads: 1 )
@@ -444,18 +442,16 @@ final class WebWorkerTaskExecutorTests: XCTestCase {
444442 XCTAssertEqual ( object [ " test " ] . string!, " Hello, World! " )
445443 }
446444
447- /*
448- func testDeinitJSObjectOnDifferentThread() async throws {
449- let executor = try await WebWorkerTaskExecutor(numberOfThreads: 1)
450-
451- var object: JSObject? = JSObject.global.Object.function!.new()
452- let task = Task(executorPreference: executor) {
453- object = nil
454- _ = object
455- }
456- await task.value
457- executor.terminate()
458- }
459- */
445+ // func testDeinitJSObjectOnDifferentThread() async throws {
446+ // let executor = try await WebWorkerTaskExecutor(numberOfThreads: 1)
447+ //
448+ // var object: JSObject? = JSObject.global.Object.function!.new()
449+ // let task = Task(executorPreference: executor) {
450+ // object = nil
451+ // _ = object
452+ // }
453+ // await task.value
454+ // executor.terminate()
455+ // }
460456}
461457#endif
0 commit comments