first working unittest for ajax/getcontacttags with login!

This commit is contained in:
Christian Weiske 2011-03-26 10:00:18 +01:00
parent 6d49b0622d
commit 0f9d06c664
2 changed files with 28 additions and 11 deletions

View file

@ -131,7 +131,6 @@ class TestBaseApi extends TestBase
*/ */
protected function getLoggedInRequest($urlSuffix = null, $auth = true) protected function getLoggedInRequest($urlSuffix = null, $auth = true)
{ {
$req = $this->getRequest($urlSuffix);
if (is_array($auth)) { if (is_array($auth)) {
list($username, $password) = $auth; list($username, $password) = $auth;
} else { } else {
@ -140,8 +139,22 @@ class TestBaseApi extends TestBase
} }
$uid = $this->addUser($username, $password); $uid = $this->addUser($username, $password);
//FIXME: login via the login form, check if it worked $req = new HTTP_Request2(
//FIXME: prepare new request with cookie $GLOBALS['unittestUrl'] . '/login.php',
HTTP_Request2::METHOD_POST
);
$cookies = $req->setCookieJar()->getCookieJar();
$req->addPostParameter('username', $username);
$req->addPostParameter('password', $password);
$req->addPostParameter('submitted', 'Log In');
$res = $req->send();
//after login, we normally get redirected
$this->assertEquals(302, $res->getStatus(), 'Login failure');
$req = $this->getRequest($urlSuffix);
$req->setCookieJar($cookies);
return array($req, $uid); return array($req, $uid);
} }

View file

@ -47,13 +47,17 @@ class ajax_GetContactTagsTest extends TestBaseApi
} }
public function testUserLoggedIn() public function testUserLoggedInWatchlist()
{ {
list($req, $uId) = $this->getAuthRequest(); list($req, $uId) = $this->getLoggedInRequest();
$this->addBookmark($uId, null, 0, array('public')); $this->addBookmark($uId, null, 0, array('public', 'public2'));
$this->addBookmark($uId, null, 1, array('shared'));
$this->addBookmark($uId, null, 2, array('private')); $user2 = $this->addUser();
$this->us->setCurrentUserId($uId);
$this->us->setWatchStatus($user2);
//uId watches user2 now
$this->addBookmark($user2, null, 0, array('user2tag'));
$res = $req->send(); $res = $req->send();
$this->assertEquals(200, $res->getStatus()); $this->assertEquals(200, $res->getStatus());
$this->assertEquals( $this->assertEquals(
@ -64,8 +68,8 @@ class ajax_GetContactTagsTest extends TestBaseApi
$this->assertInternalType('array', $data); $this->assertInternalType('array', $data);
$this->assertEquals(3, count($data)); $this->assertEquals(3, count($data));
$this->assertContains('public', $data); $this->assertContains('public', $data);
$this->assertContains('shared', $data); $this->assertContains('public2', $data);
$this->assertContains('private', $data); $this->assertContains('user2tag', $data);
} }
} }