0
對於IPAD APP 我有一個帶有「Plus」圖標作爲背景的酒吧按鈕項目。 當我點擊它時,我顯示一個UIPopOverViewController。 我想編寫一個測試用例來檢查單擊加號按鈕時PopOver是否顯示。用於UIPOPOverViewController的TestCase
對於IPAD APP 我有一個帶有「Plus」圖標作爲背景的酒吧按鈕項目。 當我點擊它時,我顯示一個UIPopOverViewController。 我想編寫一個測試用例來檢查單擊加號按鈕時PopOver是否顯示。用於UIPOPOverViewController的TestCase
如果您在視圖中引用了彈出窗口,則可以對其進行部分模擬,然後驗證是否調用了當前方法。這將是這個樣子:
MyViewController *vc = [[MyViewController alloc] init];
id popoverMock = OCMPartialMock(vc.popover);
[vc pressPlusButton];
OCMVerify([popoverMock presentPopoverFromRect:OOCMOCK_ANY inView:OCMOCK_ANY permittedArrowDirections:OCMOCK_ANY animated:OCMOCK_ANY]);
如果你沒有和/或不想要的酥料餅的引用,你可能將不得不作出的UIPopOverViewController
一類模擬,存根其initWithContentViewController:
到返回類模擬,然後你可以驗證現在被調用的方式與上面類似。
MyViewController *vc = [[MyViewController alloc] init];
id popoverMock = OCMClassMock(UIPopOverViewController);
OCMStub([popoverMock initWithContentViewController:OCMOCK_ANY]).andReturn(popoverMock);
[vc pressPlusButton];
OCMVerify([popoverMock presentPopoverFromRect:OOCMOCK_ANY inView:OCMOCK_ANY permittedArrowDirections:OCMOCK_ANY animated:OCMOCK_ANY]);