Remove id/name from Perl modules and tests
parent
bab9a9e703
commit
73d8f72fc0
|
@ -43,8 +43,6 @@ handle remainder => sub {
|
|||
|
||||
return $selection . " (" . $selection_type . ")",
|
||||
structured_answer => {
|
||||
id => 'abc',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => html_enc("$selection"),
|
||||
subtitle => html_enc("$operation: $choice_string")
|
||||
|
|
|
@ -35,8 +35,6 @@ handle query_parts => sub {
|
|||
|
||||
return $answer,
|
||||
structured_answer => {
|
||||
id => 'altcalendars',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $year,
|
||||
subtitle => "$era_name $era_year - Equivalent Gregorian Year"
|
||||
|
|
|
@ -29,8 +29,6 @@ handle remainder => sub {
|
|||
|
||||
return "Atbash: $result",
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$result",
|
||||
subtitle => html_enc("Atbash: $in_string")
|
||||
|
|
|
@ -54,8 +54,6 @@ handle remainder => sub {
|
|||
|
||||
return $plaintext,
|
||||
structured_answer => {
|
||||
id => 'bpmto_ms',
|
||||
name => 'Music',
|
||||
data => \@items,
|
||||
meta => {
|
||||
sourceUrl => "https://wikipedia.org/wiki/Tempo#Beats_per_minute",
|
||||
|
|
|
@ -99,8 +99,6 @@ handle remainder => sub {
|
|||
my $intro = "The Bash expression $_ results to";
|
||||
return "$intro $text_output.",
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
intro => $_,
|
||||
results => \@results
|
||||
|
|
|
@ -42,8 +42,6 @@ handle matches => sub {
|
|||
|
||||
return "Binary '$bin_string' converted to " . $want_ascii ? 'ascii' : 'unicode' . " is '$str'",
|
||||
structured_answer => {
|
||||
id => 'bin2unicode',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $str,
|
||||
subtitle => "Input: $q",
|
||||
|
|
|
@ -125,8 +125,6 @@ handle query_raw => sub {
|
|||
}
|
||||
|
||||
return $text_output, structured_answer => {
|
||||
id => 'binary_logic',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $text_output,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -66,8 +66,6 @@ handle remainder => sub {
|
|||
}
|
||||
|
||||
return to_text(\%record_data, \@record_keys), structured_answer => {
|
||||
id => 'blood_donor',
|
||||
name => 'Blood Donors',
|
||||
description => 'Returns available donors for a blood type',
|
||||
meta => {
|
||||
sourceName => 'Wikipedia',
|
||||
|
|
|
@ -36,8 +36,6 @@ my @description_pars = split "\n\n",
|
|||
share('description.txt')->slurp();
|
||||
|
||||
my $decode_response = {
|
||||
id => 'caesar_cipher',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "How to decode the caesar cipher",
|
||||
infoboxData => $infobox,
|
||||
|
@ -93,8 +91,6 @@ handle remainder => sub {
|
|||
|
||||
return "$result",
|
||||
structured_answer => {
|
||||
id => 'caesar_cipher',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$result",
|
||||
subtitle => html_enc("Caesar cipher $shift_val $to_cipher"),
|
||||
|
|
|
@ -112,8 +112,6 @@ sub format_result {
|
|||
|
||||
return $rText,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => $firstDay->strftime("%B %Y"),
|
||||
previous_month => $previous->strftime("%B %Y"),
|
||||
|
|
|
@ -27,8 +27,6 @@ handle remainder => sub {
|
|||
);
|
||||
|
||||
return $camelCase, structured_answer => {
|
||||
id => 'camel_case',
|
||||
name => 'answer',
|
||||
data => {
|
||||
title => $camelCase,
|
||||
subtitle => 'camelCase'
|
||||
|
|
|
@ -120,7 +120,6 @@ handle remainder => sub {
|
|||
return 'Cheat Sheet', structured_answer => {
|
||||
id => 'cheat_sheets',
|
||||
dynamic_id => $data->{id},
|
||||
name => 'Cheat Sheet',
|
||||
data => $data,
|
||||
templates => {
|
||||
group => 'base',
|
||||
|
|
|
@ -126,8 +126,6 @@ handle query => sub {
|
|||
|
||||
return 'Chess 960',
|
||||
structured_answer => {
|
||||
id => 'chess960',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => 'Chess960',
|
||||
subtitle => 'Position ' . $position_num,
|
||||
|
|
|
@ -82,8 +82,6 @@ sub format_answer {
|
|||
my ($character, $english, $statement) = @_;
|
||||
|
||||
return "$character ($english)", structured_answer => {
|
||||
id => "chinese_zodiac",
|
||||
name => "Chinese Zodiac",
|
||||
data => {
|
||||
title => "$character ($english)",
|
||||
subtitle => $statement
|
||||
|
|
|
@ -140,8 +140,6 @@ handle matches => sub {
|
|||
|
||||
return "$hexc ~ $rgb ~ $rgb_pct ~ $hslc ~ $cmyb$column_2",
|
||||
structured_answer => {
|
||||
id => 'color_codes',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
hex_code => $hex_code,
|
||||
hexc => $hexc,
|
||||
|
|
|
@ -184,8 +184,6 @@ handle query_lc => sub {
|
|||
|
||||
return $factor . " $result->{'from_unit'} = $result->{'result'} $result->{'to_unit'}",
|
||||
structured_answer => {
|
||||
id => 'conversions',
|
||||
name => 'conversions',
|
||||
data => {
|
||||
raw_input => $styler->for_computation($factor),
|
||||
raw_answer => $styler->for_computation($result->{'result'}),
|
||||
|
|
|
@ -39,8 +39,6 @@ handle remainder => sub {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $text,
|
||||
},
|
||||
|
|
|
@ -71,8 +71,6 @@ handle remainder => sub {
|
|||
}
|
||||
|
||||
return \%data, structured_answer => {
|
||||
id => "currency_in",
|
||||
name => "CurrencyIn",
|
||||
templates => {
|
||||
group => 'list',
|
||||
options => {
|
||||
|
|
|
@ -34,8 +34,6 @@ handle remainder => sub {
|
|||
# output results
|
||||
return $output,
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $output,
|
||||
},
|
||||
|
|
|
@ -77,8 +77,6 @@ my $relative_dates = relative_dates_regex();
|
|||
sub build_result {
|
||||
my ($result, $formatted) = @_;
|
||||
return $result, structured_answer => {
|
||||
id => 'date_math',
|
||||
name => 'Answer',
|
||||
meta => {
|
||||
signal => 'high',
|
||||
},
|
||||
|
|
|
@ -26,8 +26,6 @@ sub itemify {
|
|||
|
||||
return $dessert . $end,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $dessert,
|
||||
subtitle => $end,
|
||||
|
|
|
@ -179,8 +179,6 @@ handle remainder_lc => sub {
|
|||
|
||||
return $out,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => $data,
|
||||
templates => {
|
||||
group => $group,
|
||||
|
|
|
@ -56,7 +56,6 @@ handle remainder => sub {
|
|||
|
||||
return $response->{text},
|
||||
structured_answer => {
|
||||
id => 'duck_duck_go',
|
||||
data => {
|
||||
title => $response->{title},
|
||||
subtitle_image => $response->{image},
|
||||
|
|
|
@ -44,8 +44,6 @@ handle query_lc => sub {
|
|||
|
||||
return $result,
|
||||
structured_answer => {
|
||||
id => 'em_to_px',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $result,
|
||||
subtitle => $formatted_input,
|
||||
|
|
|
@ -59,8 +59,6 @@ handle query => sub {
|
|||
|
||||
return $figlet,
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $figlet,
|
||||
subtitle => "Font: $font",
|
||||
|
|
|
@ -42,8 +42,6 @@ handle remainder => sub {
|
|||
|
||||
return $api->{permission},
|
||||
structured_answer => {
|
||||
id => "firefox_os",
|
||||
name => "About",
|
||||
data => {
|
||||
title => $api->{name},
|
||||
subtitle => "Manifest permission: " . $api->{permission},
|
||||
|
|
|
@ -249,8 +249,6 @@ handle query => sub {
|
|||
my @temp = $plot;
|
||||
return "$answer", #html => wrap_html($html) if $answer;
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
plot => $plot,
|
||||
|
|
|
@ -24,8 +24,6 @@ handle query_lc => sub {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'game2048',
|
||||
name => '2048',
|
||||
data => {
|
||||
title => $text,
|
||||
subtitle => $dimension . 'x' . $dimension,
|
||||
|
|
|
@ -82,8 +82,6 @@ handle query_lc => sub {
|
|||
my @paragraphs = split "\n", $result;
|
||||
|
||||
return $result, structured_answer => {
|
||||
id => 'gibberish_generator',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$formatted_input",
|
||||
gibberish_paragraphs => \@paragraphs,
|
||||
|
|
|
@ -240,8 +240,6 @@ sub make_structured_answer {
|
|||
}
|
||||
|
||||
return {
|
||||
id => "htmlentitiesencode",
|
||||
name => "HTML Entities",
|
||||
templates => {
|
||||
group => 'list',
|
||||
options => {
|
||||
|
|
|
@ -67,7 +67,6 @@ handle query_clean => sub {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'independence_day',
|
||||
templates => {
|
||||
group => "icon",
|
||||
item => 0,
|
||||
|
|
|
@ -70,8 +70,6 @@ sub format_result {
|
|||
|
||||
return $plaintext,
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
title => $title || $plaintext,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -86,8 +86,6 @@ handle query_lc => sub {
|
|||
my @paragraphs = split "\n\n", $result;
|
||||
|
||||
return $result, structured_answer => {
|
||||
id => 'lorem_ipsum',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$formatted_input",
|
||||
lorem_paragraphs => \@paragraphs,
|
||||
|
|
|
@ -57,8 +57,6 @@ handle remainder => sub {
|
|||
my ($subtitle, $elements) = get_results $query or return;
|
||||
return $subtitle,
|
||||
structured_answer => {
|
||||
id => 'markdown_reference',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
elements => $elements,
|
||||
element_type => $subtitle,
|
||||
|
|
|
@ -46,8 +46,6 @@ handle remainder => sub {
|
|||
|
||||
return $plaintext,
|
||||
structured_answer => {
|
||||
id => 'minecraft',
|
||||
name => 'Minecraft',
|
||||
data => {
|
||||
title => $recipe->{'name'},
|
||||
subtitle => "Ingredients: " . $recipe->{'ingredients'},
|
||||
|
|
|
@ -25,8 +25,6 @@ handle query_lc => sub {
|
|||
my $plaintext = $2.'.onion';
|
||||
return $plaintext,
|
||||
structured_answer => {
|
||||
id => 'onion_address',
|
||||
name => 'OnionAddress',
|
||||
data => {
|
||||
title => $2.'.onion',
|
||||
subtitle => 'Onion/Hidden service',
|
||||
|
|
|
@ -21,8 +21,6 @@ handle remainder => sub {
|
|||
|
||||
return "Accepted: $acc Experimental: $exp Error: $err%",
|
||||
structured_answer => {
|
||||
id => 'percent_error',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Error: $err%",
|
||||
subtitle => "Accepted: $acc Experimental: $exp",
|
||||
|
|
|
@ -37,8 +37,6 @@ handle query_lc => sub {
|
|||
}
|
||||
|
||||
return $answer, structured_answer => {
|
||||
id => 'perimeter',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -48,8 +48,6 @@ handle query_lc => sub {
|
|||
|
||||
return $raw,
|
||||
structured_answer => {
|
||||
id => "periodic_table",
|
||||
name => "Periodic Table",
|
||||
data => {
|
||||
badge => $element_symbol,
|
||||
title => $title,
|
||||
|
|
|
@ -38,8 +38,6 @@ handle query => sub {
|
|||
return if $result eq $to_translate;
|
||||
|
||||
return $result, structured_answer => {
|
||||
id => 'pig_latin',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => html_enc("$result"),
|
||||
subtitle => html_enc("Translate $action Pig Latin: $to_translate"),
|
||||
|
|
|
@ -77,8 +77,6 @@ sub format_answer {
|
|||
|
||||
return $plaintext,
|
||||
structured_answer => {
|
||||
id => 'prime_factors',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $title || $plaintext,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -42,8 +42,6 @@ handle query_lc => sub {
|
|||
|
||||
return $pList,
|
||||
structured_answer => {
|
||||
id => "prime_number",
|
||||
name => "Answer",
|
||||
data => {
|
||||
title => "Prime numbers between $start and $end",
|
||||
description => $pList
|
||||
|
|
|
@ -91,8 +91,6 @@ $text .= $table_spacer;
|
|||
handle sub {
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'public_dns',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => 'Public DNS Servers',
|
||||
list => \@ordered_servers,
|
||||
|
|
|
@ -77,8 +77,6 @@ handle query => sub {
|
|||
|
||||
return $matches,
|
||||
structured_answer => {
|
||||
id => 'regexp',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Regular Expression Match",
|
||||
subtitle => html_enc("Match regular expression /$regexp/$modifiers on $str"),
|
||||
|
|
|
@ -157,7 +157,6 @@ sub render {
|
|||
|
||||
push (@resistor_bands, {
|
||||
class => $class,
|
||||
name => $name,
|
||||
html_prefix => $html_prefix,
|
||||
display_digit => $display_digit
|
||||
});
|
||||
|
@ -170,8 +169,6 @@ sub render {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'resistor_colors',
|
||||
name => 'Answer',
|
||||
meta => {
|
||||
sourceName => "resisto.rs",
|
||||
sourceUrl => "http://resisto.rs/#$formatted_value"
|
||||
|
|
|
@ -68,8 +68,6 @@ handle query_raw => sub {
|
|||
|
||||
return $answer,
|
||||
structured_answer => {
|
||||
id => 'reverse_resistor_colours',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $title,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -82,8 +82,6 @@ handle remainder_lc => sub {
|
|||
|
||||
return $output,
|
||||
structured_answer => {
|
||||
id => 'rubiks_cube_patterns',
|
||||
name => 'Answer',
|
||||
data => \@items,
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
|
|
@ -13,8 +13,6 @@ handle remainder => sub {
|
|||
return unless /^((what\'?s|what is)?\s?(the|my|current))?$/;
|
||||
|
||||
return undef, structured_answer => {
|
||||
id => 'screen_resolution',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Your screen resolution is [Loading...]"
|
||||
},
|
||||
|
|
|
@ -27,8 +27,6 @@ foreach(@$list_data){
|
|||
$plaintext.="\n";
|
||||
}
|
||||
my @structured_answer = {
|
||||
id => "security_addons",
|
||||
name => "software",
|
||||
data => {
|
||||
title => "Security Addons",
|
||||
list => $list_data
|
||||
|
|
|
@ -85,8 +85,6 @@ handle remainder => sub {
|
|||
} elsif ($isJustShruggie) {
|
||||
return '¯\_(ツ)_/¯',
|
||||
structured_answer => {
|
||||
id => 'shruggie',
|
||||
name => 'Shruggie',
|
||||
description => 'Emojii for everone',
|
||||
templates => {
|
||||
group => 'text'
|
||||
|
@ -100,8 +98,6 @@ handle remainder => sub {
|
|||
|
||||
return $returnString,
|
||||
structured_answer => {
|
||||
id => 'shruggie',
|
||||
name => 'Shruggie',
|
||||
description => 'Emojii for everone',
|
||||
meta => {
|
||||
sourceName => "Donger List",
|
||||
|
|
|
@ -47,8 +47,6 @@ handle query_raw => sub {
|
|||
return unless defined $sigfigs;
|
||||
|
||||
return $sigfigs, structured_answer => {
|
||||
id => 'sig_figs',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$sigfigs",
|
||||
subtitle => "Number of Significant Figures in $formatted_input",
|
||||
|
|
|
@ -92,8 +92,6 @@ handle query_lc => sub {
|
|||
#Return result and html
|
||||
return $operation." is ".$result,
|
||||
structured_answer => {
|
||||
id => 'solar_system',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
attributes => $result,
|
||||
operation => $operation,
|
||||
|
|
|
@ -96,8 +96,6 @@ handle query => sub {
|
|||
|
||||
return to_text_answer(\%output, \@output_keys),
|
||||
structured_answer => {
|
||||
id => "subnet_calc",
|
||||
name => "Subnet Calculator",
|
||||
templates => {
|
||||
group => 'list',
|
||||
options => {
|
||||
|
|
|
@ -112,8 +112,6 @@ sub pretty_output {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'sun_info',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
where => $where,
|
||||
when_data => $when,
|
||||
|
|
|
@ -51,8 +51,6 @@ handle remainder => sub {
|
|||
|
||||
return to_text(@output),
|
||||
structured_answer => {
|
||||
id => 'teredo',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => 'Teredo Address Details',
|
||||
record_data => \%output,
|
||||
|
|
|
@ -21,8 +21,6 @@ handle remainder => sub {
|
|||
$un{description} =~ s/\.$//;
|
||||
|
||||
return $un{description}, structured_answer => {
|
||||
id => 'un',
|
||||
name => 'UN Number',
|
||||
data => {
|
||||
title => "UN Number: " . $un{number},
|
||||
description => $un{description}
|
||||
|
|
|
@ -36,8 +36,6 @@ handle query_raw => sub {
|
|||
my $subtitle = "URL decode: $in";
|
||||
|
||||
return $text, structured_answer => {
|
||||
id => 'url_decode',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $decoded,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -26,8 +26,6 @@ handle remainder => sub {
|
|||
my $subtitle = "URL percent-encode: $in";
|
||||
|
||||
return $text, structured_answer => {
|
||||
id => 'url_encode',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $encoded_url,
|
||||
subtitle => $subtitle
|
||||
|
|
|
@ -24,8 +24,6 @@ handle remainder => sub {
|
|||
|
||||
return $answer,
|
||||
structured_answer => {
|
||||
id => 'ultimate_answer',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => 'The Answer to the Ultimate Question of Life, the Universe, and Everything.'
|
||||
|
|
|
@ -18,8 +18,6 @@ handle remainder => sub {
|
|||
|
||||
return "This is a unique unicorn for $_",
|
||||
structured_answer => {
|
||||
id => "unicornify",
|
||||
name => "Social",
|
||||
data => {
|
||||
subtitle => "Unique unicorn",
|
||||
title => "$_",
|
||||
|
|
|
@ -81,7 +81,6 @@ handle query => sub {
|
|||
|
||||
return $plain_output,
|
||||
structured_answer => {
|
||||
id => 'UnixPermissions',
|
||||
description => 'Unix file permission',
|
||||
meta => {
|
||||
sourceName => 'wikipedia',
|
||||
|
|
|
@ -49,8 +49,6 @@ handle query => sub {
|
|||
|
||||
return $text,
|
||||
structured_answer => {
|
||||
id => 'unix_time',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
record_data => \%table_data,
|
||||
record_keys => \@table_keys
|
||||
|
|
|
@ -75,8 +75,6 @@ sub format_answer {
|
|||
}
|
||||
|
||||
return structured_answer => {
|
||||
id => "uptime",
|
||||
name => "Answer",
|
||||
templates => {
|
||||
group => "list",
|
||||
options => {
|
||||
|
|
|
@ -131,8 +131,6 @@ handle query_nowhitespace_nodash => sub {
|
|||
|
||||
return "Decode VIN ($vin_number) at Decode This: $moreUrl",
|
||||
structured_answer => {
|
||||
id => 'vin',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Vehicle Identification Number: $vin_number",
|
||||
href => $moreUrl
|
||||
|
|
|
@ -84,8 +84,6 @@ handle remainder => sub {
|
|||
my ($image_path, $icon) = get_image $zodiac;
|
||||
|
||||
return $zodiac, structured_answer => {
|
||||
id => "zodiac",
|
||||
name => "Answer",
|
||||
data => {
|
||||
image => $image_path,
|
||||
title => $zodiac,
|
||||
|
|
2
t/ABC.t
2
t/ABC.t
|
@ -12,8 +12,6 @@ sub create_structured_answer
|
|||
{
|
||||
my $data = shift;
|
||||
return {
|
||||
id => 'abc',
|
||||
name => 'Answer',
|
||||
data => $data, #'-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
|
|
@ -67,8 +67,6 @@ sub make_structured_answer {
|
|||
my ($era_name, $era_year, $gregorian_year) = @_;
|
||||
|
||||
return structured_answer => {
|
||||
id => 'altcalendars',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $gregorian_year,
|
||||
subtitle => "$era_name $era_year - Equivalent Gregorian Year"
|
||||
|
|
12
t/Atbash.t
12
t/Atbash.t
|
@ -15,8 +15,6 @@ ddg_goodie_test(
|
|||
'atbash test' => test_zci(
|
||||
'Atbash: gvhg',
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "gvhg",
|
||||
subtitle => "Atbash: test"
|
||||
|
@ -30,8 +28,6 @@ ddg_goodie_test(
|
|||
'atbash This is a test' => test_zci(
|
||||
'Atbash: Gsrh rh z gvhg',
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Gsrh rh z gvhg",
|
||||
subtitle => "Atbash: This is a test"
|
||||
|
@ -45,8 +41,6 @@ ddg_goodie_test(
|
|||
"atbash Gonna party like it's 1999!" => test_zci(
|
||||
"Atbash: Tlmmz kzigb orpv rg'h 1999!",
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "Tlmmz kzigb orpv rg'h 1999!",
|
||||
subtitle => "Atbash: Gonna party like it's 1999!"
|
||||
|
@ -60,8 +54,6 @@ ddg_goodie_test(
|
|||
'Atbash abcdefghijklmnopqrstuvwxyz' => test_zci(
|
||||
'Atbash: zyxwvutsrqponmlkjihgfedcba',
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "zyxwvutsrqponmlkjihgfedcba",
|
||||
subtitle => "Atbash: abcdefghijklmnopqrstuvwxyz"
|
||||
|
@ -75,8 +67,6 @@ ddg_goodie_test(
|
|||
'atbash hello' => test_zci(
|
||||
'Atbash: svool',
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "svool",
|
||||
subtitle => "Atbash: hello"
|
||||
|
@ -90,8 +80,6 @@ ddg_goodie_test(
|
|||
'atbash svool' => test_zci(
|
||||
'Atbash: hello',
|
||||
structured_answer => {
|
||||
id => 'atbash',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "hello",
|
||||
subtitle => "Atbash: svool"
|
||||
|
|
|
@ -75,8 +75,6 @@ ddg_goodie_test(
|
|||
# image => qr/.*/
|
||||
# }
|
||||
# ],
|
||||
id => "bpmto_ms",
|
||||
name => "Music",
|
||||
meta => {
|
||||
sourceUrl => "https://wikipedia.org/wiki/Tempo#Beats_per_minute",
|
||||
sourceName => "Wikipedia"
|
||||
|
@ -139,8 +137,6 @@ ddg_goodie_test(
|
|||
# image => qr/.*/
|
||||
# }
|
||||
# ],
|
||||
id => "bpmto_ms",
|
||||
name => "Music",
|
||||
meta => {
|
||||
sourceUrl => "https://wikipedia.org/wiki/Tempo#Beats_per_minute",
|
||||
sourceName => "Wikipedia"
|
||||
|
|
|
@ -14,8 +14,6 @@ ddg_goodie_test(
|
|||
"bash [ -a b ]" => test_zci(
|
||||
qr/.+ true if b exists./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
intro => "[ -a b ]",
|
||||
results => [
|
||||
|
@ -43,8 +41,6 @@ ddg_goodie_test(
|
|||
'bash [[ "abc" < "cba" ]]' => test_zci(
|
||||
qr/.+ true if "abc" string-sorts before "cba" in the current locale./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -58,8 +54,6 @@ ddg_goodie_test(
|
|||
'bash [ 2 -gt 1 ]' => test_zci(
|
||||
qr/.+ true if 2 is numerically greater than 1./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -73,8 +67,6 @@ ddg_goodie_test(
|
|||
'bash [ ! hello == world ]' => test_zci(
|
||||
qr/.+ false if the strings hello and world are equal./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -88,8 +80,6 @@ ddg_goodie_test(
|
|||
'bash [[ /tmp/hello -nt /etc/test ]]' => test_zci (
|
||||
qr#.+ true if /tmp/hello has been changed more recently than /etc/test or if /tmp/hello exists and /etc/test does not.#,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -103,8 +93,6 @@ ddg_goodie_test(
|
|||
'bash [ -z hello ]' => test_zci(
|
||||
qr/.+ true if the length of 'hello' is zero./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -118,8 +106,6 @@ ddg_goodie_test(
|
|||
'bash if [[ "abc" -lt "cba" ]]' => test_zci(
|
||||
qr/.+ true if "abc" is numerically less than "cba"./,
|
||||
structured_answer => {
|
||||
id => 'bash_primary_expressions',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
|
|
@ -15,8 +15,6 @@ sub gen_struc_ans {
|
|||
|
||||
return "Binary '$bin' converted to " . $asc ? 'ascii' : 'unicode' . " is '$str'",,
|
||||
structured_answer => {
|
||||
id => 'bin2unicode',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $str,
|
||||
subtitle => "Input: $in",
|
||||
|
|
|
@ -14,8 +14,6 @@ sub build_answer {
|
|||
$sub = '' unless $sub;
|
||||
|
||||
return $answer, structured_answer => {
|
||||
id => 'binary_logic',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => "Bitwise Operation: $sub"
|
||||
|
|
|
@ -12,8 +12,6 @@ sub build_structure
|
|||
{
|
||||
my ($blood_type, $data, $keys) = @_;
|
||||
return {
|
||||
id => 'blood_donor',
|
||||
name => 'Blood Donors',
|
||||
description => 'Returns available donors for a blood type',
|
||||
meta => {
|
||||
sourceName => 'Wikipedia',
|
||||
|
|
|
@ -9,8 +9,6 @@ zci answer_type => 'caesar_cipher';
|
|||
zci is_cached => 1;
|
||||
|
||||
my $decode_response = {
|
||||
id => 'caesar_cipher',
|
||||
name => 'Answer',
|
||||
data => '-ANY-', # We only need to check it is the right template.
|
||||
meta => {
|
||||
sourceUrl => 'https://en.wikipedia.org/wiki/Caesar_cipher',
|
||||
|
@ -33,8 +31,6 @@ sub build_structured_answer {
|
|||
my ($result, $amount, $to_cipher) = @_;
|
||||
return "$result",
|
||||
structured_answer => {
|
||||
id => 'caesar_cipher',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "$result",
|
||||
subtitle => "Caesar cipher $amount $to_cipher",
|
||||
|
|
|
@ -16,8 +16,6 @@ ddg_goodie_test(
|
|||
'calendar' => test_zci(
|
||||
qr/\nS M T W T F S[ ]+[A-Za-z]+ [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -31,8 +29,6 @@ ddg_goodie_test(
|
|||
'calendar november' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -46,8 +42,6 @@ ddg_goodie_test(
|
|||
'calendar november 12th' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -61,8 +55,6 @@ ddg_goodie_test(
|
|||
'calendar last november' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -76,8 +68,6 @@ ddg_goodie_test(
|
|||
'calendar next november' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -97,8 +87,6 @@ S M T W T F S November 2009
|
|||
29 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "November 2009",
|
||||
next_month => "December 2009",
|
||||
|
@ -164,8 +152,6 @@ S M T W T F S November 2009
|
|||
29 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "November 2009",
|
||||
next_month => "December 2009",
|
||||
|
@ -231,8 +217,6 @@ S M T W T F S November 2009
|
|||
29 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -252,8 +236,6 @@ S M T W T F S November 2015
|
|||
|29| 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -273,8 +255,6 @@ S M T W T F S November 2015
|
|||
|29| 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -295,8 +275,6 @@ S M T W T F S November 1980
|
|||
30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -316,8 +294,6 @@ S M T W T F S November 2009
|
|||
29 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -331,8 +307,6 @@ S M T W T F S November 2009
|
|||
'next november on a calendar' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -346,8 +320,6 @@ S M T W T F S November 2009
|
|||
'calendar for november' => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -367,8 +339,6 @@ S M T W T F S November 2009
|
|||
29 30
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -383,8 +353,6 @@ S M T W T F S November 2009
|
|||
"today's calendar" => test_zci(
|
||||
qr/\nS M T W T F S [A-Z][a-z]+ [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -398,8 +366,6 @@ S M T W T F S November 2009
|
|||
"november's calendar" => test_zci(
|
||||
qr/\nS M T W T F S November [0-9]{4}\n.+/,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -422,8 +388,6 @@ ddg_goodie_test(
|
|||
"calendar yesterday" => test_zci(
|
||||
qr/June 2014.*\|10\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2014",
|
||||
next_month => "July 2014",
|
||||
|
@ -483,8 +447,6 @@ ddg_goodie_test(
|
|||
"calendar today" => test_zci(
|
||||
qr/June 2014.*\|11\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2014",
|
||||
next_month => "July 2014",
|
||||
|
@ -544,8 +506,6 @@ ddg_goodie_test(
|
|||
"calendar tomorrow" => test_zci(
|
||||
qr/June 2014.*\|12\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2014",
|
||||
next_month => "July 2014",
|
||||
|
@ -605,8 +565,6 @@ ddg_goodie_test(
|
|||
"calendar 20 days ago" => test_zci(
|
||||
qr/May 2014.*\|22\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "May 2014",
|
||||
next_month => "June 2014",
|
||||
|
@ -671,8 +629,6 @@ ddg_goodie_test(
|
|||
"calendar in 20 days" => test_zci(
|
||||
qr/July 2014.*\| 1\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "July 2014",
|
||||
next_month => "August 2014",
|
||||
|
@ -735,8 +691,6 @@ ddg_goodie_test(
|
|||
"calendar last week" => test_zci(
|
||||
qr/June 2014.*\| 4\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2014",
|
||||
next_month => "July 2014",
|
||||
|
@ -796,8 +750,6 @@ ddg_goodie_test(
|
|||
"calendar next week" =>
|
||||
test_zci(qr/June 2014.*\|18\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2014",
|
||||
next_month => "July 2014",
|
||||
|
@ -857,8 +809,6 @@ ddg_goodie_test(
|
|||
"calendar last year" =>
|
||||
test_zci(qr/June 2013.*\|11\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2013",
|
||||
next_month => "July 2013",
|
||||
|
@ -926,8 +876,6 @@ ddg_goodie_test(
|
|||
"calendar next year" =>
|
||||
test_zci(qr/June 2015.*\|11\|/s,
|
||||
structured_answer => {
|
||||
id => 'calendar_today',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
month_year => "June 2015",
|
||||
next_month => "July 2015",
|
||||
|
|
|
@ -12,8 +12,6 @@ sub build_answer {
|
|||
my ($answer) = @_;
|
||||
|
||||
return $answer, structured_answer => {
|
||||
id => 'camel_case',
|
||||
name => 'answer',
|
||||
data => {
|
||||
title => $answer,
|
||||
subtitle => 'camelCase'
|
||||
|
|
|
@ -53,7 +53,6 @@ sub build_answer {
|
|||
return 'Cheat Sheet', structured_answer => {
|
||||
id => 'cheat_sheets',
|
||||
dynamic_id => $data->{id},
|
||||
name => 'Cheat Sheet',
|
||||
data => $data,
|
||||
templates => {
|
||||
group => 'base',
|
||||
|
|
|
@ -16,8 +16,6 @@ ddg_goodie_test(
|
|||
'Chess 960',
|
||||
structured_answer => {
|
||||
data => '-ANY-',
|
||||
id => "chess960",
|
||||
name => 'Answer',
|
||||
templates => {
|
||||
group => "text",
|
||||
item => 0,
|
||||
|
|
|
@ -32,8 +32,6 @@ sub build_answer {
|
|||
my $english = $animal_to_language{$animal}{'en'};
|
||||
|
||||
return test_zci("$character ($english)", structured_answer => {
|
||||
id => "chinese_zodiac",
|
||||
name => "Chinese Zodiac",
|
||||
data => {
|
||||
title => "$character ($english)",
|
||||
subtitle => $statement
|
||||
|
|
|
@ -13,8 +13,6 @@ my $green_answer = 'Hex: #00FF00 ~ RGBA(0, 255, 0, 1) ~ RGB(0%, 100%, 0%) ~ HSL(
|
|||
|
||||
my %basic_answer = (
|
||||
structured_answer => {
|
||||
id => 'color_codes',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
|
|
@ -11,8 +11,6 @@ sub make_answer(%){
|
|||
my ($input) = @_;
|
||||
|
||||
return {
|
||||
id => 'conversions',
|
||||
name => 'conversions',
|
||||
data => {
|
||||
raw_input => $input->{'raw_input'},
|
||||
raw_answer => $input->{'raw_answer'},
|
||||
|
|
|
@ -15,8 +15,6 @@ ddg_goodie_test(
|
|||
'hash 5c0847eccfaeabf4a0207d42a2986992' => test_zci(
|
||||
'This is a 128 bit MD5 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 128 bit MD5 cryptographic hash.",
|
||||
},
|
||||
|
@ -36,8 +34,6 @@ ddg_goodie_test(
|
|||
'hash ecaceaca62d6c47190ed6c6f94a298f28a46450fda0bd1ec8fc64bc4a7a8cd436791a35f3c4e339b7ae480c1b751f1c1' => test_zci(
|
||||
'This is a 384 bit SHA-2/SHA-3 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 384 bit SHA-2/SHA-3 cryptographic hash.",
|
||||
},
|
||||
|
@ -62,8 +58,6 @@ ddg_goodie_test(
|
|||
'hash b1d7eb51d4372c505446abca04835a101275e498' => test_zci(
|
||||
'This is a 160 bit SHA-1 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 160 bit SHA-1 cryptographic hash.",
|
||||
},
|
||||
|
@ -83,8 +77,6 @@ ddg_goodie_test(
|
|||
'hash 6286e0a5cbc030f7b2d105f594ae0afb9105c92175c6b07ff454734c23cd0bddfed77639fe59b68a70b8c78af27657f611cbe89c27f7a47b978fa9449808c19f' => test_zci(
|
||||
'This is a 512 bit SHA-2/SHA-3 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 512 bit SHA-2/SHA-3 cryptographic hash.",
|
||||
},
|
||||
|
@ -109,8 +101,6 @@ ddg_goodie_test(
|
|||
'hash a8a35ab9036388fd42fe1d73d93ede7ec604044ba4753259fafbf718' => test_zci(
|
||||
'This is a 224 bit SHA-2/SHA-3 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 224 bit SHA-2/SHA-3 cryptographic hash.",
|
||||
},
|
||||
|
@ -135,8 +125,6 @@ ddg_goodie_test(
|
|||
'hash 624d420035fc9471f6e16766b7132dd6bb34ea62' => test_zci(
|
||||
'This is a 160 bit SHA-1 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 160 bit SHA-1 cryptographic hash.",
|
||||
},
|
||||
|
@ -156,8 +144,6 @@ ddg_goodie_test(
|
|||
'hash 1f9b59a2390bb77d2c446837d6aeab067f01b05732735f47099047cd7d3e9f85' => test_zci(
|
||||
'This is a 256 bit SHA-2/SHA-3 cryptographic hash.',
|
||||
structured_answer => {
|
||||
id => 'crypt_hash_check',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "This is a 256 bit SHA-2/SHA-3 cryptographic hash.",
|
||||
},
|
||||
|
|
|
@ -13,8 +13,6 @@ sub build_structure
|
|||
my ($country, $data, $type) = @_;
|
||||
if($type eq "multiple") {
|
||||
return $data, structured_answer => {
|
||||
id => "currency_in",
|
||||
name => "CurrencyIn",
|
||||
templates => {
|
||||
group => 'list',
|
||||
options => {
|
||||
|
|
60
t/Cusip.t
60
t/Cusip.t
|
@ -46,8 +46,6 @@ ddg_goodie_test(
|
|||
'cusip 037833100' => test_zci(
|
||||
"037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "037833100 is a properly formatted CUSIP number.",
|
||||
},
|
||||
|
@ -58,8 +56,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip check 037833100' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -68,8 +64,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 844741108' => test_zci("844741108 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -78,8 +72,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'037833100 cusip' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -88,8 +80,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'037833100 cusip check' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -100,8 +90,6 @@ ddg_goodie_test(
|
|||
# starting white space should be stripped
|
||||
'cusip 037833100' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -112,8 +100,6 @@ ddg_goodie_test(
|
|||
# ending white space should be stripped
|
||||
'cusip 037833100 ' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -124,8 +110,6 @@ ddg_goodie_test(
|
|||
# starting and ending white space should be stripped
|
||||
'cusip 037833100 ' => test_zci("037833100 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -136,8 +120,6 @@ ddg_goodie_test(
|
|||
# same AAPL queries with an incorrect check digit
|
||||
'cusip 03783310A' => test_zci("03783310A is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -146,8 +128,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 03783310A' => test_zci("03783310A is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -156,8 +136,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 03783310A ' => test_zci("03783310A is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -166,8 +144,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 03783310A ' => test_zci("03783310A is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -178,8 +154,6 @@ ddg_goodie_test(
|
|||
# check CUSIP IDs with capital letters (these are for GOOG and Blackberry)
|
||||
'cusip 38259P706' => test_zci("38259P706 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -188,8 +162,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 38259P508' => test_zci("38259P508 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -198,8 +170,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 09228F103' => test_zci("09228F103 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -210,8 +180,6 @@ ddg_goodie_test(
|
|||
# check the same CUSIP IDs with lower case letters
|
||||
'cusip 38259p706' => test_zci("38259P706 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -220,8 +188,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 38259p508' => test_zci("38259P508 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -230,8 +196,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 09228f103' => test_zci("09228F103 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -244,8 +208,6 @@ ddg_goodie_test(
|
|||
# if possible, these tests should be replaced with verified CUSIP IDs
|
||||
'cusip 037833*00' => test_zci("037833*00 is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -254,8 +216,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 037833*02' => test_zci("037833*02 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -264,8 +224,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 0378331#0' => test_zci("0378331#0 is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -274,8 +232,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 0378331#7' => test_zci("0378331#7 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -284,8 +240,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 037833@00' => test_zci("037833\@00 is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -294,8 +248,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 037833@01' => test_zci("037833\@01 is a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -307,8 +259,6 @@ ddg_goodie_test(
|
|||
# even though they are always invalid IDs
|
||||
'cusip 03783310*' => test_zci("03783310* is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -317,8 +267,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 03783310#' => test_zci("03783310# is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -327,8 +275,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip 03783310@' => test_zci("03783310\@ is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -339,8 +285,6 @@ ddg_goodie_test(
|
|||
# Odd CUSIP IDs should not break the IA
|
||||
'cusip ********8' => test_zci("********8 is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -349,8 +293,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip ########9' => test_zci("########9 is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -359,8 +301,6 @@ ddg_goodie_test(
|
|||
),
|
||||
'cusip @#*@#*@#*' => test_zci("\@#*\@#*\@#* is not a properly formatted CUSIP number.",
|
||||
structured_answer => {
|
||||
id => 'cusip',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
|
|
@ -13,8 +13,6 @@ zci is_cached => 0;
|
|||
sub build_structured_answer {
|
||||
my ($result, $input) = @_;
|
||||
return $result, structured_answer => {
|
||||
id => 'date_math',
|
||||
name => 'Answer',
|
||||
meta => {
|
||||
signal => 'high',
|
||||
},
|
||||
|
|
18
t/Dessert.t
18
t/Dessert.t
|
@ -15,8 +15,6 @@ ddg_goodie_test(
|
|||
'desserts beginning with a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -26,8 +24,6 @@ ddg_goodie_test(
|
|||
'desserts beginning with A' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'A'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -37,8 +33,6 @@ ddg_goodie_test(
|
|||
'dessert start with a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -48,8 +42,6 @@ ddg_goodie_test(
|
|||
'desserts starting with a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -59,8 +51,6 @@ ddg_goodie_test(
|
|||
'dessert starts with a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -70,8 +60,6 @@ ddg_goodie_test(
|
|||
'desserts beginning with z' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'z'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -81,8 +69,6 @@ ddg_goodie_test(
|
|||
'a dessert that begins with a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -92,8 +78,6 @@ ddg_goodie_test(
|
|||
'a dessert that starts with the letter a' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'a'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
@ -103,8 +87,6 @@ ddg_goodie_test(
|
|||
'dessert that begins with the letter z' => test_zci(
|
||||
qr/(.*?) is a dessert that begins with 'z'\.$/,
|
||||
structured_answer => {
|
||||
id => 'dessert',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
|
54
t/Dice.t
54
t/Dice.t
|
@ -19,8 +19,6 @@ ddg_goodie_test(
|
|||
'throw dice' => test_zci(
|
||||
qr/^., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -33,8 +31,6 @@ ddg_goodie_test(
|
|||
'throw dices' => test_zci(
|
||||
qr/^., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -47,8 +43,6 @@ ddg_goodie_test(
|
|||
'roll dice' => test_zci(
|
||||
qr/^., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -61,8 +55,6 @@ ddg_goodie_test(
|
|||
'throw die' => test_zci(
|
||||
qr/^.$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -78,8 +70,6 @@ ddg_goodie_test(
|
|||
"roll 5 dice" => test_zci(
|
||||
qr/., ., ., ., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -94,8 +84,6 @@ ddg_goodie_test(
|
|||
"roll 2d6" => test_zci(
|
||||
qr/^\d (\+|-) \d$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -110,8 +98,6 @@ ddg_goodie_test(
|
|||
"roll five dice" => test_zci(
|
||||
qr/., ., ., ., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -124,8 +110,6 @@ ddg_goodie_test(
|
|||
"roll twenty five dice" => test_zci(
|
||||
qr/., ., ., ., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -138,8 +122,6 @@ ddg_goodie_test(
|
|||
"roll fifty-four dice" => test_zci(
|
||||
qr/., ., ., ., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -152,8 +134,6 @@ ddg_goodie_test(
|
|||
"roll seven dices" => test_zci(
|
||||
qr/., ., ., ., .$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -169,8 +149,6 @@ ddg_goodie_test(
|
|||
"throw 1d20" => test_zci(
|
||||
qr/^\d{1,2}$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -183,8 +161,6 @@ ddg_goodie_test(
|
|||
"roll d20" => test_zci(
|
||||
qr/^\d{1,2}$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -199,8 +175,6 @@ ddg_goodie_test(
|
|||
"roll 3d12 + 4" => test_zci(
|
||||
qr/^\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2}$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -213,8 +187,6 @@ ddg_goodie_test(
|
|||
"roll 3d8 - 8" => test_zci(
|
||||
qr/^\d (\+|-) \d (\+|-) \d (\+|-) \d$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -227,8 +199,6 @@ ddg_goodie_test(
|
|||
"roll 4d6-l" => test_zci(
|
||||
qr/^([1-6] \+ ){3}[1-6] - [1-6]$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -243,8 +213,6 @@ ddg_goodie_test(
|
|||
"throw 2 dice and 3 dice" => test_zci(
|
||||
qr/., .., ., .Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -259,8 +227,6 @@ ddg_goodie_test(
|
|||
"roll 2w6 and d20" => test_zci(
|
||||
qr/^\d (\+|-) \d = \d+\d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -275,8 +241,6 @@ ddg_goodie_test(
|
|||
"roll 2d6 and 3d12 + 4" => test_zci(
|
||||
qr/^\d (\+|-) \d = \d+\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} = \d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -289,8 +253,6 @@ ddg_goodie_test(
|
|||
"roll 2d6 and 3d12 - 4" => test_zci(
|
||||
qr/^\d (\+|-) \d = \d+\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} = -?\d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -303,8 +265,6 @@ ddg_goodie_test(
|
|||
"throw 3d12 - 4 and 2d6" => test_zci(
|
||||
qr/^\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} = -?\d{1,2}\d (\+|-) \d = \d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -317,8 +277,6 @@ ddg_goodie_test(
|
|||
"throw 2d6 and 3d12 + 4" => test_zci(
|
||||
qr/^\d (\+|-) \d = \d+\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} = \d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -331,8 +289,6 @@ ddg_goodie_test(
|
|||
"roll 2d6 and 4w6-l" => test_zci(
|
||||
qr/^\d (\+|-) \d = \d+([1-6] \+ ){3}[1-6] - [1-6] = \d{1,2}Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -345,8 +301,6 @@ ddg_goodie_test(
|
|||
"roll 2 dice and 3d5 + 4" => test_zci(
|
||||
qr/^., .\d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} (\+|-) \d{1,2} = \d+Total: \d+$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -373,8 +327,6 @@ ddg_goodie_test(
|
|||
"throw die" => test_zci(
|
||||
qr/^.$/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -388,8 +340,6 @@ ddg_goodie_test(
|
|||
'roll 3d12' => test_zci(
|
||||
qr/\d{1,2} \+ \d{1,2} \+ \d{1,2}/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -402,8 +352,6 @@ ddg_goodie_test(
|
|||
'roll 3d12 and 2d4' => test_zci(
|
||||
qr/\d{1,2} \+ \d{1,2} \+ \d{1,2} = \d+[1-4]+ \+ [1-4]+ = \dTotal: \d+/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
@ -416,8 +364,6 @@ ddg_goodie_test(
|
|||
'roll 2 dice and 3d5' => test_zci(
|
||||
qr/[1-5]+ \+ [1-5]+ \+ [1-5]+ = \d+Total: \d+/,
|
||||
structured_answer => {
|
||||
id => 'dice',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'list',
|
||||
|
|
|
@ -14,7 +14,6 @@ my $id = 'duck_duck_go';
|
|||
my @about_result = (
|
||||
'Want to know more about us? https://duckduckgo.com/about',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Want to know more about us?',
|
||||
subtitle_image => undef,
|
||||
|
@ -31,7 +30,6 @@ my @about_result = (
|
|||
my @blog_result = (
|
||||
'Want to stay up to date with DuckDuckGo? https://duck.co/blog',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Want to stay up to date with DuckDuckGo?',
|
||||
subtitle_image => undef,
|
||||
|
@ -48,7 +46,6 @@ my @blog_result = (
|
|||
my @help_result = (
|
||||
'Need some help? https://duck.co/help',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Need some help?',
|
||||
subtitle_image => undef,
|
||||
|
@ -65,7 +62,6 @@ my @help_result = (
|
|||
my @irc_result = (
|
||||
'Want to chat with us on IRC? http://webchat.freenode.net/?channels=duckduckgo',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Want to chat with us on IRC?',
|
||||
subtitle_image => undef,
|
||||
|
@ -82,7 +78,6 @@ my @irc_result = (
|
|||
my @merch_result = (
|
||||
'Looking for DuckDuckGo gear? (Thanks for the support!) https://duck.co/help/community/swag',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Looking for DuckDuckGo gear? (Thanks for the support!)',
|
||||
subtitle_image => undef,
|
||||
|
@ -99,7 +94,6 @@ my @merch_result = (
|
|||
my @tor_result = (
|
||||
'DuckDuckGo is available on Tor http://3g2upl4pq6kufc4m.onion.link',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'DuckDuckGo is available on Tor',
|
||||
subtitle_image => undef,
|
||||
|
@ -116,7 +110,6 @@ my @tor_result = (
|
|||
my @shorturl_result = (
|
||||
'Need a quicker way to visit DuckDuckGo? http://ddg.gg',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Need a quicker way to visit DuckDuckGo?',
|
||||
subtitle_image => undef,
|
||||
|
@ -133,7 +126,6 @@ my @shorturl_result = (
|
|||
my @zci_result = (
|
||||
'Zero Click Info is another term for our Instant Answers that show above the search results http://duckduckhack.com',
|
||||
structured_answer => {
|
||||
id => $id,
|
||||
data => {
|
||||
title => 'Zero Click Info is another term for our Instant Answers that show above the search results',
|
||||
subtitle_image => undef,
|
||||
|
|
|
@ -11,8 +11,6 @@ sub build_structured_answer {
|
|||
my $target = $type eq 'em' ? 'px' : 'em';
|
||||
return $result,
|
||||
structured_answer => {
|
||||
id => 'em_to_px',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => $result,
|
||||
subtitle => "Convert $size $type to $target with a font-size of ${fontsize}px",
|
||||
|
|
18
t/FIGlet.t
18
t/FIGlet.t
|
@ -22,8 +22,6 @@ ddg_goodie_test(
|
|||
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' ____ _ ____ _ ____
|
||||
| _ \ _ _ ___| | _| _ \ _ _ ___| | __/ ___| ___
|
||||
|
@ -47,8 +45,6 @@ ddg_goodie_test(
|
|||
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' _ _ __
|
||||
| \ | \ /__
|
||||
|
@ -70,8 +66,6 @@ ddg_goodie_test(
|
|||
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' _ _ __
|
||||
| \ | \ /__
|
||||
|
@ -95,8 +89,6 @@ ddg_goodie_test(
|
|||
|_|
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' _
|
||||
___| |_ ___ _ __
|
||||
|
@ -122,8 +114,6 @@ ddg_goodie_test(
|
|||
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' ____ _ ____ _ ____
|
||||
| _ \ _ _ ___| | _| _ \ _ _ ___| | __/ ___| ___
|
||||
|
@ -149,8 +139,6 @@ ddg_goodie_test(
|
|||
|
||||
',
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => ' ____ _ ____ _ ____
|
||||
| _ \ _ _ ___| | _| _ \ _ _ ___| | __/ ___| ___
|
||||
|
@ -171,8 +159,6 @@ ddg_goodie_test(
|
|||
"</script>
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "</script>
|
||||
",
|
||||
|
@ -188,8 +174,6 @@ ddg_goodie_test(
|
|||
"</script>
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "</script>
|
||||
",
|
||||
|
@ -205,8 +189,6 @@ ddg_goodie_test(
|
|||
"</script>
|
||||
",
|
||||
structured_answer => {
|
||||
id => 'figlet',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
title => "</script>
|
||||
",
|
||||
|
|
|
@ -11,8 +11,6 @@ zci is_cached => 1;
|
|||
#Structured answer template data
|
||||
my $templateData = {
|
||||
data => '-ANY-',
|
||||
id => "firefox_os",
|
||||
name => "About",
|
||||
meta => {
|
||||
sourceName => "Mozilla Developer Network",
|
||||
sourceUrl => "https://developer.mozilla.org/en-US/Apps/Reference/Firefox_OS_device_APIs"
|
||||
|
|
|
@ -21,8 +21,6 @@ ddg_goodie_test(
|
|||
#qr/radio.+SLF.+audible.+double-bass.+piano.+tuba/,
|
||||
qr/radio/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -38,8 +36,6 @@ ddg_goodie_test(
|
|||
'400 thz' => test_zci(
|
||||
qr/infrared/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -56,8 +52,6 @@ ddg_goodie_test(
|
|||
#qr/radio.+audible.+human.+voice.+viola.+violin.+guitar.+mandolin.+banjo.+piano.+saxophone.+flute.+clarinet.+oboe/,
|
||||
qr/radio/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -71,8 +65,6 @@ ddg_goodie_test(
|
|||
'1000000.99 hz' => test_zci(
|
||||
qr/radio.+MF/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -86,8 +78,6 @@ ddg_goodie_test(
|
|||
'29.1 hz' => test_zci(
|
||||
qr/radio.+ELF/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -104,8 +94,6 @@ ddg_goodie_test(
|
|||
#qr/radio.+SLF.+audible.+double-bass.+piano.+tuba/,
|
||||
qr/radio/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -119,8 +107,6 @@ ddg_goodie_test(
|
|||
'400terahertz' => test_zci(
|
||||
qr/infrared/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -136,8 +122,6 @@ ddg_goodie_test(
|
|||
'400 THz' => test_zci(
|
||||
qr/infrared/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -153,8 +137,6 @@ ddg_goodie_test(
|
|||
#qr/radio.+audible.+human.+voice.+viola.+violin.+guitar.+mandolin.+banjo.+piano.+saxophone.+flute.+clarinet.+oboe/,
|
||||
qr/radio/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -170,8 +152,6 @@ ddg_goodie_test(
|
|||
'1,000,000.99 hz' => test_zci(
|
||||
qr/radio.+MF/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -187,8 +167,6 @@ ddg_goodie_test(
|
|||
'650 nm' => test_zci(
|
||||
qr/visible.+red/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -202,8 +180,6 @@ ddg_goodie_test(
|
|||
'610 nanometers' => test_zci(
|
||||
qr/visible.+orange/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -217,8 +193,6 @@ ddg_goodie_test(
|
|||
'580 nanometres' => test_zci(
|
||||
qr/visible.+yellow/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -232,8 +206,6 @@ ddg_goodie_test(
|
|||
'536 nanometer' => test_zci(
|
||||
qr/visible.+green/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -247,8 +219,6 @@ ddg_goodie_test(
|
|||
'478.1 nm' => test_zci(
|
||||
qr/visible.+blue/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
@ -262,8 +232,6 @@ ddg_goodie_test(
|
|||
'380.000000000 nanometres' => test_zci(
|
||||
qr/visible.+violet/,
|
||||
structured_answer => {
|
||||
id => 'frequency_spectrum',
|
||||
name => 'Answer',
|
||||
data => '-ANY-',
|
||||
templates => {
|
||||
group => 'text',
|
||||
|
|
|
@ -22,8 +22,6 @@ ddg_goodie_test(
|
|||
# dimension => 4,
|
||||
# inputNum => 2048
|
||||
# }],
|
||||
id => "game2048",
|
||||
name => 2048,
|
||||
templates => {
|
||||
group => "text",
|
||||
item => 0,
|
||||
|
@ -43,8 +41,6 @@ ddg_goodie_test(
|
|||
# dimension => 7,
|
||||
# inputNum => 256
|
||||
# }],
|
||||
id => "game2048",
|
||||
name => 2048,
|
||||
templates => {
|
||||
group => "text",
|
||||
item => 0,
|
||||
|
|
|
@ -10,8 +10,6 @@ zci is_cached => 0;
|
|||
sub build_result {
|
||||
my $result = shift;
|
||||
return $result, structured_answer => {
|
||||
id => 'gibberish_generator',
|
||||
name => 'Answer',
|
||||
data => "-ANY-",
|
||||
templates => {
|
||||
group => 'info',
|
||||
|
|
|
@ -21,8 +21,6 @@ sub make_structured_answer {
|
|||
sub make_record_answer {
|
||||
my ($data, $keys, $question) = @_;
|
||||
return {
|
||||
id => "htmlentitiesencode",
|
||||
name => "HTML Entities",
|
||||
templates => {
|
||||
group => 'list',
|
||||
options => {
|
||||
|
|
|
@ -13,7 +13,6 @@ sub answer {
|
|||
my $prolog;
|
||||
$prolog = "Independence Day of " . $_[0] . " " . $_[1];
|
||||
test_zci($prolog, structured_answer => {
|
||||
id => "independence_day",
|
||||
data => {
|
||||
country_code => country2code($_[0]),
|
||||
title => $_[1],
|
||||
|
|
18
t/LeapYear.t
18
t/LeapYear.t
|
@ -16,8 +16,6 @@ ddg_goodie_test(
|
|||
)],
|
||||
'was 2012 a leap year' => test_zci('Yes! 2012 was a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => undef,
|
||||
title => "Yes! 2012 was a leap year"
|
||||
|
@ -29,8 +27,6 @@ ddg_goodie_test(
|
|||
}),
|
||||
'will 3012 be a leap year' => test_zci('Yes! 3012 will be a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => undef,
|
||||
title => "Yes! 3012 will be a leap year"
|
||||
|
@ -42,8 +38,6 @@ ddg_goodie_test(
|
|||
}),
|
||||
'was 1 bce a leap year' => test_zci('No. 1 BCE was not a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => undef,
|
||||
title => "No. 1 BCE was not a leap year"
|
||||
|
@ -55,8 +49,6 @@ ddg_goodie_test(
|
|||
}),
|
||||
'leap years after 2005' => test_zci('The 5 leap years after 2005 are 2008, 2012, 2016, 2020, 2024',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => "The 5 leap years after 2005",
|
||||
title => "2008, 2012, 2016, 2020, 2024"
|
||||
|
@ -68,8 +60,6 @@ ddg_goodie_test(
|
|||
}),
|
||||
'leap years before 2 bc' => test_zci('The 5 leap years before 2 BCE are 4 BCE, 8 BCE, 12 BCE, 16 BCE, 20 BCE',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => "The 5 leap years before 2 BCE",
|
||||
title => "4 BCE, 8 BCE, 12 BCE, 16 BCE, 20 BCE"
|
||||
|
@ -88,8 +78,6 @@ ddg_goodie_test(
|
|||
)],
|
||||
'is it a leap year?' => test_zci('No. 2014 is not a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => undef,
|
||||
title => "No. 2014 is not a leap year"
|
||||
|
@ -101,8 +89,6 @@ ddg_goodie_test(
|
|||
}),
|
||||
'when were the last 50 leap years' => test_zci('The last 50 leap years were 2012, 2008, 2004, 2000, 1996, 1992, 1988, 1984, 1980, 1976, 1972, 1968, 1964, 1960, 1956, 1952, 1948, 1944, 1940, 1936, 1932, 1928, 1924, 1920, 1916, 1912, 1908, 1904, 1896, 1892, 1888, 1884, 1880, 1876, 1872, 1868, 1864, 1860, 1856, 1852, 1848, 1844, 1840, 1836, 1832, 1828, 1824, 1820, 1816, 1812',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
subtitle => "The last 50 leap years",
|
||||
title => "2012, 2008, 2004, 2000, 1996, 1992, 1988, 1984, 1980, 1976, 1972, 1968, 1964, 1960, 1956, 1952, 1948, 1944, 1940, 1936, 1932, 1928, 1924, 1920, 1916, 1912, 1908, 1904, 1896, 1892, 1888, 1884, 1880, 1876, 1872, 1868, 1864, 1860, 1856, 1852, 1848, 1844, 1840, 1836, 1832, 1828, 1824, 1820, 1816, 1812",
|
||||
|
@ -121,8 +107,6 @@ ddg_goodie_test(
|
|||
)],
|
||||
'is it a leap year?' => test_zci('No. 2015 is not a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
title => 'No. 2015 is not a leap year',
|
||||
subtitle => undef
|
||||
|
@ -141,8 +125,6 @@ ddg_goodie_test(
|
|||
)],
|
||||
'is it a leap year?' => test_zci('Yes! 2012 is a leap year',
|
||||
structured_answer => {
|
||||
id => "leap_year",
|
||||
name => "Answer",
|
||||
data => {
|
||||
title => 'Yes! 2012 is a leap year',
|
||||
subtitle => undef
|
||||
|
|
|
@ -10,8 +10,6 @@ zci is_cached => 0;
|
|||
sub build_result {
|
||||
my $result = shift;
|
||||
return $result, structured_answer => {
|
||||
id => 'lorem_ipsum',
|
||||
name => 'Answer',
|
||||
data => "-ANY-",
|
||||
meta => {
|
||||
sourceName => "Lipsum",
|
||||
|
|
|
@ -23,8 +23,6 @@ sub build_structured_answer {
|
|||
$elements{$result_type} = 1;
|
||||
return $element_type,
|
||||
structured_answer => {
|
||||
id => 'markdown_reference',
|
||||
name => 'Answer',
|
||||
data => {
|
||||
elements => \%elements,
|
||||
element_type => $element_type,
|
||||
|
|
|
@ -115,15 +115,13 @@ ddg_goodie_test(
|
|||
sub make_structured_answer {
|
||||
my ($name, $ingredients, $description, $image ) = @_;
|
||||
my %recipe = (
|
||||
name => $name,
|
||||
name => $name,
|
||||
ingredients => $ingredients,
|
||||
description => $description,
|
||||
image => $image
|
||||
);
|
||||
|
||||
return structured_answer => {
|
||||
id => 'minecraft',
|
||||
name => 'Minecraft',
|
||||
data => {
|
||||
title => $recipe{'name'},
|
||||
subtitle => "Ingredients: " . $recipe{'ingredients'},
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue