Skip to content

Commit bc1b1b1

Browse files
committed
Fix PinSafeAreaTabBarControllerSpec
1 parent 2c48e96 commit bc1b1b1

File tree

1 file changed

+21
-9
lines changed

1 file changed

+21
-9
lines changed

Tests/iOS/PinSafeAreaTests.swift

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -604,27 +604,36 @@ class PinSafeAreaTabBarControllerSpec: QuickSpec {
604604
describe("navigationbar + tabbar + subview") {
605605
it("translucent navigation bar") {
606606
let mainView = viewController.mainView
607+
let subViewTop = CGFloat(10)
608+
let subViewLeft = CGFloat(10)
607609

608610
mainView.layoutOffsetViewClosure = { (_ subView: UIView, _ parent: UIView) in
609-
subView.pin.top(10).left(10).size(100)
611+
subView.pin.top(subViewTop).left(subViewLeft).size(100)
610612
}
611613

612-
// navigationController.navigationBar.barStyle = .blackTranslucent
613614
navigationController.navigationBar.isTranslucent = true
614615
setupWindow(with: navigationController)
616+
617+
let expectedSafeAreaInsets = mainView.safeAreaInsets
618+
let expectedSubViewSafeAreaInsets = UIEdgeInsets(
619+
top: expectedSafeAreaInsets.top - subViewTop,
620+
left: .zero,
621+
bottom: .zero,
622+
right: .zero
623+
)
615624

616625
// MATCH safeAreaInsets!
617626
expect(mainView.safeAreaInsetsDidChangeCalledCount) > 0
618627
expect(mainView.subView.safeAreaInsetsDidChangeCalledCount) > 0
619628

620-
expect(mainView.pin.safeArea).to(equal(UIEdgeInsets(top: 44.0, left: 0.0, bottom: 49.0, right: 0.0)))
621-
expect(mainView.subView.pin.safeArea).to(equal(UIEdgeInsets(top: 34.0, left: 0.0, bottom: 0.0, right: 0.0)))
629+
expect(mainView.pin.safeArea).to(equal(expectedSafeAreaInsets))
630+
expect(mainView.subView.pin.safeArea).to(equal(expectedSubViewSafeAreaInsets))
622631
expect(mainView.subView.subViewB!.pin.safeArea).to(equal(UIEdgeInsets(top: 0.0, left: 0.0, bottom: 0.0, right: 0.0)))
623632

624633
let screenSize = mainView.frame.size
625634
expect(mainView.frame).to(equal(CGRect(x: 0, y: 0, width: screenSize.width, height: screenSize.height)))
626-
expect(mainView.subView.frame).to(equal(CGRect(x: 10, y: 10, width: 100, height: 100)))
627-
expect(mainView.subView.subViewB!.frame).to(equal(CGRect(x: 0, y: 34, width: 40, height: 40)))
635+
expect(mainView.subView.frame).to(equal(CGRect(x: subViewLeft, y: subViewTop, width: 100, height: 100)))
636+
expect(mainView.subView.subViewB!.frame).to(equal(CGRect(x: 0, y: expectedSubViewSafeAreaInsets.top, width: 40, height: 40)))
628637
}
629638
}
630639

@@ -638,18 +647,21 @@ class PinSafeAreaTabBarControllerSpec: QuickSpec {
638647

639648
navigationController.navigationBar.isTranslucent = true
640649
setupWindow(with: navigationController)
650+
651+
let expectedSafeAreaInsets = mainView.safeAreaInsets
652+
let expectedSubViewSafeAreaInsets = expectedSafeAreaInsets
641653

642654
// MATCH safeAreaInsets!
643655
expect(mainView.safeAreaInsetsDidChangeCalledCount) > 0
644656
expect(mainView.subView.safeAreaInsetsDidChangeCalledCount) > 0
645657

646-
expect(mainView.pin.safeArea).to(equal(UIEdgeInsets(top: 44.0, left: 0.0, bottom: 49.0, right: 0.0)))
647-
expect(mainView.subView.pin.safeArea).to(equal(UIEdgeInsets(top: 44.0, left: 0.0, bottom: 49.0, right: 0.0)))
658+
expect(mainView.pin.safeArea).to(equal(expectedSafeAreaInsets))
659+
expect(mainView.subView.pin.safeArea).to(equal(expectedSubViewSafeAreaInsets))
648660
expect(mainView.subView.subViewB!.pin.safeArea).to(equal(UIEdgeInsets(top: 0.0, left: 0.0, bottom: 0.0, right: 0.0)))
649661

650662
let screenSize = mainView.frame.size
651663
expect(mainView.subView.frame).to(equal(CGRect(x: 0, y: 0, width: screenSize.width, height: screenSize.height)))
652-
expect(mainView.subView.subViewB!.frame).to(equal(CGRect(x: 0, y: 44, width: 40, height: 40)))
664+
expect(mainView.subView.subViewB!.frame).to(equal(CGRect(x: 0, y: expectedSubViewSafeAreaInsets.top, width: 40, height: 40)))
653665
}
654666
}
655667
}

0 commit comments

Comments
 (0)