public function testSelect() { $model = new Kwf_Model_FnF(); $model->setData(array(array('id' => 1, 'value' => 'foo'), array('id' => 2, 'value' => 'bar'), array('id' => 3, 'value' => 'baz'), array('id' => 4, 'value' => 'buz'))); $this->assertEquals(count($model->getRows()), 4); $select = $model->select(); $select->whereEquals('value', 'foo'); $this->_assertIds($model, $select, array(1)); $select = $model->select(); $select->whereEquals('value', array('foo', 'baz')); $this->_assertIds($model, $select, array(1, 3)); $this->assertEquals($model->countRows($select), 2); }
public function testAdditionalStore() { $addStore = new Kwf_Model_FnF(); $model = new Kwf_Model_Mail_Model_NoSend(array('tpl' => 'UserActivation', 'spamFields' => array(), 'additionalStore' => $addStore)); $row = $model->createRow(); $row->addTo('*****@*****.**'); $row->setFrom('*****@*****.**', 'Kwf'); $row->subject = 'foo sub'; $row->foo = 'bar'; $row->foo2 = 'bar2'; // zweimal saven ist absicht, die additional row darf dennoch nur einmal angelegt werden $row->save(); $row->save(); $addRows = $addStore->getRows(); $this->assertEquals(1, count($addRows)); $addRow = $addRows->current(); $this->assertEquals('bar', $addRow->foo); $this->assertEquals('bar2', $addRow->foo2); $this->assertEquals('foo sub', $addRow->subject); }
public function testExprEqualExpr() { $model = new Kwf_Model_FnF(array('exprs' => array('test' => new Kwf_Model_Select_Expr_Equals('value', new Kwf_Model_Select_Expr_Field('value'))))); $model->setData(array(array('id' => 1, 'value' => 10), array('id' => 2, 'value' => 20), array('id' => 3, 'value' => 30), array('id' => 4, 'value' => 40), array('id' => 5, 'value' => 50), array('id' => 6, 'value' => 60))); $this->assertTrue($model->getRow(1)->test); $rows = $model->getRows($model->select()->where(new Kwf_Model_Select_Expr_Equals('value', new Kwf_Model_Select_Expr_Field('value')))); $this->assertEquals(count($rows), $model->countRows()); }
public function testUnion() { $model = new Kwf_Model_FnF(); $model->setData(array(array('id' => 1, 'value' => 'foo'), array('id' => 2, 'value' => 'bar'))); $s1 = new Kwf_Model_Select(); $s1->whereEquals('id', 1); $s2 = new Kwf_Model_Select(); $s2->whereEquals('id', 2); $s1->union($s2); $this->assertEquals($model->countRows($s1), 2); $this->assertEquals(count($model->getRows($s1)), 2); $this->assertEquals(count($model->export(Kwf_Model_Interface::FORMAT_ARRAY, $s1)), 2); }
public function getRows($where = null, $order = null, $limit = null, $start = null) { $this->getRowsCalled++; return parent::getRows($where, $order, $limit, $start); }