X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/6cac3ff667c66cd24dfc842e0eb13dca58a6fb7e..78b2353815ed98472688c2f17b31d17bb2450ff4:/t/auth/evaluate_rights_ary.t diff --git a/t/auth/evaluate_rights_ary.t b/t/auth/evaluate_rights_ary.t new file mode 100644 index 000000000..7203d0a76 --- /dev/null +++ b/t/auth/evaluate_rights_ary.t @@ -0,0 +1,29 @@ +use strict; + +use Test::More; + +use lib 't'; +use Support::TestSetup; + +Support::TestSetup::login(); + +use_ok 'SL::Auth'; + +ok( SL::Auth::evaluate_rights_ary(['1']), 'simple: right'); +ok(!SL::Auth::evaluate_rights_ary(['0']), 'simple: no right'); +ok( SL::Auth::evaluate_rights_ary(['1', '|', 0]), 'simple: or'); +ok( SL::Auth::evaluate_rights_ary(['0', '|', '1']), 'simple: or 2'); +ok(!SL::Auth::evaluate_rights_ary(['1', '&', '0']), 'simple: and'); +ok(!SL::Auth::evaluate_rights_ary(['0', '&', '1']), 'simple: and 2'); +ok( SL::Auth::evaluate_rights_ary(['1', '&', '1']), 'simple: and 3'); +ok(!SL::Auth::evaluate_rights_ary(['!', '1']), 'simple: not'); +ok( SL::Auth::evaluate_rights_ary(['!', '0']), 'simple: not 2'); +ok(!SL::Auth::evaluate_rights_ary(['!', '!', '0']), 'simple: double not'); +ok( SL::Auth::evaluate_rights_ary(['!', ['0']]), 'not 1'); +ok(!SL::Auth::evaluate_rights_ary(['!', ['1']]), 'not 2'); +ok( SL::Auth::evaluate_rights_ary(['!', '!', ['1']]), 'double not'); +ok( SL::Auth::evaluate_rights_ary([ '!', ['!', ['1', '&', '1'], '&', '!', '!', ['1', '|', '!', '1']] ]), 'something more coplex'); + +done_testing; + +1;