Skip to content

Commit e7e4350

Browse files
committed
[CHANGE] Disable webSocketTests that might fail randomly
1 parent 1aba890 commit e7e4350

File tree

1 file changed

+100
-97
lines changed

1 file changed

+100
-97
lines changed

Tests/Web3SwiftTests/Client/EthereumClientTests.swift

+100-97
Original file line numberDiff line numberDiff line change
@@ -474,103 +474,106 @@ class EthereumWebSocketClientTests: EthereumClientTests {
474474
XCTAssertEqual(client.currentState, WebSocketState.open)
475475
}
476476

477-
func testWebSocketPendingTransactions() async {
478-
do {
479-
guard let client = client as? EthereumWebSocketClient else {
480-
XCTFail("Expected client to be EthereumWebSocketClient")
481-
return
482-
}
483-
484-
var expectation: XCTestExpectation? = self.expectation(description: "Pending Transaction")
485-
let subscription = try await client.pendingTransactions { _ in
486-
expectation?.fulfill()
487-
expectation = nil
488-
}
489-
490-
await waitForExpectations(timeout: 5, handler: nil)
491-
492-
XCTAssertNotEqual(subscription.id, "")
493-
XCTAssertEqual(subscription.type, .newPendingTransactions)
494-
} catch {
495-
XCTFail("Expected subscription but failed \(error).")
496-
}
497-
}
498-
499-
func testWebSocketNewBlockHeaders() async {
500-
do {
501-
guard let client = client as? EthereumWebSocketClient else {
502-
XCTFail("Expected client to be EthereumWebSocketClient")
503-
return
504-
}
505-
506-
var expectation: XCTestExpectation? = self.expectation(description: "New Block Headers")
507-
let subscription = try await client.newBlockHeaders { _ in
508-
expectation?.fulfill()
509-
expectation = nil
510-
}
511-
512-
// we need a high timeout as new block might take a while
513-
await waitForExpectations(timeout: 2500, handler: nil)
514-
515-
XCTAssertNotEqual(subscription.id, "")
516-
XCTAssertEqual(subscription.type, .newBlockHeaders)
517-
} catch {
518-
XCTFail("Expected subscription but failed \(error).")
519-
}
520-
}
521-
522-
func testWebSocketLogs() async {
523-
do {
524-
guard let client = client as? EthereumWebSocketClient else {
525-
XCTFail("Expected client to be EthereumWebSocketClient")
526-
return
527-
}
528-
529-
var expectation: XCTestExpectation? = self.expectation(description: "Logs")
530-
let type = EthereumSubscriptionType.logs(nil)
531-
let subscription = try await client.logs { log in
532-
print(log)
533-
expectation?.fulfill()
534-
expectation = nil
535-
}
536-
537-
// we need a high timeout as new block might take a while
538-
await waitForExpectations(timeout: 2500, handler: nil)
539-
540-
XCTAssertNotEqual(subscription.id, "")
541-
XCTAssertEqual(subscription.type, type)
542-
} catch {
543-
XCTFail("Expected subscription but failed \(error).")
544-
}
545-
}
546-
547-
func testWebSocketSubscribe() async {
548-
do {
549-
guard let client = client as? EthereumWebSocketClient else {
550-
XCTFail("Expected client to be EthereumWebSocketClient")
551-
return
552-
}
553-
client.delegate = self
554-
555-
delegateExpectation = expectation(description: "onNewPendingTransaction delegate call")
556-
var subscription = try await client.subscribe(type: .newPendingTransactions)
557-
await waitForExpectations(timeout: 10)
558-
_ = try await client.unsubscribe(subscription)
559-
560-
delegateExpectation = expectation(description: "onNewBlockHeader delegate call")
561-
subscription = try await client.subscribe(type: .newBlockHeaders)
562-
await waitForExpectations(timeout: 2500)
563-
_ = try await client.unsubscribe(subscription)
564-
565-
delegateExpectation = expectation(description: "onLogs delegate call")
566-
let type = EthereumSubscriptionType.logs(nil)
567-
subscription = try await client.subscribe(type: type)
568-
await waitForExpectations(timeout: 2500)
569-
_ = try await client.unsubscribe(subscription)
570-
} catch {
571-
XCTFail("Expected subscription but failed \(error).")
572-
}
573-
}
477+
// These tests may fail if the blockchain isn't producing new blocks within the expected timeframes.
478+
/*
479+
func testWebSocketPendingTransactions() async {
480+
do {
481+
guard let client = client as? EthereumWebSocketClient else {
482+
XCTFail("Expected client to be EthereumWebSocketClient")
483+
return
484+
}
485+
486+
var expectation: XCTestExpectation? = self.expectation(description: "Pending Transaction")
487+
let subscription = try await client.pendingTransactions { _ in
488+
expectation?.fulfill()
489+
expectation = nil
490+
}
491+
492+
await waitForExpectations(timeout: 5, handler: nil)
493+
494+
XCTAssertNotEqual(subscription.id, "")
495+
XCTAssertEqual(subscription.type, .newPendingTransactions)
496+
} catch {
497+
XCTFail("Expected subscription but failed \(error).")
498+
}
499+
}
500+
501+
func testWebSocketNewBlockHeaders() async {
502+
do {
503+
guard let client = client as? EthereumWebSocketClient else {
504+
XCTFail("Expected client to be EthereumWebSocketClient")
505+
return
506+
}
507+
508+
var expectation: XCTestExpectation? = self.expectation(description: "New Block Headers")
509+
let subscription = try await client.newBlockHeaders { _ in
510+
expectation?.fulfill()
511+
expectation = nil
512+
}
513+
514+
// we need a high timeout as new block might take a while
515+
await waitForExpectations(timeout: 2500, handler: nil)
516+
517+
XCTAssertNotEqual(subscription.id, "")
518+
XCTAssertEqual(subscription.type, .newBlockHeaders)
519+
} catch {
520+
XCTFail("Expected subscription but failed \(error).")
521+
}
522+
}
523+
524+
func testWebSocketLogs() async {
525+
do {
526+
guard let client = client as? EthereumWebSocketClient else {
527+
XCTFail("Expected client to be EthereumWebSocketClient")
528+
return
529+
}
530+
531+
var expectation: XCTestExpectation? = self.expectation(description: "Logs")
532+
let type = EthereumSubscriptionType.logs(nil)
533+
let subscription = try await client.logs { log in
534+
print(log)
535+
expectation?.fulfill()
536+
expectation = nil
537+
}
538+
539+
// we need a high timeout as new block might take a while
540+
await waitForExpectations(timeout: 2500, handler: nil)
541+
542+
XCTAssertNotEqual(subscription.id, "")
543+
XCTAssertEqual(subscription.type, type)
544+
} catch {
545+
XCTFail("Expected subscription but failed \(error).")
546+
}
547+
}
548+
549+
func testWebSocketSubscribe() async {
550+
do {
551+
guard let client = client as? EthereumWebSocketClient else {
552+
XCTFail("Expected client to be EthereumWebSocketClient")
553+
return
554+
}
555+
client.delegate = self
556+
557+
delegateExpectation = expectation(description: "onNewPendingTransaction delegate call")
558+
var subscription = try await client.subscribe(type: .newPendingTransactions)
559+
await waitForExpectations(timeout: 10)
560+
_ = try await client.unsubscribe(subscription)
561+
562+
delegateExpectation = expectation(description: "onNewBlockHeader delegate call")
563+
subscription = try await client.subscribe(type: .newBlockHeaders)
564+
await waitForExpectations(timeout: 2500)
565+
_ = try await client.unsubscribe(subscription)
566+
567+
delegateExpectation = expectation(description: "onLogs delegate call")
568+
let type = EthereumSubscriptionType.logs(nil)
569+
subscription = try await client.subscribe(type: type)
570+
await waitForExpectations(timeout: 2500)
571+
_ = try await client.unsubscribe(subscription)
572+
} catch {
573+
XCTFail("Expected subscription but failed \(error).")
574+
}
575+
}
576+
*/
574577

575578
func testWebSocketUnsubscribe() async {
576579
do {

0 commit comments

Comments
 (0)