description=> "Yath-UI API key. This is not necessary if your Yath-UI instance is set to single-user"
);
option project=> (
type=> 's',
description=> "The Yath-UI project for your test results",
);
option mode=> (
type=> 's',
default=> 'qvfd',
description=> "Set the upload mode (default 'qvfd')",
long_examples=> [
' summary',
' qvf',
' qvfd',
' complete',
],
);
option retry=> (
type=> 'c',
description=> "How many times to try an operation before giving up",
default=> 0,
);
option grace=> (
description=> "If yath cannot connect to yath-ui it normally throws an error, use this to make it fail gracefully. You get a warning, but things keep going.",
default=> 0,
);
option durations=> (
description=> "Poll duration data from Yath-UI to help order tests efficiently",
default=> 0,
applicable=> \&can_finder,
);
option coverage=> (
description=> "Poll coverage data from Yath-UI to determine what tests should be run for changed files",
default=> 0,
applicable=> \&can_finder,
);
# TODO
# option median_durations => (
# type => 'b',
# description => "Get median duration data",
# default => 0,
# );
option medium_duration=> (
type=> 's',
description=> "Minimum duration length (seconds) before a test goes from SHORT to MEDIUM",
long_examples=> [' 5'],
default=> 5,
);
option long_duration=> (
type=> 's',
description=> "Minimum duration length (seconds) before a test goes from MEDIUM to LONG",
my$project= $settings->yathui->project or return(0);
my$user= $settings->yathui->user // $ENV{USER};
$path= "$project/$user";
print"Re-run requested with no paremeters, ${ \__PACKAGE__ } querying YathUI (web request) for last run matching $path...\n";
# API Qwerk :-/
$path.= '/0';
}
elsif(looks_like_uuid($rerun)) {
$path= "$rerun/json";
print"Re-run requested with UUID, ${ \__PACKAGE__ } querying YathUI (web request) for matching run, or latest run from project or user matching the UUID\n";