import Foundation import XCTest import RastrilloApple import RastrilloTestSupport @MainActor final class ScriptedPathSourceTests: XCTestCase { func testDrivesConnectivity() async { let source = ScriptedPathSource(.satisfied) let connectivity = NativeConnectivity(source: source) let origin = URL(string: "https://docs.example")! for _ in 0..<200 where connectivity.path == nil { try? await Task.sleep(nanoseconds: 5_000_000) } XCTAssertEqual(connectivity.path?.status, .satisfied, "The initial path was not delivered") source.send(.unsatisfied) for _ in 0..<200 where !connectivity.isOffline(origin) { try? await Task.sleep(nanoseconds: 5_000_000) } XCTAssertTrue(connectivity.isOffline(origin)) } }