Fix opencode scrolling. Fix build script

This commit is contained in:
2026-04-28 00:03:08 +10:00
parent c8cb209165
commit 1a09eb588d
6 changed files with 158 additions and 1 deletions

View File

@@ -0,0 +1,49 @@
import XCTest
@testable import CommandNotch
import SwiftTerm
final class TerminalScrollWheelRouterTests: XCTestCase {
func testMouseWheelForwardingRequiresMouseReportingAndActiveMouseMode() {
XCTAssertFalse(TerminalScrollWheelRouter.shouldSendMouseWheel(
allowMouseReporting: false,
mouseMode: .vt200,
deltaY: 1
))
XCTAssertFalse(TerminalScrollWheelRouter.shouldSendMouseWheel(
allowMouseReporting: true,
mouseMode: .off,
deltaY: 1
))
XCTAssertFalse(TerminalScrollWheelRouter.shouldSendMouseWheel(
allowMouseReporting: true,
mouseMode: .vt200,
deltaY: 0
))
XCTAssertTrue(TerminalScrollWheelRouter.shouldSendMouseWheel(
allowMouseReporting: true,
mouseMode: .vt200,
deltaY: -1
))
}
func testVelocityMatchesExpectedThresholds() {
XCTAssertEqual(TerminalScrollWheelRouter.velocity(for: 1), 1)
XCTAssertEqual(TerminalScrollWheelRouter.velocity(for: 2), 3)
XCTAssertEqual(TerminalScrollWheelRouter.velocity(for: 6), 10)
XCTAssertEqual(TerminalScrollWheelRouter.velocity(for: 10), 20)
}
func testGridPositionClampsToTerminalBounds() {
let hit = TerminalScrollWheelRouter.gridPosition(
point: CGPoint(x: 210, y: -10),
bounds: CGRect(x: 0, y: 0, width: 200, height: 100),
cols: 10,
rows: 5
)
XCTAssertEqual(hit.x, 9)
XCTAssertEqual(hit.y, 4)
XCTAssertEqual(hit.pixelX, 200)
XCTAssertEqual(hit.pixelY, 100)
}
}