RedUNIT\Sqlite\Foreignkeys::testAddingForeignKeys PHP Метод

testAddingForeignKeys() публичный Метод

Test adding foreign keys.
public testAddingForeignKeys ( ) : void
Результат void
    public function testAddingForeignKeys()
    {
        R::nuke();
        $sql = 'CREATE TABLE book ( id INTEGER PRIMARY KEY AUTOINCREMENT ) ';
        R::exec($sql);
        $sql = 'CREATE TABLE page ( id INTEGER PRIMARY KEY AUTOINCREMENT, book_id INTEGER ) ';
        R::exec($sql);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 0);
        $writer = R::getWriter();
        $writer->addFK('page', 'book', 'book_id', 'id', TRUE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
        $writer->addFK('page', 'book', 'book_id', 'id', TRUE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
        $writer->addFK('page', 'book', 'book_id', 'id', FALSE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
        R::nuke();
        $sql = 'CREATE TABLE book ( id INTEGER PRIMARY KEY AUTOINCREMENT ) ';
        R::exec($sql);
        $sql = 'CREATE TABLE page ( id INTEGER PRIMARY KEY AUTOINCREMENT, book_id INTEGER ) ';
        R::exec($sql);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 0);
        $writer = R::getWriter();
        $writer->addFK('page', 'book', 'book_id', 'id', FALSE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
        $writer->addFK('page', 'book', 'book_id', 'id', TRUE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
        $writer->addFK('page', 'book', 'book_id', 'id', FALSE);
        asrt(count(R::getAll(' PRAGMA foreign_key_list("page") ')), 1);
    }