- /**
- * Testing login
- * XXX this is a funny way of getting session context
- */
- public function testLogin() {
- $user = self::$users['uploader'];
- $userName = $user->getUser()->getName();
- $password = $user->getPassword();
-
- $params = [
- 'action' => 'login',
- 'lgname' => $userName,
- 'lgpassword' => $password
- ];
- list( $result, , $session ) = $this->doApiRequest( $params );
- $this->assertArrayHasKey( "login", $result );
- $this->assertArrayHasKey( "result", $result['login'] );
- $this->assertEquals( "NeedToken", $result['login']['result'] );
- $token = $result['login']['token'];
-
- $params = [
- 'action' => 'login',
- 'lgtoken' => $token,
- 'lgname' => $userName,
- 'lgpassword' => $password
- ];
- list( $result, , $session ) = $this->doApiRequest( $params, $session );
- $this->assertArrayHasKey( "login", $result );
- $this->assertArrayHasKey( "result", $result['login'] );
- $this->assertEquals( "Success", $result['login']['result'] );
-
- $this->assertNotEmpty( $session, 'API Login must return a session' );
-
- return $session;