在cakephp上删除并创建带有fixture的表

时间:2015-01-18 19:06:41

标签: php cakephp testing

我已经看到了这个问题:

CakePHP PHPUnit Fixtures Drop Database Table Every Time

Creating multiple fixtures in cakePhp

CakePHP Test Fixtures Drop My Tables Permanently After Running A Test Case

但我觉得这个链接很旧。

我想创建测试,其中Im'loading fixtures所以测试drop table并用记录创建它。

我的问题是:测试删除taboles btu它不会重新创建它。

这是我的模型,我正在加载灯具:

App::uses('Post', 'Model');

class PostTest extends CakeTestCase {
    public $fixtures = array('app.post');

    public function setUp() {
        parent::setUp();
        $this->Post         = ClassRegistry::init('Post');
    }

    public function testSetTemplate() {

        $this->assertEquals('1', '1');
    }
}

这是我的夹具文件:

class PostFixture extends CakeTestFixture {
    public  $import = array('model' => 'Post', 'records' => true);

    public $name = 'Post'; 
    public  $table = 'posts';

    public $fields = array(
        'id'                => array('type' => 'integer', 'length' => 36, 'key' => 'primary'),
        'created'        => array('type' => 'datetime'),
        'modifed'        => array('type' => 'datetime')
    );

    public $records = array(
        array(
            'id'                => '1',
            'created'           => '2014-01-17 12:31:41',
            'modified'          => '2014-07-22 09:50:42'
        ),
    );
}

我也尝试过:

public  $import = array('model' => 'Post', 'records' => false);

同样的事情测试删除表但不创建它。

我需要在删除记录后创建它。

哪里出错?为什么测试不会重新创建表格帖子但只删除它?

由于

0 个答案:

没有答案