Warning: prerequisite Class::Observable 1.04 not found. We have 1.02. Checking if your kit is complete... Looks good Warning: Guessing NAME [Workflow] from current directory name. Writing Makefile for Workflow Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. cp lib/Workflow/Factory.pm blib\lib\Workflow\Factory.pm cp lib/Workflow/Validator/HasRequiredField.pm blib\lib\Workflow\Validator\HasRequiredField.pm cp lib/Workflow/Exception.pm blib\lib\Workflow\Exception.pm cp lib/Workflow/Condition/HasUser.pm blib\lib\Workflow\Condition\HasUser.pm cp lib/Workflow/Persister/DBI/SequenceId.pm blib\lib\Workflow\Persister\DBI\SequenceId.pm cp lib/Workflow/Action/InputField.pm blib\lib\Workflow\Action\InputField.pm cp lib/Workflow/Persister/RandomId.pm blib\lib\Workflow\Persister\RandomId.pm cp lib/Workflow/Persister/DBI/ExtraData.pm blib\lib\Workflow\Persister\DBI\ExtraData.pm cp lib/Workflow/Action/Mailer.pm blib\lib\Workflow\Action\Mailer.pm cp lib/Workflow/Config/Perl.pm blib\lib\Workflow\Config\Perl.pm cp lib/Workflow/Persister.pm blib\lib\Workflow\Persister.pm cp lib/Workflow/Persister/UUID.pm blib\lib\Workflow\Persister\UUID.pm cp lib/Workflow/Action.pm blib\lib\Workflow\Action.pm cp lib/Workflow/Persister/DBI/AutoGeneratedId.pm blib\lib\Workflow\Persister\DBI\AutoGeneratedId.pm cp lib/Workflow/Persister/SPOPS.pm blib\lib\Workflow\Persister\SPOPS.pm cp lib/Workflow/History.pm blib\lib\Workflow\History.pm cp lib/Workflow/Validator/MatchesDateFormat.pm blib\lib\Workflow\Validator\MatchesDateFormat.pm cp lib/Workflow/State.pm blib\lib\Workflow\State.pm cp lib/Workflow/Config/XML.pm blib\lib\Workflow\Config\XML.pm cp lib/Workflow/Context.pm blib\lib\Workflow\Context.pm cp lib/Workflow/Persister/File.pm blib\lib\Workflow\Persister\File.pm cp lib/Workflow/Condition/Evaluate.pm blib\lib\Workflow\Condition\Evaluate.pm cp lib/Workflow/Validator.pm blib\lib\Workflow\Validator.pm cp lib/Workflow/Action/Null.pm blib\lib\Workflow\Action\Null.pm cp lib/Workflow/Validator/InEnumeratedType.pm blib\lib\Workflow\Validator\InEnumeratedType.pm cp lib/Workflow/Condition.pm blib\lib\Workflow\Condition.pm cp lib/Workflow/Config.pm blib\lib\Workflow\Config.pm cp lib/Workflow/Base.pm blib\lib\Workflow\Base.pm cp lib/Workflow.pm blib\lib\Workflow.pm cp lib/Workflow/Persister/DBI.pm blib\lib\Workflow\Persister\DBI.pm Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. C:\cpanrun\build\5-10-0\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(1, 'blib\lib', 'blib\arch')" t/*.t t/00_load..........................1..30 ok 1 - use Workflow::Action::InputField; Log4perl: Seems like no initialization happened. Forgot to call init()? ok 2 - use Workflow::Action::Mailer; ok 3 - use Workflow::Action::Null; ok 4 - use Workflow::Action; ok 5 - use Workflow::Base; ok 6 - use Workflow::Condition::Evaluate; ok 7 - use Workflow::Condition::HasUser; ok 8 - use Workflow::Condition; ok 9 - use Workflow::Config::Perl; ok 10 - use Workflow::Config::XML; ok 11 - use Workflow::Config; ok 12 - use Workflow::Context; ok 13 - use Workflow::Exception; ok 14 - use Workflow::Factory; ok 15 - use Workflow::History; ok 16 - use Workflow::Persister::DBI::AutoGeneratedId; ok 17 - use Workflow::Persister::DBI::ExtraData; ok 18 - use Workflow::Persister::DBI::SequenceId; ok 19 - use Workflow::Persister::DBI; ok 20 - use Workflow::Persister::File; ok 21 - use Workflow::Persister::RandomId; ok 22 - use Workflow::Persister::SPOPS; ok 23 - use Workflow::Persister::UUID; ok 24 - use Workflow::Persister; ok 25 - use Workflow::State; ok 26 - use Workflow::Validator::HasRequiredField; ok 27 - use Workflow::Validator::InEnumeratedType; ok 28 - use Workflow::Validator::MatchesDateFormat; ok 29 - use Workflow::Validator; ok 30 - use Workflow; ok t/02_pod...........................1..0 # Skip set TEST_POD to enable this test skipped all skipped: set TEST_POD to enable this test t/03_pod-coverage..................1..0 # Skip Test::Pod::Coverage 1.04 required skipped all skipped: Test::Pod::Coverage 1.04 required t/action...........................1..3 ok 1 - require Workflow::Action; ok 2 ok 3 ok t/action_field.....................1..16 ok 1 - require Workflow::Action::InputField; ok 2 ok 3 ok 4 - The object isa Workflow::Action::InputField ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok 16 ok t/action_mailer....................1..2 ok 1 - require Workflow::Action::Mailer; ok 2 ok t/action_null......................1..2 ok 1 - require Workflow::Action::Null; ok 2 ok t/base.............................1..26 ok 1 - require Workflow::Base; ok 2 - Object created of correct type ok 3 - Internal parameter storage created ok 4 - No parameters set ok 5 - All parameter call returns hashref ok 6 - No parameters set in all parameter call ok 7 - Parameter call to nonexistent key returns undef ok 8 - Parameter call with single value set returns value ok 9 - Parameter call to existent key returns proper value ok 10 - Parameter call with multiple keys and values returns hashref ok 11 - Proper number of parameters after multiple values set ok 12 - Multiple parameter set value 1 ok ok 13 - Multiple parameter set value 2 ok ok 14 - Delete one parameter ok 15 - Parameter call to nonexistent key returns undef ok 16 - Deleted several parameters ok 17 - Parameter call to nonexistent key returns undef ok 18 - Cleared param call executed ok ok 19 - All parameters cleared ok 20 - Constructor using multiple generic params returned correct subclass ok 21 - Generic param value 1 (set via init()) ok ok 22 - Generic param value 2 (set via init()) ok ok 23 - Named param value (set via init()) ok ok 24 - Empty array normalized to empty array ok 25 - List of one item normalized to array of proper size ok 26 - List reference normalized to array of proper size ok t/cached_conditions................Log4perl: Seems like no initialization happened. Forgot to call init()? 1..3 ok 1 - Exactly two actions available ok 2 - Available actions change over time ok 3 - Available actions change when changing states ok t/condition........................1..2 ok 1 - require Workflow::Condition; ok 2 ok t/condition_evaluate...............1..1 ok 1 - require Workflow::Condition::Evaluate; ok t/config...........................1..24 ok 1 - require Workflow::Config; ok 2 ok 3 ok 4 ok 5 - The object isa Workflow::Config ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 - The object isa Workflow::Config ok 13 ok 14 ok 15 ok 16 - forgotten file, asserting length of array returned ok 17 ok 18 ok 19 ok 20 ok 21 ok 22 - asserting return value ok 23 ok 24 ok t/context..........................1..9 ok 1 - require Workflow::Context; ok 2 ok 3 - The object isa Workflow::Context ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok t/exception........................1..1 ok 1 - require Workflow::Exception; ok t/factory..........................1..7 ok 1 - require Workflow::Factory; ok 2 - Return from instance() correct type ok 3 - Another call to instance() returns same object ok 4 - Call to new() throws proper exception ok 5 - Imported factory returns the same object ok 6 ok 7 ok t/factory_subclass.................1..5 ok 1 - require FactorySubclass; ok 2 - Return from subclassed instance() correct type ok 3 - Another call to instance() returns same object ok 4 - Call to new() throws proper exception ok 5 - Imported factory returns the same object ok t/history..........................1..10 ok 1 - require Workflow::History; ok 2 - Parameter 'date' set properly from constructor ok 3 - Parameter 'user' set properly from constructor ok 4 - Parameter 'action' set properly from constructor ok 5 - Parameter 'description' set properly from constructor ok 6 - Parameter 'state' set properly from constructor ok 7 - Parameter 'workflow_id' set properly from constructor ok 8 - Saved flag of new object unset ok 9 - ID of new object unset ok 10 - Current datetime set with new history object ok t/persister........................1..6 ok 1 - require Workflow::Persister; ok 2 ok 3 ok 4 ok 5 ok 6 ok t/persister_dbi....................1..43 ok 1 - require Workflow::Persister::DBI; ok 2 - Got back dsn from config. ok 3 - Got back date format from config. ok 4 - Created workflow has ID ok 5 - Correct number of statements created ok 6 - Statement matches (create workflow) ok 7 - Correct number (4) of parameters bound (create workflow) ok 8 - Bound parameter for 'type' matches ok 9 - ...for 'state' matches ok 10 - ...for 'current date' matches ok 11 - ...for 'random ID of correct length' matches ok 12 - Statement matches (create workflow history) ok 13 - Correct number (7) of parameters bound (create workflow history) ok 14 - Bound parameter for 'workflow ID' matches ok 15 - ...for 'action' matches ok 16 - ...for 'description' matches ok 17 - ...for 'state' matches ok 18 - ...for 'user' matches ok 19 - ...for 'current date' matches ok 20 - ...for 'random ID of correct length' matches ok 21 - State of modified workflow correct ok 22 - Ticket added to context by action ok 23 - Correct number of statements to update workflow, create history and create ticket ok 24 - Statement matches (create ticket) ok 25 - Correct number (8) of parameters bound (create ticket) ok 26 - Bound parameter for 'ticket ID' matches ok 27 - ...for 'type' matches ok 28 - ...for 'subject' matches ok 29 - ...for 'description' matches ok 30 - ...for 'creator' matches ok 31 - ...for 'status' matches ok 32 - ...for 'due date' matches ok 33 - ...for 'last update' matches ok 34 - Statement matches (create workflow history) ok 35 - Correct number (7) of parameters bound (create workflow history) ok 36 - Bound parameter for 'workflow ID' matches ok 37 - ...for 'action' matches ok 38 - ...for 'description' matches ok 39 - ...for 'state' matches ok 40 - ...for 'user' matches ok 41 - ...for 'current date' matches ok 42 - ...for 'random ID of correct length' matches ok 43 - Trying to fetch non-existent workflow returns undef ok t/persister_dbi_extra_data.........1..1 ok 1 - require Workflow::Persister::DBI::ExtraData; ok t/persister_file...................1..19 ok 1 - require Workflow::Persister::File; ok 2 - Created workflow has ID ok 3 - Workflow and persisted data ID match ok 4 - ...state matches ok 5 - ...type matches ok 6 - ...date of correct type (DateTime) ok 7 - Number of history objects after create ok 8 - History object has ID ok 9 - Workflow ID matches that in history ok 10 - Action matches value set in Factory ok 11 - Description matches value set in Factory ok 12 - User matches value set in Factory ok 13 - State of modified workflow correct ok 14 - State of persisted workflow correct ok 15 - Workflow ID of persisted workflow-to-ticket link correct ok 16 - Persisted workflow-to-ticket link has ticket ID ok 17 - State of persisted ticket ok ok 18 - Update time of persisted workflow changed from creation time ok 19 - Number of history objects after executing action ok t/persister_random_id..............1..10 ok 1 - require Workflow::Persister::RandomId; ok 2 - Object created of correct type ok 3 - Default length of ID set properly ok 4 - Value returned from generator ok 5 - ...and of correct length ok 6 - Separate value returned from generator also of correct length ok 7 - Two generated IDs not equal (good) ok 8 - Nothing returned from post_fetch method (good) ok 9 - Explicit ID length set properly ok 10 - Value returned from generator correct length ok t/persister_spops..................1..18 ok 1 - require Workflow::Persister::SPOPS; ok 2 - Created workflow has ID ok 3 - Workflow and persisted data ID match ok 4 - ...state matches ok 5 - ...type matches ok 6 - ...date of correct type (DateTime) ok 7 - Number of history objects after create ok 8 - History object has ID ok 9 - Workflow ID matches that in history ok 10 - Action matches value set in Factory ok 11 - Description matches value set in Factory ok 12 - User matches value set in Factory ok 13 - State of modified workflow correct ok 14 - State of persisted workflow correct ok 15 - State of persisted workflow-to-ticket link correct ok 16 - State of persisted ticket ok ok 17 - Update time of persisted workflow changed from creation time ok 18 - Number of history objects after executing action ok t/persister_uuid...................1..7 ok 1 - require Workflow::Persister::UUID; ok 2 - Object created of correct type ok 3 - Embedded generator is correct type ok 4 - Value returned from generator ok 5 - Value returned from generator correct length ok 6 - Two UUIDs not equal (good) ok 7 - Nothing returned from post_fetch method (good) ok t/state............................1..1 ok 1 - require Workflow::State; ok t/validator........................1..2 ok 1 - require Workflow::Validator; ok 2 ok t/validator_has_required_field.....1..1 ok 1 - require Workflow::Validator::HasRequiredField; ok t/validator_in_enumerated_type.....1..14 Use of uninitialized value in concatenation (.) or string at C:\cpanrun\depot\main\contrib-patched\perl\CPAN\src\Workflow\blib\lib/Workflow/Validator.pm line 19. ok 1 - require Workflow::Validator::InEnumeratedType; Use of uninitialized value in concatenation (.) or string at C:\cpanrun\depot\main\contrib-patched\perl\CPAN\src\Workflow\blib\lib/Workflow/Validator.pm line 19. ok 2 ok 3 ok 4 - The object isa Workflow::Validator ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 Use of uninitialized value in concatenation (.) or string at C:\cpanrun\depot\main\contrib-patched\perl\CPAN\src\Workflow\blib\lib/Workflow/Validator.pm line 19. ok 11 ok 12 ok 13 ok 14 ok t/validator_matches_date_format....1..6 Use of uninitialized value in concatenation (.) or string at C:\cpanrun\depot\main\contrib-patched\perl\CPAN\src\Workflow\blib\lib/Workflow/Validator.pm line 19. ok 1 - require Workflow::Validator::MatchesDateFormat; Use of uninitialized value in concatenation (.) or string at C:\cpanrun\depot\main\contrib-patched\perl\CPAN\src\Workflow\blib\lib/Workflow/Validator.pm line 19. ok 2 ok 3 ok 4 - The object isa Workflow::Validator ok 5 ok 6 ok t/workflow.........................1..32 ok 1 - require Workflow; ok 2 - Added configuration for workflow with observer ok 3 - One observation sent on workflow create to two observers ok 4 - Observation sent to configured class observer first ok 5 - Class observer sent the correct create action ok 6 - Observation sent to configured subroutine observer second ok 7 - Subroutine observer sent the correct create action ok 8 - One observation sent on workflow fetch to two observers ok 9 - Observation sent to configured class observer first ok 10 - Class observer sent the correct fetch action ok 11 - Observation sent to configured subroutine observer second ok 12 - Subroutine observer sent the correct fetch action ok 13 - One observation sent on workflow store to two observers ok 14 - Observation sent to configured class observer first ok 15 - Class observer sent the correct save action ok 16 - Observation sent to configured subroutine observer second ok 17 - Subroutine observer sent the correct save action ok 18 - Three observations sent on workflow execute to two observers ok 19 - Save observation generated first to first observer ok 20 - Save observation generated first to second observer ok 21 - Observation sent to configured class observer first ok 22 - Class observer sent the correct execute action ok 23 - Class observer sent the correct old state for execute ok 24 - Observation sent to configured subroutine observer second ok 25 - Subroutine observer sent the correct execute action ok 26 - Subroutine observer sent the correct old state for execute ok 27 - Observation sent to configured class observer first ok 28 - Class observer sent the correct state change action ok 29 - Class observer sent the correct old state for state change ok 30 - Observation sent to configured subroutine observer second ok 31 - Subroutine observer sent the correct state change action ok 32 - Subroutine observer sent the correct old state for state change ok All tests successful, 2 tests skipped. Files=30, Tests=301, 33 wallclock secs ( 0.00 cusr + 0.00 csys = 0.00 CPU) Microsoft (R) Program Maintenance Utility Version 7.10.3077 Copyright (C) Microsoft Corporation. All rights reserved. Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Action.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Base.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Condition.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Config.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Context.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Exception.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Factory.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\History.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\State.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Validator.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Action\InputField.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Action\Mailer.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Action\Null.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Condition\Evaluate.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Condition\HasUser.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Config\Perl.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Config\XML.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\DBI.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\File.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\RandomId.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\SPOPS.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\UUID.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\DBI\AutoGeneratedId.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\DBI\ExtraData.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Persister\DBI\SequenceId.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Validator\HasRequiredField.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Validator\InEnumeratedType.html Installing C:\cpanrun\build\5-10-0\html\site\lib\Workflow\Validator\MatchesDateFormat.html Installing C:\cpanrun\build\5-10-0\site\lib\Workflow.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Action.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Base.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Condition.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Config.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Context.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Exception.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Factory.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\History.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\State.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Validator.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Action\InputField.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Action\Mailer.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Action\Null.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Condition\Evaluate.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Condition\HasUser.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Config\Perl.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Config\XML.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\DBI.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\File.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\RandomId.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\SPOPS.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\UUID.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\DBI\AutoGeneratedId.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\DBI\ExtraData.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Persister\DBI\SequenceId.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Validator\HasRequiredField.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Validator\InEnumeratedType.pm Installing C:\cpanrun\build\5-10-0\site\lib\Workflow\Validator\MatchesDateFormat.pm Appending installation info to C:\cpanrun\build\5-10-0\lib/perllocal.pod