コード例 #1
0
    private function doTestBuildsInOrder($format)
    {
        dbsteward::set_sql_format($format);
        $doc = $this->doc_with;
        $actual = $this->capture(function ($ofs) use($doc) {
            format::build_schema($doc, $ofs, array());
        });
        if ($format == 'pgsql8') {
            $expected = <<<SQL
CREATE OR REPLACE VIEW "public"."view2" AS SELECT * FROM elsewhere;
ALTER VIEW "public"."view2" OWNER TO deployment;
CREATE OR REPLACE VIEW "public"."view1" AS SELECT * FROM view2;
ALTER VIEW "public"."view1" OWNER TO deployment;
SQL;
        } else {
            $expected = <<<SQL
CREATE OR REPLACE DEFINER = deployment SQL SECURITY DEFINER VIEW `view2` AS SELECT * FROM elsewhere;
CREATE OR REPLACE DEFINER = deployment SQL SECURITY DEFINER VIEW `view1` AS SELECT * FROM view2;
SQL;
        }
        $this->assertEquals($expected, $actual);
    }