Reverse: Converting to text template
parent
e71eb3c5d4
commit
f8d20e524b
|
@ -10,20 +10,23 @@ zci answer_type => "reverse";
|
|||
zci is_cached => 1;
|
||||
|
||||
handle remainder => sub {
|
||||
my $in = $_;
|
||||
my $in = $_;
|
||||
|
||||
return unless $in; # Guard against empty query.
|
||||
#Filter out requests for DNA/RNA reverse complements, handled
|
||||
# by the ReverseComplement goodie
|
||||
return if $in =~ /^complement\s(of )?[ATCGURYKMSWBVDHN\s-]+$/i;
|
||||
return unless $in; # Guard against empty query.
|
||||
#Filter out requests for DNA/RNA reverse complements, handled
|
||||
# by the ReverseComplement goodie
|
||||
return if $in =~ /^complement\s(of )?[ATCGURYKMSWBVDHN\s-]+$/i;
|
||||
|
||||
my $out = reverse $in;
|
||||
my $out = reverse $in;
|
||||
|
||||
return qq|Reversed "$_": | . $out,
|
||||
structured_answer => {
|
||||
input => [html_enc($in)],
|
||||
operation => 'Reverse string',
|
||||
result => html_enc($out),
|
||||
return qq|Reversed "$_": | . $out, structured_answer => {
|
||||
data => {
|
||||
title => html_enc($out),
|
||||
subtitle => "Reverse string: ".html_enc($in)
|
||||
},
|
||||
templates => {
|
||||
group => 'text'
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
|
|
40
t/Reverse.t
40
t/Reverse.t
|
@ -9,34 +9,26 @@ use DDG::Test::Goodie;
|
|||
zci answer_type => 'reverse';
|
||||
zci is_cached => 1;
|
||||
|
||||
sub build_test {
|
||||
my ($input, $answer) = @_;
|
||||
return test_zci(qq|Reversed "$input": $answer|, structured_answer => {
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => "Reverse string: $input"
|
||||
},
|
||||
templates => {
|
||||
group => 'text'
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
ddg_goodie_test(
|
||||
[qw( DDG::Goodie::Reverse )],
|
||||
# Primary example query
|
||||
'reverse text esrever' => test_zci(
|
||||
'Reversed "esrever": reverse',
|
||||
structured_answer => {
|
||||
input => ['esrever'],
|
||||
operation => 'Reverse string',
|
||||
result => 'reverse'
|
||||
}
|
||||
),
|
||||
'reverse text esrever' => build_test('esrever', 'reverse'),
|
||||
# Other queries
|
||||
'reverse text bla' => test_zci(
|
||||
'Reversed "bla": alb',
|
||||
structured_answer => {
|
||||
input => ['bla'],
|
||||
operation => 'Reverse string',
|
||||
result => 'alb'
|
||||
}
|
||||
),
|
||||
'reverse text blabla' => test_zci(
|
||||
'Reversed "blabla": albalb',
|
||||
structured_answer => {
|
||||
input => ['blabla'],
|
||||
operation => 'Reverse string',
|
||||
result => 'albalb'
|
||||
}
|
||||
),
|
||||
'reverse text bla' => build_test('bla', 'alb'),
|
||||
'reverse text blabla' => build_test('blabla', 'albalb'),
|
||||
'reverse' => undef,
|
||||
|
||||
#Should not trigger on a request for DNA/RNA reverse complement
|
||||
|
|
Loading…
Reference in New Issue