SHA256
Add Apple-platform tests without presenting them as Linux results. Improve native dark-mode contrast and keep the portable policy suite separate from WebKit tests. Swift formatting and syntax checks pass; Xcode execution remains required.
29 lines
962 B
Swift
29 lines
962 B
Swift
import WebKit
|
|
import XCTest
|
|
|
|
@testable import Yuvomi
|
|
|
|
final class BrowserModelTests: XCTestCase {
|
|
@MainActor
|
|
func testMainViewHasNoNativeBridgeOrAutomaticPopupAccess() {
|
|
let model = BrowserModel()
|
|
XCTAssertFalse(model.web.configuration.preferences.javaScriptCanOpenWindowsAutomatically)
|
|
XCTAssertTrue(model.web.configuration.userContentController.userScripts.isEmpty)
|
|
XCTAssertTrue(model.web.configuration.websiteDataStore.isPersistent)
|
|
XCTAssertFalse(model.web.isInspectable)
|
|
}
|
|
|
|
@MainActor
|
|
func testServerErasureReplacesHistoryContext() async {
|
|
let model = BrowserModel()
|
|
let previousView = model.web
|
|
await withCheckedContinuation { continuation in
|
|
model.erase { continuation.resume() }
|
|
}
|
|
XCTAssertFalse(previousView === model.web)
|
|
XCTAssertNil(model.server)
|
|
XCTAssertFalse(model.canGoBack)
|
|
XCTAssertNil(model.error)
|
|
}
|
|
}
|