public function testArrayConfigConverter() { $model = new Post(self::$dtConverter); $model->attachBehaviors([['class' => ConverterBehavior::className(), 'type' => ConverterBehavior::TYPE_DATE_TIME, 'to' => ConverterBehavior::TO_SAVE, 'attributes' => [Post::EVENT_BEFORE_VALIDATE => ['datetime']], 'converter' => ['class' => Converter::className(), 'patterns' => self::$dtConverter->patterns]], ['class' => ConverterBehavior::className(), 'type' => ConverterBehavior::TYPE_DATE_TIME, 'to' => ConverterBehavior::TO_DISPLAY, 'attributes' => [Post::EVENT_AFTER_VALIDATE => ['datetime']]]]); $model->load(['datetime' => '12.12.2016, 11:25'], ''); if ($model->validate()) { $this->assertEquals('1481531100', $model->getPreparedData()['datetime']); $this->assertEquals('12.12.2016, 11:25', $model->datetime); } else { $this->fail(implode(PHP_EOL, $model->getErrors('datetime'))); } }
public function testCreatePostSetTranslations() { $post = new Post(); $data = ['title' => 'New post title', 'body' => 'New post body', 'title_en_us' => 'New post title en', 'body_en_us' => 'New post body en', 'title_ru' => 'New post title ru', 'body_ru' => 'New post body ru']; $formName = $post->formName(); if (!empty($formName)) { $data = [$formName => $data]; } $post->load($data); $this->assertTrue($post->save()); $dataSet = $this->getConnection()->createDataSet(['post', 'postLang']); $expectedDataSet = $this->createFlatXMLDataSet(__DIR__ . '/data/test-create-post-set-translations-na.xml'); $this->assertDataSetsEqual($expectedDataSet, $dataSet); }