public function testUpdate() { parent::testUpdate(); $product = Product::findOne(1); $this->assertTrue($product instanceof Product); $this->assertEquals('123', $product->int); $this->assertFalse($product->isNewRecord); $this->assertEmpty($product->dirtyAttributes); $product->int = 567; $product->save(); $this->assertEquals('567', $product->int); $product2 = Product::findOne(1); $this->assertEquals('567', $product2->int); // updateAll // todo need to create new DynamicQueryBuilder to override update() // $product = Product::findOne(3); // $this->assertEquals('value3', $product->children['str']); // $ret = Product::updateAll(['(!children.str!)' => 'temp'], ['id' => 3]); // $this->assertEquals(1, $ret); // $product = Product::findOne(3); // $this->assertEquals('temp', $product->children['str']); // // $ret = Product::updateAll(['(!children.str!)' => 'tempX']); // $this->assertEquals(3, $ret); // // $ret = Product::updateAll(['(!children.str!)' => 'tempp'], ['name' => 'product6']); // $this->assertEquals(0, $ret); }