The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Tapper::Reports::DPath - Tapper - Extended DPath functionality for Tapper reports

SYNOPSIS

    use Tapper::Reports::DPath 'reports_dpath_search';
    # the first bogomips entry of math sections:
    @resultlist = reportdata (
                     '{ suite_name => "TestSuite-LmBench" } :: /tap/section/math/*/bogomips[0]'
                  );
    # all report IDs of suite_id 17 that FAILed:
    @resultlist = reportdata (
                     '{ suite_name => "TestSuite-LmBench" } :: /suite_id[value == 17]/../successgrade[value eq 'FAIL']/../id'
                  );

 #
 # '{ "reportgrouptestrun.testrun_id" => 4711 } :: /suite_id[value == 17]/../successgrade[value eq 'FAIL']/../id
 #
 # '{ "reportgrouparbitrary.arbitrary_id" => "fc123a2" } :: /suite_id[value == 17]/../successgrade[value eq 'FAIL']/../id

This searches all reports of the test suite "TestSuite-LmBench" and furthermore in them for a TAP section "math" with the particular subtest "bogomips" and takes the first array entry of them.

The part before the '::' selects reports to search in a DBIx::Class search query, the second part is a normal Data::DPath expression that matches against the datastructure that is build from the DB.

API FUNCTIONS

Takes an extended DPath expression, applies it to Tapper Reports with TAP::DOM structure and returns the matching results in an array.

rds

Alias for reports_dpath_search.

reportdata

Alias for reports_dpath_search.

UTILITY FUNCTIONS

cache_single_dpath

Cache a result for a raw dpath on a report id.

cached_single_dpath

Return cached result for a raw dpath on a report id.

cache_whole_dpath

Cache a result for a complete tapper::dpath on all reports.

cached_whole_dpath

Return cached result for a complete tapper::dpath on all reports.

AUTHOR

AMD OSRC Tapper Team, <tapper at amd64.org>

COPYRIGHT & LICENSE

Copyright 2008-2011 AMD OSRC Tapper Team, all rights reserved.

This program is released under the following license: proprietary