zeroclickinfo-goodies/t/Password.t

183 lines
5.8 KiB
Perl
Raw Normal View History

2014-07-24 13:13:54 -07:00
#!/usr/bin/env perl
use strict;
use warnings;
use Test::More;
use Test::Deep;
2014-07-24 13:13:54 -07:00
use DDG::Test::Goodie;
zci answer_type => 'pw';
zci is_cached => 0;
2014-07-24 13:13:54 -07:00
ddg_goodie_test(
[qw( DDG::Goodie::Password)],
'pw 15 average' => test_zci(
re(qr/.{15} \(random password\)/),
structured_answer => {
input => ['15 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{15}$/)
}
),
'password normal 15' => test_zci(
re(qr/.{15} \(random password\)/),
structured_answer => {
input => ['15 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{15}$/)
}
),
'random pw 15 AVG' => test_zci(
re(qr/.{15} \(random password\)/),
structured_answer => {
input => ['15 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{15}$/)
}
),
'pwgen strong 25' => test_zci(
re(qr/.{25} \(random password\)/),
structured_answer => {
input => ['25 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{25}$/)
}
),
'password 25 hard' => test_zci(
re(qr/.{25} \(random password\)/),
structured_answer => {
input => ['25 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{25}$/)
}
),
'Password High 25' => test_zci(
re(qr/.{25} \(random password\)/),
structured_answer => {
input => ['25 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{25}$/)
}
),
# Example queries
'random password' => test_zci(
re(qr/.{8} \(random password\)/),
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
}
),
'password strong 15' => test_zci(
re(qr/.{15} \(random password\)/),
2014-11-24 04:08:36 -08:00
structured_answer => {
input => ['15 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{15}$/)
2014-11-24 04:08:36 -08:00
}
),
'pw' => test_zci(
re(qr/.{8} \(random password\)/),
2014-12-14 08:44:53 -08:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2014-12-14 08:44:53 -08:00
}
),
2015-09-22 14:54:08 -07:00
# Add some triggers (issue #1565)
'generate password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'generate strong password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'generate random password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'password generator' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'random password generator' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'random strong password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'random password 16 characters' => test_zci(
re(qr/.{16} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['16 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{16}$/)
2015-09-22 14:54:08 -07:00
}
),
'create random password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'average strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'strong random password' => test_zci(
re(qr/.{8} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['8 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{8}$/)
2015-09-22 14:54:08 -07:00
}
),
'random password strong 15' => test_zci(
re(qr/.{15} \(random password\)/),
2015-09-22 14:54:08 -07:00
structured_answer => {
input => ['15 characters', 'high strength'],
operation => 'Random password',
result => re(qr/^.{15}$/)
2015-09-22 14:54:08 -07:00
}
),
2014-12-14 08:44:53 -08:00
'password 65' => undef,
2015-07-16 08:56:58 -07:00
'random password weak 5' => undef,
'password 5 EaSy' => undef,
'password low 5' => undef,
'generate generate password' => undef,
'password pw' => undef,
'password fortissimo' => undef,
'nice random password' => undef,
'excavate strong password' => undef,
'not another strong pw' => undef,
'generator' => undef,
'potatoe generator' => undef
2014-07-24 13:13:54 -07:00
);
2016-05-16 06:18:04 -07:00
done_testing