Files
EasySoft-ZenTaoPMS/module/upgrade/test/model/processoldmetrics.php
T

80 lines
2.1 KiB
PHP

#!/usr/bin/env php
<?php
declare(strict_types=1);
/**
title=测试 upgradeModel->processOldMetrics();
cid=1
- 新数据覆盖检查都通过,说明数据转换成功 @1
**/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/upgrade.unittest.class.php';
$upgrade = new upgradeTest();
global $tester, $config;
$app->loadLang('metric');
$app->loadModuleConfig('metric');
$scopeMap = $app->config->metric->oldScopeMap;
$purposeMap = $app->config->metric->oldPurposeMap;
$objectMap = $app->config->metric->oldObjectMap;
$tester->dao->delete()->from(TABLE_METRIC)->where('fromID')->gt(0)->exec();
$result = $upgrade->processOldMetrics();
$oldMetrics = $tester->dao->select('*')->from(TABLE_BASICMEAS)->where('deleted')->eq('0')->orderBy('order_asc')->fetchAll();
$check = true;
foreach($oldMetrics as $oldMetric) {
$metric = $tester->dao->select('*')->from(TABLE_METRIC)->where('fromID')->eq($oldMetric->id)->fetch();
if(!$metric)
{
$check = false;
break;
}
if($metric->scope != ($scopeMap[$oldMetric->scope] ? $scopeMap[$oldMetric->scope] : 'other'))
{
$check = false;
break;
}
if($metric->purpose != ($purposeMap[$oldMetric->purpose] ? $purposeMap[$oldMetric->purpose] : 'other'))
{
$check = false;
break;
}
if($metric->object != ($objectMap[$oldMetric->object] ? $objectMap[$oldMetric->object] : 'other'))
{
$check = false;
break;
}
if($metric->createdDate != helper::isZeroDate($oldMetric->createdDate) ? null : $oldMetric->createdDate)
{
$check = false;
break;
}
if($metric->editedDate != helper::isZeroDate($oldMetric->editedDate) ? null : $oldMetric->editedDate)
{
$check = false;
break;
}
$action = $tester->dao->select('*')->from(TABLE_ACTION)->where('objectType')->eq('metric')->andWhere('objectID')->eq($metric->id)->fetch();
if(!$action)
{
$check = false;
break;
}
}
r($check) && p('') && e(1); //新数据覆盖检查都通过,说明数据转换成功