SDL Perl is a package of Perl modules that provide both functional
and object oriented interfaces to the Simple DirectMedia Layer for
Perl 5. This package takes some liberties with the SDL API, and
attempts to adhere to the spirit of both the SDL and Perl.
Taint::Util wraps perl's internal routines for checking and setting the taint
flag and thus does not rely on regular expressions for untainting or odd tricks
involving eval and kill for checking whether data is tainted, instead it checks
and flips a flag on the scalar in-place.
Unlike the tie-based Data::Lazy, this module operates on values, not
variables. Therefore, assigning into $dv and $lv above will simply
replace the value, instead of triggering a STORE method call.
Also, thanks to the overload-based implementation, this module is
about 2x faster than Data::Lazy.
Sub::Override allows the programmer to simply name the sub to replace
and to supply a sub to replace it with.
my $override = Sub::Override->new('Some::sub', sub {'new data'});
# which is equivalent to:
my $override = Sub::Override->new;
$override->replace('Some::sub', sub { 'new data' });
One of the strongest complaints about Perl is its poor argument handling.
Simply passing everything in the @_ array is a serious limitation. This
module aims to rectify that.
With this module, we can specify subroutine signatures and automatically
dispatch on the number of arguments.
This module provides some drop-in replacements for the string comparison
functions of Test::More, but which are more suitable when you test against
long strings. If you've ever had to search for text in a multi-line string
like an HTML document, or find specific items in binary data,
this is the module for you.
Term::Visual is a "visual" terminal interface for curses applications. It
provides the split-screen interface you may have seen in console based IRC
and MUD clients.
Term::Visual uses the POE networking and multitasking framework to support
concurrent input from network sockets and the console, multiple timers, and
more.
This module provides a simple (yet full featured) automated,
specification-based testing system for Perl. To use it, you declare
properties that specify the expected behavior of your software.
LectroTest then checks your software to see whether those properties
hold for semi-random input values in the specified range.
Test::MockTime was created to enable test suites to test code at
specific points in time. Specifically it overrides localtime, gmtime and
time at compile time and then relies on the user supplying a mock time
via set_relative_time, set_absolute_time or set_fixed_time to alter
future calls to gmtime, time or localtime.
This module provides some testing methods for LDAP operations, such as
search, add, and modify, where each method is suffixed with either _ok
or _is.
Test::Net::LDAP is a subclass of Net::LDAP, so all the methods defined
for Net::LDAP are available in addition to search_ok, add_is, etc.