summaryrefslogtreecommitdiff
path: root/rt/t/shredder/03plugin_users.t
diff options
context:
space:
mode:
Diffstat (limited to 'rt/t/shredder/03plugin_users.t')
-rw-r--r--rt/t/shredder/03plugin_users.t40
1 files changed, 40 insertions, 0 deletions
diff --git a/rt/t/shredder/03plugin_users.t b/rt/t/shredder/03plugin_users.t
new file mode 100644
index 000000000..45fc8a27e
--- /dev/null
+++ b/rt/t/shredder/03plugin_users.t
@@ -0,0 +1,40 @@
+#!/usr/bin/perl -w
+
+use strict;
+use warnings;
+
+use Test::Deep;
+use File::Spec;
+use Test::More tests => 9;
+use RT::Test ();
+BEGIN {
+ my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
+ File::Spec->curdir());
+ require $shredder_utils;
+}
+
+
+my @ARGS = sort qw(limit status name member_of email replace_relations no_tickets);
+
+use_ok('RT::Shredder::Plugin::Users');
+{
+ my $plugin = new RT::Shredder::Plugin::Users;
+ isa_ok($plugin, 'RT::Shredder::Plugin::Users');
+
+ is(lc $plugin->Type, 'search', 'correct type');
+
+ my @args = sort $plugin->SupportArgs;
+ cmp_deeply(\@args, \@ARGS, "support all args");
+
+
+ my ($status, $msg) = $plugin->TestArgs( name => 'r??t*' );
+ ok($status, "arg name = 'r??t*'") or diag("error: $msg");
+
+ for (qw(any disabled enabled)) {
+ my ($status, $msg) = $plugin->TestArgs( status => $_ );
+ ok($status, "arg status = '$_'") or diag("error: $msg");
+ }
+ ($status, $msg) = $plugin->TestArgs( status => '!@#' );
+ ok(!$status, "bad 'status' arg value");
+}
+