mirror of https://github.com/SnapKit/SnapKit
Make ConstraintMakerRelatable targets work with UILayoutGuide (#372)
* Make ConstraintMakerRelatable targets work with UILayoutGuide * Fix unit tests on macOS * Fix the OS API version availability directives
This commit is contained in:
parent
32cd509939
commit
63bf462e81
|
@ -57,6 +57,9 @@ public class ConstraintMakerRelatable {
|
|||
} else if let other = other as? ConstraintConstantTarget {
|
||||
related = ConstraintItem(target: nil, attributes: ConstraintAttributes.none)
|
||||
constant = other
|
||||
} else if #available(iOS 9.0, OSX 10.11, *), let other = other as? ConstraintLayoutGuide {
|
||||
related = ConstraintItem(target: other, attributes: ConstraintAttributes.none)
|
||||
constant = 0.0
|
||||
} else {
|
||||
fatalError("Invalid constraint. (\(file), \(line))")
|
||||
}
|
||||
|
|
|
@ -60,3 +60,7 @@ extension ConstraintItem: ConstraintRelatableTarget {
|
|||
|
||||
extension ConstraintView: ConstraintRelatableTarget {
|
||||
}
|
||||
|
||||
@available(iOS 9.0, OSX 10.11, *)
|
||||
extension ConstraintLayoutGuide: ConstraintRelatableTarget {
|
||||
}
|
||||
|
|
|
@ -60,16 +60,16 @@ class SnapKitTests: XCTestCase {
|
|||
|
||||
}
|
||||
|
||||
#if os(iOS) || os(tvOS)
|
||||
func testGuideMakeConstraints() {
|
||||
guard #available(iOS 9.0, *) else { return }
|
||||
guard #available(iOS 9.0, OSX 10.11, *) else { return }
|
||||
let v1 = View()
|
||||
let g1 = UILayoutGuide()
|
||||
|
||||
let g1 = ConstraintLayoutGuide()
|
||||
self.container.addSubview(v1)
|
||||
self.container.addLayoutGuide(g1)
|
||||
|
||||
v1.snp.makeConstraints { (make) -> Void in
|
||||
make.top.equalTo(g1.snp.top).offset(50)
|
||||
make.top.equalTo(g1).offset(50)
|
||||
make.left.equalTo(g1.snp.top).offset(50)
|
||||
return
|
||||
}
|
||||
|
@ -83,7 +83,6 @@ class SnapKitTests: XCTestCase {
|
|||
|
||||
XCTAssertEqual(self.container.snp_constraints.count, 6, "Should have 6 constraints installed")
|
||||
}
|
||||
#endif
|
||||
|
||||
func testMakeImpliedSuperviewConstraints() {
|
||||
let v1 = View()
|
||||
|
@ -130,7 +129,6 @@ class SnapKitTests: XCTestCase {
|
|||
|
||||
}
|
||||
|
||||
|
||||
func testRemakeConstraints() {
|
||||
let v1 = View()
|
||||
let v2 = View()
|
||||
|
|
Loading…
Reference in New Issue