Test::MetaSyntactic - Common tests for Acme::MetaSyntactic themes
# add this as t/meta.t use Test::MetaSyntatic; all_themes_ok();
This module provides the minimum set of tests that any Acme::MetaSyntactic theme should pass.
The goal is to make is easier for theme creators build a distribution and ensure theirs themes will work as expected when installed.
Will find all themes under the directories listed in
@lib, and run
theme_ok() on them.
@lib is optional (it will try to find themes in blib/lib or lib if not provided).
Will run all tests on the given
$theme. Some tests require access to the source, but they will be skipped if
$source is not provided.
subtest_load() test fails, no further test will be run.
The individual tests are run as subtests. All substests but
subtest_load() assume that the module can be successfully loaded.
Checks that the theme source file does not contain the word "FIXME".
Checks that the theme source files contains an
=encoding line if it contains some non us-ascii characters.
Tries to load the theme module.
First in the currently running process, and then in isolation inside its own environment.
Checks that the theme has a
Checks that each metasyntactic name in the theme is a valid Perl variable name.
Checks that each name in the theme has valid length.
Checks that the
__DATA__ section (if any) of the theme source is properly formatted.
Checks that the exported
meta$theme function returns an item from
use Acme::MetaSyntactic::$theme () does not export the
Checks that the
theme() function returns the theme name.
For themes with a remote list, checks that the remote list (if any) is identical to the current list of items in the theme.
This subtest will only be run if
AUTHOR_TESTING, for backward compatibility reasons) is true and
AUTOMATED_TESTING is false. Requires LWP::UserAgent.
Philippe Bruhat (BooK),
Copyright 2012-2017 Philippe Bruhat (BooK), All Rights Reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.