1
1
mirror of https://github.com/qvacua/vimr.git synced 2024-11-23 19:21:53 +03:00
vimr/NvimView/Tests/NvimViewTests/NimbleCommons.swift
2023-12-23 20:55:42 +01:00

32 lines
814 B
Swift

/**
* Tae Won Ha - http://taewon.de - @hataewon
* See LICENSE
*/
import Cocoa
import Nimble
// I don't know why the font returned by Typesetter is not equal to the font
// it should be equal to. This is a workaround.
func equalFont(_ expectedValue: NSFont?) -> Nimble.Predicate<NSFont> {
Predicate { actualExpression in
let msg = ExpectationMessage.expectedActualValueTo(
"equal <\(String(describing: expectedValue))>"
)
if let actualValue = try actualExpression.evaluate() {
return PredicateResult(
bool: NSFont(
name: actualValue.fontName,
size: actualValue.pointSize
) == expectedValue!,
message: msg
)
} else {
return PredicateResult(
status: .fail,
message: msg.appendedBeNilHint()
)
}
}
}