use Test::More import => ['!pass'];
use strict;
use warnings;
use NGS with => {logger => 'console', log => 'error'}; # spare console from overload
use FindBin qw($Bin); # warn $Bin;
use Dancer2::Test apps => ['NGS'];
use Data::Dumper;
use Modern::Perl;
route_exists [GET => '/'], 'a route handler is defined for /';
response_status_is [GET => '/vep'], 200, 'response status is 200 for /';
# can pass data-file:
my %files = (
name => 'data_src',
filename => $Bin .'/data/005_data.txt',
);
my %params = (
check_existing => 1,
coding_only => 1,
regulatory => 1,
data_src => '005_data.txt',
polyphen => 'b',
sift => 'b',
);
my $response = dancer_response( POST => '/vep', {
headers => [ [ Content_Type => 'form-data' ] ],
params => \%params,
files => [ \%files ],
}
); # warn Dumper $response->{content};
response_status_is $response => 200;
# p53 exon 9.5 NEW [120]
response_content_like $response => qr(p53 exon 9.5 NEW \[120\]);
response_content_like $response => qr(Processed 1 accepted rows);
response_content_like $response => qr(synonymous_variant);
response_content_like $response => qr(Sample results \[0\]);
response_content_like $response => qr(Sample match failures \[1\]);
response_content_like $response => qr(VEP results \[7\]);
response_content_like $response => qr(VEP orphans \[0\]);
done_testing;