# $Id$

use strict;
use warnings;
use Test::More tests => 30;

use_ok('Workflow::Action::InputField');
use_ok('Workflow::Action::Mailer');
use_ok('Workflow::Action::Null');
use_ok('Workflow::Action');
use_ok('Workflow::Base');
use_ok('Workflow::Condition::Evaluate');
use_ok('Workflow::Condition::HasUser');
use_ok('Workflow::Condition');
use_ok('Workflow::Config::Perl');
use_ok('Workflow::Config::XML');
use_ok('Workflow::Config');
use_ok('Workflow::Context');
use_ok('Workflow::Exception');
use_ok('Workflow::Factory');
use_ok('Workflow::History');
use_ok('Workflow::Persister::DBI::AutoGeneratedId');
use_ok('Workflow::Persister::DBI::ExtraData');
use_ok('Workflow::Persister::DBI::SequenceId');
use_ok('Workflow::Persister::DBI');
use_ok('Workflow::Persister::File');
use_ok('Workflow::Persister::RandomId');

SKIP: {
    eval "require SPOPS";

    skip "SPOPS not installed", 1 if $@;

    use_ok('Workflow::Persister::SPOPS');
}

SKIP: {
    eval "require Data::UUID";

    skip "Data::UUID not installed", 1 if $@;

    use_ok('Workflow::Persister::UUID');
}

use_ok('Workflow::Persister');
use_ok('Workflow::State');
use_ok('Workflow::Validator::HasRequiredField');
use_ok('Workflow::Validator::InEnumeratedType');
use_ok('Workflow::Validator::MatchesDateFormat');
use_ok('Workflow::Validator');
use_ok('Workflow');
