%PDF- %PDF-
Direktori : /home/opti/optisoftcom/.cpanm/work/1544535406.20768/Authen-SCRAM-0.011/t/ |
Current File : /home/opti/optisoftcom/.cpanm/work/1544535406.20768/Authen-SCRAM-0.011/t/server.t |
use 5.008001; use strict; use warnings; use Test::More 0.96; use Test::FailWarnings -allow_deps => 1; use Test::Fatal; binmode( Test::More->builder->$_, ":utf8" ) for qw/output failure_output todo_output/; use lib 't/lib'; use TestSCRAM qw/get_server/; require_ok("Authen::SCRAM::Server"); subtest "constructors" => sub { my $server = get_server; is( $server->digest, 'SHA-1', "default digest" ); is( $server->nonce_size, 192, "nonce size attribute" ); for my $d (qw/1 224 256 384 512/) { my $obj = get_server( digest => "SHA-$d" ); is( $obj->digest, "SHA-$d", "digest set correctly to SHA-$d" ); } }; subtest "RFC 5802 example" => sub { # force server nonce to match RFC5802 example my $server = get_server( _nonce_generator => sub { "3rfcNHYJY1ZVvWVs7j" } ); my $result = $server->first_msg("n,,n=user,r=fyko+d2lbbFgONRv9qkxdawL"); is( $result, "r=fyko+d2lbbFgONRv9qkxdawL3rfcNHYJY1ZVvWVs7j,s=QSXCR+Q6sek8bf92,i=4096", "RFC 5802 example server first message", ); my $final = $server->final_msg( "c=biws,r=fyko+d2lbbFgONRv9qkxdawL3rfcNHYJY1ZVvWVs7j,p=v0X8v3Bz2T0CJGbJQyF0X+HI4Ts=" ); is( $final, "v=rmF9pqV8S7suAoZWja4dJRkFsKQ=", "RFC 5802 example server final message", ); is( $server->authorization_id, 'user', "RFC 5802 example user authentication successful" ); }; done_testing; # # This file is part of Authen-SCRAM # # This software is Copyright (c) 2014 by David Golden. # # This is free software, licensed under: # # The Apache License, Version 2.0, January 2004 # # vim: ts=4 sts=4 sw=4 et: