X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=t%2F02_check.t;fp=t%2F02_check.t;h=edbbda4254946b4fd5b259e6c5c4b15373a19629;hb=671987bf531599f0f25c110cb90c8f8cb14d08f9;hp=0000000000000000000000000000000000000000;hpb=d5d0252d809f5faf0058dc4ed0e4a4c0a3c3f9de;p=www-csrf diff --git a/t/02_check.t b/t/02_check.t new file mode 100644 index 0000000..edbbda4 --- /dev/null +++ b/t/02_check.t @@ -0,0 +1,53 @@ +use Test::More tests => 6; + +use WWW::CSRF qw(check_csrf_token); + +is(check_csrf_token("id", "secret", + "5df5e9f17c929a45af5d33624ec052903599958f," . + "112233445566778899aabbccddeeff0011223344," . + "1234567890"), + 1, + "check simple token"); + +isnt(check_csrf_token("id", "secret", + "0000000000000000000000000000000000000000," . + "112233445566778899aabbccddeeff0011223344," . + "1234567890"), + 1, + "check simple invalid token"); + +isnt(check_csrf_token("id", "secret", + "5df5e9f17c929a45af5d33624ec052903599958f," . + "112233445566778899aabbccddeeff0011223344"), + 1, + "check simple malformed token"); + +is(check_csrf_token("id", "secret", + "5df5e9f17c929a45af5d33624ec052903599958f," . + "112233445566778899aabbccddeeff0011223344," . + "1234567890", { + Time => 1234567895, + MaxAge => 10 + }), + 1, + "check with maxage"); + +isnt(check_csrf_token("id", "secret", + "5df5e9f17c929a45af5d33624ec052903599958f," . + "112233445566778899aabbccddeeff0011223344," . + "1234567890", { + Time => 1234567895, + MaxAge => 3 + }), + 1, + "check expired with maxage"); + +isnt(check_csrf_token("id", "secret", + "5df5e9f17c929a45af5d33624ec052903599958f," . + "112233445566778899aabbccddeeff0011223344," . + "1234567894", { + Time => 1234567895, + MaxAge => 10 + }), + 1, + "check falsified timestamp");