Term::RawInput is a simple drop-in replacement for <STDIN> in scripts
with the additional ability to capture and return the non-standard keys
like 'End', 'Escape', 'Insert', etc.
This is another framework for writing test scripts. It is loosely
inspired by Test::More, and has most of its functionality, but it
is not a drop-in replacement.
This module allows you to specify the number of expected tests at
a finer level of granularity than an entire test script. It is built
with Test::Builder and plays happily with Test::More and friends.
The Test::Cmd module provides a low-level framework for portable automated
testing of executable commands and scripts (in any language, not just Perl),
especially commands and scripts that interact with the file system.
Netscape Portable Runtime (NSPR) provides a platform-neutral API for system
level and libc like functions. The API is used in the Mozilla client, many of
Netscape/AOL/iPlanet's and other software offerings.
JavaScript Object Notation (JSON) is a lightweight data interchange
format. Test::JSON makes it easy to verify that you have built
valid JSON and that it matches your expected output.
This package contains a number of additional tests that can be employed
against Moose classes/roles. It is intended to replace L<Test::Moose> in your
tests, and reexports any tests that it has and we do not, yet.
Thread::Pool::Simple provides a simple thread-pool implementation without
external dependencies outside core modules.
Jobs can be submitted to and handled by multi-threaded `workers' managed
by the pool.
A mapped queue, similar to Thread::Queue, except that as elements
are queued, they are assigned unique identifiers, which are used
to identify responses returned from the dequeuing thread. This
class provides a simple RPC-like mechanism between multiple client
and server threads, so that a single server thread can safely
multiplex requests from multiple client threads. Note that simplex
versions of the enqueue methods are provided which do not assign
unique identifiers, and are used for requests to which no response
is required/expected.
In addition, elements are inspected as they are enqueued/dequeued
to determine if they are Thread::Queue::Queueable (aka TQQ)
objects, and, if so, the onEnqueue() or onDequeue() methods are
called to permit any additional class-specific
marshalling/unmarshalling to be performed. Thread::Queue::Duplex
(aka TQD) is itself a Thread::Queue::Queueable object, thus
permitting TQD objects to be passed between threads.
This module replaces the standard localtime and gmtime functions
with implementations that return objects. It does so in a backwards
compatible manner, so that using localtime/gmtime in the way documented
in perlfunc will still return what you expect.