znt/module/extension/test/model/executedb.php

39 lines
1.4 KiB
PHP
Raw Permalink Normal View History

#!/usr/bin/env php
<?php
/**
title=测试 extensionModel::executeDB();
timeout=0
cid=16453
- 步骤1执行有效扩展的安装SQL属性result @ok
- 步骤2执行有效扩展的卸载SQL属性result @ok
- 步骤3不存在SQL文件的扩展属性result @ok
- 步骤4默认参数调用install属性result @ok
- 步骤5包含无效SQL的扩展属性result @fail
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/model.class.php';
zenData('extension')->gen(10);
su('admin');
$extensionTest = new extensionModelTest();
// 设置临时的pkgRoot用于测试
global $tester;
$originalPkgRoot = $tester->extension->pkgRoot;
$tester->extension->pkgRoot = '/tmp/pkg/';
r($extensionTest->executeDBTest('code1', 'install')) && p('result') && e('ok'); // 步骤1执行有效扩展的安装SQL
r($extensionTest->executeDBTest('code1', 'uninstall')) && p('result') && e('ok'); // 步骤2执行有效扩展的卸载SQL
r($extensionTest->executeDBTest('nonexistent')) && p('result') && e('ok'); // 步骤3不存在SQL文件的扩展
r($extensionTest->executeDBTest('code1')) && p('result') && e('ok'); // 步骤4默认参数调用install
r($extensionTest->executeDBTest('code2', 'install')) && p('result') && e('fail'); // 步骤5包含无效SQL的扩展
// 恢复原始pkgRoot
$tester->extension->pkgRoot = $originalPkgRoot;