Wiki::Toolkit::TestLib.3pm

Langue: en

Version: 2008-07-13 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

Wiki::Toolkit::TestLib - Utilities for writing Wiki::Toolkit tests.

DESCRIPTION

When 'perl Makefile.PL' is run on a Wiki::Toolkit distribution, information will be gathered about test databases etc that can be used for running tests. Wiki::Toolkit::TestLib gives convenient access to this information.

SYNOPSIS

   use strict;
   use Wiki::Toolkit::TestLib;
   use Test::More;
 
   my $iterator = Wiki::Toolkit::TestLib->new_wiki_maker;
   plan tests => ( $iterator->number * 6 );
 
   while ( my $wiki = $iterator->new_wiki ) {
       # put some test data in
       # run six tests
   }
 
 

Each time you call "->next" on your iterator, you will get a fresh blank wiki object. The iterator will iterate over all configured search and storage backends.

METHODS

new_wiki_maker
   my $iterator = Wiki::Toolkit::TestLib->new_wiki_maker;
 
 
number
   use Test::More;
   my $iterator = Wiki::Toolkit::TestLib->new_wiki_maker;
   plan tests => ( $iterator->number * 6 );
 
 

Returns the number of new wikis that your iterator will be able to give you.

new_wiki
   my $wiki = $iterator->new_wiki;
 
 

Returns a fresh blank wiki object, or false if you've used up all the configured search and storage backends.

configured_databases
   my @configured_databases = $iterator->configured_databases;
 
   Returns the @configured_databases array detailing configured test databases.
   Useful for very low-level testing only.
 
 

SEE ALSO

Wiki::Toolkit

AUTHOR

Kake Pugh (kake@earth.li).
      Copyright (C) 2003-2004 Kake Pugh.  All Rights Reserved.
      Copyright (C) 2008 the Wiki::Toolkit team. All Rights Reserved.
 
 

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

CAVEATS

If you have the Search::InvertedIndex backend configured (see Wiki::Toolkit::Search::SII) then your tests will raise warnings like
   (in cleanup) Search::InvertedIndex::DB::Mysql::lock() -
     testdb is not open. Can't lock.
   at /usr/local/share/perl/5.6.1/Search/InvertedIndex.pm line 1348
 
 

or

   (in cleanup) Can't call method "sync" on an undefined value
     at /usr/local/share/perl/5.6.1/Tie/DB_File/SplitHash.pm line 331
     during global destruction.
 
 

in unexpected places. I don't know whether this is a bug in me or in Search::InvertedIndex.