Пример #1
0
function test($data_xmin, $data_xmax, $data_ymin, $data_ymax)
{
    global $test_verbose, $n_tests, $n_pass, $n_fail;
    $n_tests++;
    $q = compact('data_xmin', 'data_ymin', 'data_xmax', 'data_ymax');
    $title = "({$data_xmin}, {$data_ymin}) : ({$data_xmax}, {$data_ymax})";
    if ($test_verbose) {
        testin($q);
    }
    $p = new PHPlot_test();
    $p->SetDataValues(array(array('', $data_xmin, $data_ymin), array('', $data_xmax, $data_ymax)));
    $p->SetDataType('data-data');
    $p->SetPlotType('lines');
    $p->test_CalcPlotAreaWorld();
    # This returns an array with several protected variables: plot_xmin,
    # plot_xmax, plot_ymin, plot_ymax, xtick, ytick:
    $p->test_GetVars($q);
    # Calculate number of tick intervals:
    $q['nxtick'] = (int) (1.001 * ($q['plot_xmax'] - $q['plot_xmin']) / $q['xtick']);
    $q['nytick'] = (int) (1.001 * ($q['plot_ymax'] - $q['plot_ymin']) / $q['ytick']);
    if ($test_verbose) {
        testout($q);
    }
    $result = validate($q);
    if (empty($result)) {
        $n_pass++;
    } else {
        $n_fail++;
        echo "Failed test case {$n_tests}: {$title}\n{$result}\n";
    }
}