-ok(!$@, "dispell error 1 ($@)");
-ok($res, 'dispell error 2');
+ok(!$@, "dispell croaks ($@)");
+ok($res, 'dispell invalid');
+
+$res = eval { cast $a, $wiz, qw/z j t/ };
+ok(!$@, "cast with arguments croaks ($@)");
+ok($res, 'cast with arguments invalid');
+
+$data = eval { getdata $a, $wiz };
+ok(!$@, "getdata croaks ($@)");
+ok($res, 'getdata invalid');
+ok($data && ref($data) eq 'HASH'
+ && exists $data->{foo} && $data->{foo} eq 'z'
+ && exists $data->{bar} && $data->{bar} eq 't',
+ 'private data creation with arguments ok');