import XCTest @testable import CommandNotch final class WindowFrameCalculatorTests: XCTestCase { func testClosedStateCentersWindowOnScreen() { let frame = WindowFrameCalculator.targetFrame( screenFrame: CGRect(x: 100, y: 50, width: 1600, height: 900), currentWindowFrame: CGRect(x: 300, y: 0, width: 0, height: 0), notchState: .closed, contentSize: CGSize(width: 800, height: 300), centerHorizontally: false ) XCTAssertEqual(frame.origin.x, 480, accuracy: 0.001) XCTAssertEqual(frame.origin.y, 630, accuracy: 0.001) XCTAssertEqual(frame.size.width, 840, accuracy: 0.001) XCTAssertEqual(frame.size.height, 320, accuracy: 0.001) } func testOpenStateClampsDraggedFrameWithinScreenBounds() { let frame = WindowFrameCalculator.targetFrame( screenFrame: CGRect(x: 0, y: 0, width: 1440, height: 900), currentWindowFrame: CGRect(x: 1200, y: 0, width: 0, height: 0), notchState: .open, contentSize: CGSize(width: 900, height: 320), centerHorizontally: false ) XCTAssertEqual(frame.origin.x, 500, accuracy: 0.001) XCTAssertEqual(frame.origin.y, 560, accuracy: 0.001) } }