web-dev-qa-db-fra.com

des tests automatisés en tant qu'utilisateur?

J'ai vérifié (avec svn) le code pour les tests automatisés . Cependant, je souhaite exécuter des tests unitaires en tant qu'utilisateur spécifique.

Y-a-t-il un moyen de faire ça? Autrement dit, existe-t-il un moyen de se connecter avec le code php seul?

2
Alexander Bird
$user_id = $this->_make_user('author', 'user_login_name', 'password', '[email protected]');
wp_set_current_user( $user_id );

tant que la classe dans laquelle vous définissez le testcase hérite de WPTestCase, vous pouvez utiliser la fonction _make_user. La fonction se trouve dans ce référentiel svn , et est définie dans wp-testlib/base.php ligne 380.

NOUVEAU:

Je suis passé à l'aide de wp_insert_user.

ce qui suit est dans mon setUp:

    $this->user_id = wp_insert_user(array('user_login'=>'test_administrator', 'role'=>'administrator'));
    wp_set_current_user( $this->user_id , '');

et ce qui suit est dans mon démontage:

    wp_delete_user($this->user_id);
    $this->user_id = 0;
3
Alexander Bird