RSS Git Download  Clone
Raw Blame History
# contains some common data structures for *.t:

sub construct_request {
    my $test_data = shift; # warn Dumper $test_data; # arrayref, or AoA
    
    my $params = _get_form_params(); # polyphen, sift, etc

    # emulate src data text file:
    my $file_header = _get_file_header(); # warn Dumper $header;
    my $file_data = join "\n",
        ( join "\t", @$file_header ),
        ( join "\n", map { _make_row($_ ) } @$test_data ); # warn $file_data;

    my $files = _get_data_file();
    $files->{data} = $file_data;

    my %args = (
        headers => [ [ Content_Type => 'form-data' ] ],
        params  => $params,
        files   => [ $files ],
    );
    return \%args;
}

sub _make_row {
    my $data = shift; # warn Dumper $data; # arrayref    
    return join "\t", @$data
}

sub _get_file_header {
    return [
        qw(
            Reference
            Variant
            Status
            Max-combined-%
            Max-combined-of
            H1/10-combined-%
            H1/10-combined-of
        )
    ];
}

sub _get_form_params {
    return {
        check_existing => 1,
        coding_only    => 1,
        regulatory     => 1,
        data_src       => 'data.txt',
        polyphen       => 'b',
        sift           => 'b',
    }
}

sub _get_data_file {
    return {
        filename => 'data.txt',
        name     => 'data_src',
        data     => undef, # created in construct_request using .t $data,
    }
}

1;