コード例 #1
0
ファイル: ORMTest.php プロジェクト: riaf/selfish
 public function testUpdateHelper()
 {
     $date = new DateTime();
     // simple entity
     $entity = new SampleEntity();
     $entity->setName('Hoge');
     $entity->date = $date->format('Y-m-d H:i:s');
     list($sql, $parameters) = ORM::updateHelper($entity, array('id'));
     $this->assertEquals('UPDATE `sample_entity` SET name = :name, date = :date WHERE id = :id', $sql);
     $this->assertEquals(3, count($parameters));
     $this->assertEquals(5, $parameters['id']);
     $this->assertEquals('Hoge', $parameters['name']);
     $this->assertEquals($date->format('Y-m-d H:i:s'), $parameters['date']);
     // implements Entity
     $entity = new SampleEntity2();
     $entity->id = 3;
     $entity->name = 'Fuga';
     $entity->date = $date->format('Y-m-d H:i:s');
     list($sql, $parameters) = ORM::updateHelper($entity, array('id'));
     $this->assertEquals('UPDATE `sample2` SET name = :name, date = :date WHERE id = :id', $sql);
     $this->assertEquals(3, count($parameters));
     $this->assertEquals(3, $parameters['id']);
     $this->assertEquals('Fuga', $parameters['name']);
     $this->assertEquals($date->format('Y-m-d H:i:s'), $parameters['date']);
 }
コード例 #2
0
 public function testDiffReturnsArray()
 {
     $entity = new SampleEntity(['foo' => 'bar', 'baz' => 1]);
     $diff = $entity->diff();
     $this->assertEquals(0, count($diff));
     $entity->baz = 2;
     $diff = $entity->diff();
     $this->assertEquals(['baz' => 2], $diff);
     $entity->qux = '@';
     $diff = $entity->diff();
     $this->assertEquals(['baz' => 2, 'qux' => '@'], $diff);
 }