mirror of
https://github.com/stablyai/orca.git
synced 2026-11-13 17:37:40 +00:00
28 lines
926 B
Swift
28 lines
926 B
Swift
import Foundation
|
|
@testable import OrcaComputerUseMacOSCore
|
|
import XCTest
|
|
|
|
final class AgentConnectionRequestLoopTests: XCTestCase {
|
|
func testReleasesARequestsAutoreleasedObjectsBeforeTheNextRequest() {
|
|
var lines = ["screenshot", "next"]
|
|
weak var screenshotBuffer: NSObject?
|
|
var releasedBeforeNextRequest: Bool?
|
|
|
|
AgentConnectionRequestLoop.run(readLine: { lines.isEmpty ? nil : lines.removeFirst() }) { line in
|
|
if line == "screenshot" {
|
|
let buffer = NSObject()
|
|
screenshotBuffer = buffer
|
|
// Why: stands in for the objects AppKit PNG encoding leaves in the pool.
|
|
_ = Unmanaged.passRetained(buffer).autorelease()
|
|
} else {
|
|
releasedBeforeNextRequest = screenshotBuffer == nil
|
|
}
|
|
return true
|
|
}
|
|
|
|
XCTAssertEqual(releasedBeforeNextRequest, true)
|
|
}
|
|
|
|
|
|
}
|