is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
""
)->mac),
'6b8e5fea81f2022a75357b1e9e8361f4'
,
'Pelican/oo+raw/1'
);
is( Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
""
)->hexmac,
'6b8e5fea81f2022a75357b1e9e8361f4'
,
'Pelican/oo+hex/1'
);
is(
unpack
(
'H*'
, pelican(
'1234567890123456'
,
""
)),
'6b8e5fea81f2022a75357b1e9e8361f4'
,
'Pelican/func+raw/1'
);
is( pelican_hex(
'1234567890123456'
,
""
),
'6b8e5fea81f2022a75357b1e9e8361f4'
,
'Pelican/func+hex/1'
);
is( pelican_b64(
'1234567890123456'
,
""
),
'a45f6oHyAip1NXsenoNh9A=='
,
'Pelican/func+b64/1'
);
is( pelican_b64u(
'1234567890123456'
,
""
),
'a45f6oHyAip1NXsenoNh9A'
,
'Pelican/func+b64u/1'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(
""
)->mac),
'cd253e77578c3a76d20a4f87a582c1c4'
,
'Pelican/oo+raw/2'
);
is( Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(
""
)->hexmac,
'cd253e77578c3a76d20a4f87a582c1c4'
,
'Pelican/oo+hex/2'
);
is(
unpack
(
'H*'
, pelican(
'12345678901234561234567890123456'
,
""
)),
'cd253e77578c3a76d20a4f87a582c1c4'
,
'Pelican/func+raw/2'
);
is( pelican_hex(
'12345678901234561234567890123456'
,
""
),
'cd253e77578c3a76d20a4f87a582c1c4'
,
'Pelican/func+hex/2'
);
is( pelican_b64(
'12345678901234561234567890123456'
,
""
),
'zSU+d1eMOnbSCk+HpYLBxA=='
,
'Pelican/func+b64/2'
);
is( pelican_b64u(
'12345678901234561234567890123456'
,
""
),
'zSU-d1eMOnbSCk-HpYLBxA'
,
'Pelican/func+b64u/2'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(
""
)->mac),
'0976b1b1cbc3f4adae5254fb6626ffba'
,
'Pelican/oo+raw/3'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(
""
)->hexmac,
'0976b1b1cbc3f4adae5254fb6626ffba'
,
'Pelican/oo+hex/3'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaa'
,
""
)),
'0976b1b1cbc3f4adae5254fb6626ffba'
,
'Pelican/func+raw/3'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaa'
,
""
),
'0976b1b1cbc3f4adae5254fb6626ffba'
,
'Pelican/func+hex/3'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaa'
,
""
),
'CXaxscvD9K2uUlT7Zib/ug=='
,
'Pelican/func+b64/3'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaa'
,
""
),
'CXaxscvD9K2uUlT7Zib_ug'
,
'Pelican/func+b64u/3'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(
""
)->mac),
'b8811ef21aeba6a89ee179c8a2a08bf5'
,
'Pelican/oo+raw/4'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(
""
)->hexmac,
'b8811ef21aeba6a89ee179c8a2a08bf5'
,
'Pelican/oo+hex/4'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
""
)),
'b8811ef21aeba6a89ee179c8a2a08bf5'
,
'Pelican/func+raw/4'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
""
),
'b8811ef21aeba6a89ee179c8a2a08bf5'
,
'Pelican/func+hex/4'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
""
),
'uIEe8hrrpqie4XnIoqCL9Q=='
,
'Pelican/func+b64/4'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
""
),
'uIEe8hrrpqie4XnIoqCL9Q'
,
'Pelican/func+b64u/4'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(123)->mac),
'fbb1d2c3aa308e82a14bfd8efc1cfdac'
,
'Pelican/oo+raw/5'
);
is( Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(123)->hexmac,
'fbb1d2c3aa308e82a14bfd8efc1cfdac'
,
'Pelican/oo+hex/5'
);
is(
unpack
(
'H*'
, pelican(
'1234567890123456'
,123)),
'fbb1d2c3aa308e82a14bfd8efc1cfdac'
,
'Pelican/func+raw/5'
);
is( pelican_hex(
'1234567890123456'
,123),
'fbb1d2c3aa308e82a14bfd8efc1cfdac'
,
'Pelican/func+hex/5'
);
is( pelican_b64(
'1234567890123456'
,123),
'+7HSw6owjoKhS/2O/Bz9rA=='
,
'Pelican/func+b64/5'
);
is( pelican_b64u(
'1234567890123456'
,123),
'-7HSw6owjoKhS_2O_Bz9rA'
,
'Pelican/func+b64u/5'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(123)->mac),
'23c694903f3bce129255cc66a92fc0ca'
,
'Pelican/oo+raw/6'
);
is( Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(123)->hexmac,
'23c694903f3bce129255cc66a92fc0ca'
,
'Pelican/oo+hex/6'
);
is(
unpack
(
'H*'
, pelican(
'12345678901234561234567890123456'
,123)),
'23c694903f3bce129255cc66a92fc0ca'
,
'Pelican/func+raw/6'
);
is( pelican_hex(
'12345678901234561234567890123456'
,123),
'23c694903f3bce129255cc66a92fc0ca'
,
'Pelican/func+hex/6'
);
is( pelican_b64(
'12345678901234561234567890123456'
,123),
'I8aUkD87zhKSVcxmqS/Ayg=='
,
'Pelican/func+b64/6'
);
is( pelican_b64u(
'12345678901234561234567890123456'
,123),
'I8aUkD87zhKSVcxmqS_Ayg'
,
'Pelican/func+b64u/6'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(123)->mac),
'13b5ae418804ccc5c972069b56f3314e'
,
'Pelican/oo+raw/7'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(123)->hexmac,
'13b5ae418804ccc5c972069b56f3314e'
,
'Pelican/oo+hex/7'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaa'
,123)),
'13b5ae418804ccc5c972069b56f3314e'
,
'Pelican/func+raw/7'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaa'
,123),
'13b5ae418804ccc5c972069b56f3314e'
,
'Pelican/func+hex/7'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaa'
,123),
'E7WuQYgEzMXJcgabVvMxTg=='
,
'Pelican/func+b64/7'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaa'
,123),
'E7WuQYgEzMXJcgabVvMxTg'
,
'Pelican/func+b64u/7'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(123)->mac),
'b5d44a3b4e7fe8099ab63344dc906b2c'
,
'Pelican/oo+raw/8'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(123)->hexmac,
'b5d44a3b4e7fe8099ab63344dc906b2c'
,
'Pelican/oo+hex/8'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,123)),
'b5d44a3b4e7fe8099ab63344dc906b2c'
,
'Pelican/func+raw/8'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,123),
'b5d44a3b4e7fe8099ab63344dc906b2c'
,
'Pelican/func+hex/8'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,123),
'tdRKO05/6AmatjNE3JBrLA=='
,
'Pelican/func+b64/8'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,123),
'tdRKO05_6AmatjNE3JBrLA'
,
'Pelican/func+b64u/8'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"test\0test\0test\n"
)->mac),
'5d884e5a46bbd02497d0c9ecc2739822'
,
'Pelican/oo+raw/9'
);
is( Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"test\0test\0test\n"
)->hexmac,
'5d884e5a46bbd02497d0c9ecc2739822'
,
'Pelican/oo+hex/9'
);
is(
unpack
(
'H*'
, pelican(
'1234567890123456'
,
"test\0test\0test\n"
)),
'5d884e5a46bbd02497d0c9ecc2739822'
,
'Pelican/func+raw/9'
);
is( pelican_hex(
'1234567890123456'
,
"test\0test\0test\n"
),
'5d884e5a46bbd02497d0c9ecc2739822'
,
'Pelican/func+hex/9'
);
is( pelican_b64(
'1234567890123456'
,
"test\0test\0test\n"
),
'XYhOWka70CSX0MnswnOYIg=='
,
'Pelican/func+b64/9'
);
is( pelican_b64u(
'1234567890123456'
,
"test\0test\0test\n"
),
'XYhOWka70CSX0MnswnOYIg'
,
'Pelican/func+b64u/9'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(
"test\0test\0test\n"
)->mac),
'cf279a49ccf7798130d907840056d222'
,
'Pelican/oo+raw/10'
);
is( Crypt::Mac::Pelican->new(
'12345678901234561234567890123456'
)->add(
"test\0test\0test\n"
)->hexmac,
'cf279a49ccf7798130d907840056d222'
,
'Pelican/oo+hex/10'
);
is(
unpack
(
'H*'
, pelican(
'12345678901234561234567890123456'
,
"test\0test\0test\n"
)),
'cf279a49ccf7798130d907840056d222'
,
'Pelican/func+raw/10'
);
is( pelican_hex(
'12345678901234561234567890123456'
,
"test\0test\0test\n"
),
'cf279a49ccf7798130d907840056d222'
,
'Pelican/func+hex/10'
);
is( pelican_b64(
'12345678901234561234567890123456'
,
"test\0test\0test\n"
),
'zyeaScz3eYEw2QeEAFbSIg=='
,
'Pelican/func+b64/10'
);
is( pelican_b64u(
'12345678901234561234567890123456'
,
"test\0test\0test\n"
),
'zyeaScz3eYEw2QeEAFbSIg'
,
'Pelican/func+b64u/10'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(
"test\0test\0test\n"
)->mac),
'c21e437bee0261e55e66735cb6d4bd56'
,
'Pelican/oo+raw/11'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaa'
)->add(
"test\0test\0test\n"
)->hexmac,
'c21e437bee0261e55e66735cb6d4bd56'
,
'Pelican/oo+hex/11'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
)),
'c21e437bee0261e55e66735cb6d4bd56'
,
'Pelican/func+raw/11'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'c21e437bee0261e55e66735cb6d4bd56'
,
'Pelican/func+hex/11'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'wh5De+4CYeVeZnNcttS9Vg=='
,
'Pelican/func+b64/11'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'wh5De-4CYeVeZnNcttS9Vg'
,
'Pelican/func+b64u/11'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(
"test\0test\0test\n"
)->mac),
'8a798fcb2181d9f9ed81fcd2a7f6cd4e'
,
'Pelican/oo+raw/12'
);
is( Crypt::Mac::Pelican->new(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
)->add(
"test\0test\0test\n"
)->hexmac,
'8a798fcb2181d9f9ed81fcd2a7f6cd4e'
,
'Pelican/oo+hex/12'
);
is(
unpack
(
'H*'
, pelican(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
)),
'8a798fcb2181d9f9ed81fcd2a7f6cd4e'
,
'Pelican/func+raw/12'
);
is( pelican_hex(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'8a798fcb2181d9f9ed81fcd2a7f6cd4e'
,
'Pelican/func+hex/12'
);
is( pelican_b64(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'inmPyyGB2fntgfzSp/bNTg=='
,
'Pelican/func+b64/12'
);
is( pelican_b64u(
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
,
"test\0test\0test\n"
),
'inmPyyGB2fntgfzSp_bNTg'
,
'Pelican/func+b64u/12'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"A"
,
"A"
,
"A"
)->mac),
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/oo+raw/tripple_A'
);
is(
unpack
(
'H*'
, Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"A"
)->add(
"A"
)->add(
"A"
)->mac),
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/oo3+raw/tripple_A'
);
is( Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"A"
,
"A"
,
"A"
)->hexmac,
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/oo+hex/tripple_A'
);
is( Crypt::Mac::Pelican->new(
'1234567890123456'
)->add(
"A"
)->add(
"A"
)->add(
"A"
)->hexmac,
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/oo3+hex/tripple_A'
);
is(
unpack
(
'H*'
, pelican(
'1234567890123456'
,
"A"
,
"A"
,
"A"
)),
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/func+raw/tripple_A'
);
is( pelican_hex (
'1234567890123456'
,
"A"
,
"A"
,
"A"
),
'6f7dda998b3fdfeaa80737e5127532a5'
,
'Pelican/func+hex/tripple_A'
);
is( pelican_b64 (
'1234567890123456'
,
"A"
,
"A"
,
"A"
),
'b33amYs/3+qoBzflEnUypQ=='
,
'Pelican/func+b64/tripple_A'
);
is( pelican_b64u(
'1234567890123456'
,
"A"
,
"A"
,
"A"
),
'b33amYs_3-qoBzflEnUypQ'
,
'Pelican/func+b64u/tripple_A'
);