Agent Perl provides both a foundation for software agent developers, and a
standardized API for the agent's users. Agent's two most prominent features
are its support for agent transportation and abstract messaging over
different mediums.
CPAN::Mini provides a simple mechanism to build and update a minimal
mirror of the CPAN on your local disk. It contains only those files
needed to install the newest version of every distribution.
ExtUtils::Manifest provides a number of utilities to write and check a MANIFEST
file. At present the list includes mkmanifest, manicheck, filecheck, fullcheck,
skipcheck, manifind, maniread, manicopy, and maniadd.
Regexp::Subst::Parallel is a module that allows you to make multiple
simultaneous substitutions safely. Using the sole exported "subst"
function has a rather different effect from doing each substitution
sequentially.
Provides basic test runner via use_test_packages by base package or a list
of test packages. Allows you to choose your test paths.
Use Test::Able without a bunch of boilerplate.
When using this module in a test script, it goes through all the modules
in your distribution, checks their POD, checks that they compile ok and
checks that they all define a $VERSION.
Check MANIFEST.in in a Python source package for completeness.
- Are you a Python developer?
- Have you uploaded packages to the Python PackageIndex?
- Have you accidentally uploaded broken packages with some files missing?
If so, check-manifest is for you.
Exam is a Python toolkit for writing better tests. It aims to remove a lot of
the boiler plate testing code one often writes, while still following Python
conventions and adhering to the unit testing interface.
Flexmock is a mock/stub/spy library for Python.
Its API is inspired by a Ruby library of the same name.
However, it is not a goal of Python Flexmock to be a clone of
the Ruby version. Instead, the focus is on providing full support
for testing Python programs and making the creation of fake
objects as unobtrusive as possible.
As a result, Python Flexmock removes a number of redandancies in
the Ruby Flexmock API, alters some defaults, and introduces a
number of Python-only features.
Flexmock declarations are structured to read more like English
sentences than API calls, and it is possible to chain them
together in any order to achieve high degree of expressiveness
in a single line of code.
Grouch is a system for describing and enforcing a Python object schema.
That is, it provides you with a language for describing the intended type
signatures of your objects (collectively, the "object schema"), and tools
to walk an object graph, checking that every value found matches your
object schema.
An object schema describes every class in a collection of objects -- in
particular, it specifies the type of every instance attribute of every
class. Grouch includes a type language for specifying attribute types, a
tool to parse specially-formatted class docstrings and output a complete
object schema, and another tool for walking a persistent object graph and
ensuring that every scrap of data in it conforms to the object schema
extracted from your class docstrings. The API for defining, querying, and
enforcing types is fairly complete and well-documented, so you can use
Grouch's type system in other ways as well.