Exemple #1
0
 public function testCreateWithOneToOne()
 {
     $this->loadFixtures(['Users', 'Profiles']);
     $user = new User();
     $user->country_id = 1;
     $user->username = '******';
     $user->firstName = 'Tony';
     $user->lastName = 'Stark';
     $user->password = '******';
     $user->email = '*****@*****.**';
     $user->age = 38;
     $profile = new Profile();
     $profile->lastLogin = '******';
     $user->link($profile);
     $this->assertEquals(6, $user->save(['validate' => false]));
     $this->assertEquals(new User(['id' => 6, 'country_id' => 1, 'username' => 'ironman', 'firstName' => 'Tony', 'lastName' => 'Stark', 'password' => '7NAks9193KAkjs1', 'email' => '*****@*****.**', 'age' => 38, 'created' => '', 'modified' => '', 'Profile' => new Profile(['id' => 6, 'user_id' => 6, 'lastLogin' => '2012-06-24 17:30:33', 'currentLogin' => ''])]), User::select()->where('id', 6)->with('Profile')->first());
 }
Exemple #2
0
 /**
  * Test database record updating against unique columns.
  */
 public function testUpdateUniqueColumn()
 {
     $this->loadFixtures('Users');
     $first = User::select()->orderBy('_id', 'asc')->first();
     $user = new User();
     $user->id = $first->_id;
     $user->username = '******';
     // name already exists
     try {
         $this->assertEquals(1, $user->save());
         $this->assertTrue(false);
     } catch (Exception $e) {
         $this->assertTrue(true);
     }
 }
Exemple #3
0
 public function testValidate()
 {
     $this->loadFixtures('Users');
     $user = new User();
     $user->username = '******';
     // needs to be 5
     $this->assertEquals(0, $user->save());
     $this->assertEquals(['username' => 'Must be between 5 and 25 chars'], $user->getErrors());
     $user->username = '******';
     // good!
     $this->assertNotEquals(0, $user->save());
     $this->assertEquals([], $user->getErrors());
     $user->username = '******';
     // ignore validation
     $this->assertNotEquals(0, $user->save(['validate' => false]));
     $this->assertEquals([], $user->getErrors());
     // Now with multiple fields
     $user->username = '******';
     $user->firstName = 123;
     $user->lastName = 'abc';
     $this->assertEquals(0, $user->save());
     $this->assertEquals(['username' => 'Must be between 5 and 25 chars', 'firstName' => 'Must be alphabetical', 'lastName' => 'Must be a number'], $user->getErrors());
 }