summaryrefslogtreecommitdiff
path: root/t/11-ledgersmb.t
diff options
context:
space:
mode:
authortetragon <tetragon@4979c152-3d1c-0410-bac9-87ea11338e46>2007-05-16 23:22:22 +0000
committertetragon <tetragon@4979c152-3d1c-0410-bac9-87ea11338e46>2007-05-16 23:22:22 +0000
commita8b15f586f8f9e40e4941ac4148dca6705ce744c (patch)
tree72bd95436e617c48410725cec6fe5b314c2a1c93 /t/11-ledgersmb.t
parent89172b074ef8db7fbf9121ff13136c74ec102f29 (diff)
More test coverage of LedgerSMB.pm and re-expression of round_amount
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@1201 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 't/11-ledgersmb.t')
-rw-r--r--t/11-ledgersmb.t25
1 files changed, 25 insertions, 0 deletions
diff --git a/t/11-ledgersmb.t b/t/11-ledgersmb.t
index 881ebc48..9ab8196f 100644
--- a/t/11-ledgersmb.t
+++ b/t/11-ledgersmb.t
@@ -249,3 +249,28 @@ is($lsmb->{apple}, 1, 'merge: No key, added apple');
is($lsmb->{pear}, 2, 'merge: No key, added pear');
is($lsmb->{peach}, 3, 'merge: No key, added peach');
like($lsmb->{path}, qr#bin/(lynx|mozilla)#, 'merge: No key, left existing key');
+
+$lsmb = new LedgerSMB;
+$lsmb->merge({'apple' => 1, 'pear' => 2, 'peach' => 3}, 'index' => 1);
+is($lsmb->{apple_1}, 1, 'merge: Index 1, added apple as apple_1');
+is($lsmb->{pear_1}, 2, 'merge: Index 1, added pear as pear_1');
+is($lsmb->{peach_1}, 3, 'merge: Index 1, added peach as peach_1');
+like($lsmb->{path}, qr#bin/(lynx|mozilla)#, 'merge: Index 1, left existing key');
+
+# $lsmb->is_allowed_role checks
+$lsmb = new LedgerSMB;
+$lsmb->{_roles} = ('apple', 'pear');
+is($lsmb->is_allowed_role('allowed_roles' => ['pear']), 1,
+ 'is_allowed_role: allowed role');
+
+TODO: {
+ local $TODO = 'role system unimplemented';
+ $lsmb->{_roles} = ['apple', 'pear'];
+ is($lsmb->is_allowed_role('allowed_roles' => ['peach']), 0,
+ 'is_allowed_role: disallowed role');
+ is($lsmb->is_allowed_role('allowed_roles' => []), 0,
+ 'is_allowed_role: no allowable roles');
+ delete $lsmb->{_roles};
+ is($lsmb->is_allowed_role('allowed_roles' => ['apple']), 0,
+ 'is_allowed_role: no roles for user');
+}