示例#1
0
 public function testUserCRUDOperations()
 {
     // Create a new user
     $user = $this->gdata->createUser($this->id, self::GIVEN_NAME, self::FAMILY_NAME, sha1(self::PASSWORD), self::PASSWORD_HASH);
     $this->autoDelete($user);
     // Verify that returned values are correct
     $this->assertEquals($this->id, $user->login->username);
     $this->assertEquals(self::GIVEN_NAME, $user->name->givenName);
     $this->assertEquals(self::FAMILY_NAME, $user->name->familyName);
     // Since we can't retrieve the password or hash function via the
     // API, let's see if a ClientLogin auth request succeeds
     try {
         GData\ClientLogin::getHTTPClient($this->id . '@' . $this->domain, self::PASSWORD, 'xapi');
     } catch (\Zend\GData\App\AuthException $e) {
         $this->fail("Unable to authenticate new user via ClientLogin.");
     }
     // Check to make sure there are no extension elements/attributes
     // in the retrieved user
     $this->assertTrue(count($user->extensionElements) == 0);
     $this->assertTrue(count($user->extensionAttributes) == 0);
     // Try searching for the same user and make sure that they're returned
     $user2 = $this->gdata->retrieveUser($this->id);
     $this->assertEquals($user->saveXML(), $user2->saveXML());
     // Delete user (uses builtin delete method, convenience delete
     // method tested further down)
     $user->delete();
     // Ensure that user was deleted
     $deletedUser = $this->gdata->retrieveUser($this->id);
     $this->assertNull($deletedUser);
 }