Sponsoring The Perl Toolchain Summit 2025: Help make this important event another success Learn more

use strict;
use Duadua;
{
my $d = Duadua->new('Mozilla/5.0 Android');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_android}, $ret->{is_android};
}
{
my $d = Duadua->new('Mozilla/5.0 Linux');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_linux}, $ret->{is_linux};
}
{
my $d = Duadua->new('Mozilla/5.0 Win32');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_windows}, $ret->{is_windows};
}
{
my $d = Duadua->new('Mozilla/5.0 Windows');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_windows}, $ret->{is_windows};
}
{
my $d = Duadua->new('Mozilla/5.0 iPhone');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_ios}, $ret->{is_ios};
}
{
my $d = Duadua->new('Mozilla/5.0 iPad');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_ios}, $ret->{is_ios};
}
{
my $d = Duadua->new('Mozilla/5.0 iPod');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_ios}, $ret->{is_ios};
}
{
my $d = Duadua->new('Mozilla/5.0 Macintosh');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_ios}, $ret->{is_ios};
}
{
my $d = Duadua->new('Mozilla/5.0 Mac OS');
my $h = {};
my $ret = Duadua::Util->set_os($d, $h);
is $h->{is_ios}, $ret->{is_ios};
}
{
my $d = Duadua->new('Mozilla/5.0 Ordering Match');
ok( Duadua::Util->ordering_match($d, ['Mozilla/', 'Ordering', 'Match']) );
ok( !Duadua::Util->ordering_match($d, ['Match', 'Ordering', 'Mozilla/']) );
}
done_testing;