]> git.donarmstrong.com Git - debbugs.git/blobdiff - t/cover_lib/Safe.pm
Merge branch 'master' into cgiencoding
[debbugs.git] / t / cover_lib / Safe.pm
diff --git a/t/cover_lib/Safe.pm b/t/cover_lib/Safe.pm
new file mode 100644 (file)
index 0000000..e3227c2
--- /dev/null
@@ -0,0 +1,31 @@
+# this is a tiny module which basically provides a fake safe for use with Devel::Cover
+package Safe;
+
+sub new {
+    my $class = shift;
+    my $self = {root => 'fakeSafe'};
+    bless ($self,$class);
+    return $self;
+}
+
+sub permit {
+}
+
+sub reval {
+    my ($self,$code) = @_;
+    eval "package $self->{root}; $code";
+}
+
+sub root {
+    my ($self) = @_;
+    return($self->{root});
+}
+
+sub varglob {
+    my ($self,$var) = @_;
+    no strict 'refs';
+    no warnings 'once';
+    return *{$self->{root}."::$var"};
+}
+
+1;