#!/usr/bin/env php 'value', 'title' => '数值', 'width' => 96); $systemHeader[] = array('name' => 'calcTime', 'title' => '采集时间', 'width' => 128); $systemHeader[] = array('name' => 'date', 'title' => '日期', 'width' => 96); // 测试数据2:包含scope字段的度量项 $objectHeader = array(); $objectHeader[] = array('name' => 'scope', 'title' => '产品名称', 'width' => 160); $objectHeader[] = array('name' => 'date', 'title' => '日期', 'width' => 96); $objectHeader[] = array('name' => 'value', 'title' => '数值', 'width' => 96); $objectHeader[] = array('name' => 'calcTime', 'title' => '采集时间', 'width' => 128); // 测试数据3:包含多个字段包括scope的度量项 $multiFieldHeader = array(); $multiFieldHeader[] = array('name' => 'id', 'title' => 'ID', 'width' => 50); $multiFieldHeader[] = array('name' => 'scope', 'title' => '项目名称', 'width' => 160); $multiFieldHeader[] = array('name' => 'status', 'title' => '状态', 'width' => 80); $multiFieldHeader[] = array('name' => 'value', 'title' => '数值', 'width' => 96); $multiFieldHeader[] = array('name' => 'calcTime', 'title' => '采集时间', 'width' => 128); // 测试数据4:空数组 $emptyHeader = array(); // 测试数据5:嵌套数组结构中包含scope字段 $nestedHeader = array(); $nestedHeader[] = array('name' => 'scope', 'title' => '范围', 'width' => 100, 'type' => 'object'); $nestedHeader[] = array('name' => 'metrics', 'title' => '指标', 'width' => 200); // 测试数据6:字段名包含scope但name属性为其他值的情况 $noScopeNameHeader = array(); $noScopeNameHeader[] = array('name' => 'product', 'title' => '产品范围', 'width' => 160); $noScopeNameHeader[] = array('name' => 'project_scope', 'title' => '项目范围', 'width' => 160); $noScopeNameHeader[] = array('name' => 'value', 'title' => '数值', 'width' => 96); // 测试数据7:大小写敏感的scope字段 $uppercaseScopeHeader = array(); $uppercaseScopeHeader[] = array('name' => 'SCOPE', 'title' => '范围', 'width' => 160); $uppercaseScopeHeader[] = array('name' => 'Scope', 'title' => '范围', 'width' => 160); $uppercaseScopeHeader[] = array('name' => 'value', 'title' => '数值', 'width' => 96); r($metricTest->isObjectMetric($systemHeader)) && p('') && e('false'); // 步骤1:测试系统度量项(不含scope字段) r($metricTest->isObjectMetric($objectHeader)) && p('') && e('true'); // 步骤2:测试包含scope字段的度量项 r($metricTest->isObjectMetric($multiFieldHeader)) && p('') && e('true'); // 步骤3:测试包含多个字段包括scope的度量项 r($metricTest->isObjectMetric($emptyHeader)) && p('') && e('false'); // 步骤4:测试空数组输入 r($metricTest->isObjectMetric($nestedHeader)) && p('') && e('true'); // 步骤5:测试嵌套数组结构中包含scope字段 r($metricTest->isObjectMetric($noScopeNameHeader)) && p('') && e('false'); // 步骤6:测试字段名包含scope但name属性为其他值的情况 r($metricTest->isObjectMetric($uppercaseScopeHeader)) && p('') && e('false'); // 步骤7:测试大小写敏感的scope字段