QA@IT
«質問へ戻る

質問を投稿

xctest上でのuiviewにactionsheet

連日すみません。。。

昨日の件は解決できました
ありがとうございました

次にactionsheetに追加する部分が通るか確認するテストコードを書いていたのですが、
また、エラーが。。。

-(void)testElaseSheet
{
    //UIWindow* window = [[[UIApplication sharedApplication] delegate] window];

    [[mockactionsheet expect] showInView:[[[[UIApplication sharedApplication] keyWindow] subviews] lastObject]];



    vc.aActionSheet = mockactionsheet;
    [vc showEraseSheet:mockelaser];
    [mockactionsheet verify];

}

こういったエラーが。。。

<unknown>:0: error: -[ViewControllerTests testElaseSheet] : Sheet can not be presented because the view is not in a window: <UIView: 0xb9df390; frame = (0 0; 320 568); autoresize = W+H; layer = 

ググってみたところいっぱい出てきたのですが、大体ここに書いてある
http://stackoverflow.com/questions/18932544/nsinvalidargumentexception-reason-sheet-can-not-be-presented-because-the-vi

2つとも試したのですが、結果は同じでした。。。

他に何か有効な手段はありますでしょうか

よろしくお願いします

連日すみません。。。

昨日の件は解決できました
ありがとうございました

次にactionsheetに追加する部分が通るか確認するテストコードを書いていたのですが、
また、エラーが。。。

```
-(void)testElaseSheet
{
    //UIWindow* window = [[[UIApplication sharedApplication] delegate] window];
    
    [[mockactionsheet expect] showInView:[[[[UIApplication sharedApplication] keyWindow] subviews] lastObject]];

    
    
    vc.aActionSheet = mockactionsheet;
    [vc showEraseSheet:mockelaser];
    [mockactionsheet verify];
    
}

```

こういったエラーが。。。

```
<unknown>:0: error: -[ViewControllerTests testElaseSheet] : Sheet can not be presented because the view is not in a window: <UIView: 0xb9df390; frame = (0 0; 320 568); autoresize = W+H; layer = 
```

ググってみたところいっぱい出てきたのですが、大体ここに書いてある
http://stackoverflow.com/questions/18932544/nsinvalidargumentexception-reason-sheet-can-not-be-presented-because-the-vi

2つとも試したのですが、結果は同じでした。。。

他に何か有効な手段はありますでしょうか

よろしくお願いします