znt/module/metric/test/model/getobjectoptions.php

68 lines
2.1 KiB
PHP
Executable file
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env php
<?php
/**
title=测试 metricModel::getObjectOptions();
timeout=0
cid=17113
- 步骤1正常情况xAxis类型第xAxis条的type属性 @category
- 步骤2bar图表类型yAxis类型第yAxis条的type属性 @value
- 步骤3大数据量xAxis类型第xAxis条的type属性 @category
- 步骤4dateString字段yAxis类型第yAxis条的type属性 @value
- 步骤5grid配置验证第grid条的left属性 @10%
*/
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/lib/calc.unittest.class.php';
$metric = new metricTest();
// 准备测试数据
$normalData = array();
for($i = 1; $i <= 5; $i++)
{
$item = new stdclass();
$item->calcTime = '2024-01-0' . $i . ' 12:00:00';
$item->scope = 'product' . $i;
$item->value = $i * 10;
$normalData[] = $item;
}
$barData = array();
for($i = 1; $i <= 3; $i++)
{
$item = new stdclass();
$item->calcTime = '2024-02-0' . $i . ' 12:00:00';
$item->scope = 'project' . $i;
$item->value = $i * 15;
$barData[] = $item;
}
$largeData = array();
for($i = 1; $i <= 20; $i++)
{
$item = new stdclass();
$item->calcTime = '2024-01-' . sprintf('%02d', $i) . ' 12:00:00';
$item->scope = 'product' . ($i % 3 + 1);
$item->value = $i * 5;
$largeData[] = $item;
}
$dateStringData = array();
for($i = 1; $i <= 3; $i++)
{
$item = new stdclass();
$item->dateString = '2024-01-0' . $i . ' 10:00:00';
$item->scope = 'project' . $i;
$item->value = $i * 20;
$dateStringData[] = $item;
}
r($metric->getObjectOptions($normalData, 'line', 'line')) && p('xAxis:type') && e('category'); // 步骤1正常情况xAxis类型
r($metric->getObjectOptions($barData, 'bar', 'bar')) && p('yAxis:type') && e('value'); // 步骤2bar图表类型yAxis类型
r($metric->getObjectOptions($largeData, 'line', 'line')) && p('xAxis:type') && e('category'); // 步骤3大数据量xAxis类型
r($metric->getObjectOptions($dateStringData, 'line', 'line')) && p('yAxis:type') && e('value'); // 步骤4dateString字段yAxis类型
r($metric->getObjectOptions($normalData, 'bar', 'barY')) && p('grid:left') && e('10%'); // 步骤5grid配置验证