2009-10-13 7 views
1

Je suis tombé sur le blog post qui a expliqué le sujet. Cependant, j'ai des problèmes avec les échantillons donnés.Test du câblage de la cible-action

Il vérifie cible action de liaison comme ceci:

STAssertEquals([doSomethingButton action], @selector(doSomething:), 
    @"The button should send -doSomething: to its target."); 

STAssertEquals([doSomethingButton target], _windowController, 
    @"The button should send its action to the window controller."); 

Cela fonctionne aussi longtemps que doSomethingButton est un UIBarButton. UISwitch ou UIButton n'ont pas de propriété target ou action. J'ai essayé ce qui suit pour affirmer leur câblage cible action:

GHAssertNotNil([[controller logSwitch] actionsForTarget:controller forControlEvent:UIControlEventValueChanged], nil); 

Cependant, il échoue même si je lui ai confirmé l'action est correctement appelé dans le simulateur. Quelle est la bonne façon d'affirmer sur le câblage d'une cible-action pour un UIControl?

MISE À JOUR:

UIControl - (NSSet *)allTargets 

semble revenir rien, même si le débogage de l'application et l'exécuter dans le appelé l'action !!!

Répondre

2

Cela semble vraiment être un bug dans le framework UIKit. J'ai déposé un rapport de bug à Apple.

Questions connexes