PATH=/usr/bin:/bin
Start 2013-01-12T03:03:08
ActivePerl-1600 CPAN-1.9402
Going to read '/Users/fly1600/var/cpan/Metadata'
Database was generated on Sat, 12 Jan 2013 08:53:03 GMT
Running make for D/DW/DWHEELER/App-Sqitch-0.952.tar.gz
Checksum for /net/nas/data/cpan/authors/id/D/DW/DWHEELER/App-Sqitch-0.952.tar.gz ok
App-Sqitch-0.952/
App-Sqitch-0.952/bin/
App-Sqitch-0.952/Build.PL
App-Sqitch-0.952/Changes
App-Sqitch-0.952/dist/
App-Sqitch-0.952/etc/
App-Sqitch-0.952/inc/
App-Sqitch-0.952/lib/
App-Sqitch-0.952/LICENSE
App-Sqitch-0.952/MANIFEST
App-Sqitch-0.952/META.json
App-Sqitch-0.952/META.yml
App-Sqitch-0.952/README
App-Sqitch-0.952/README.md
App-Sqitch-0.952/t/
App-Sqitch-0.952/xt/
App-Sqitch-0.952/xt/release/
App-Sqitch-0.952/xt/release/pod-spelling.t
App-Sqitch-0.952/t/add.t
App-Sqitch-0.952/t/add_change.conf
App-Sqitch-0.952/t/base.t
App-Sqitch-0.952/t/blank.t
App-Sqitch-0.952/t/bundle.t
App-Sqitch-0.952/t/change.t
App-Sqitch-0.952/t/changelist.t
App-Sqitch-0.952/t/command.t
App-Sqitch-0.952/t/config.t
App-Sqitch-0.952/t/configuration.t
App-Sqitch-0.952/t/datetime.t
App-Sqitch-0.952/t/depend.t
App-Sqitch-0.952/t/deploy.t
App-Sqitch-0.952/t/die.pl
App-Sqitch-0.952/t/echo.pl
App-Sqitch-0.952/t/engine.t
App-Sqitch-0.952/t/help.t
App-Sqitch-0.952/t/init.t
App-Sqitch-0.952/t/lib/
App-Sqitch-0.952/t/linelist.t
App-Sqitch-0.952/t/local.conf
App-Sqitch-0.952/t/log.t
App-Sqitch-0.952/t/options.t
App-Sqitch-0.952/t/pg/
App-Sqitch-0.952/t/pg.t
App-Sqitch-0.952/t/plan.t
App-Sqitch-0.952/t/plans/
App-Sqitch-0.952/t/pod-coverage.t
App-Sqitch-0.952/t/pod.t
App-Sqitch-0.952/t/pragma.t
App-Sqitch-0.952/t/read.pl
App-Sqitch-0.952/t/rebase.t
App-Sqitch-0.952/t/revert.t
App-Sqitch-0.952/t/rework.t
App-Sqitch-0.952/t/show.t
App-Sqitch-0.952/t/sqitch
App-Sqitch-0.952/t/sqitch.conf
App-Sqitch-0.952/t/sql/
App-Sqitch-0.952/t/sqlite.t
App-Sqitch-0.952/t/status.t
App-Sqitch-0.952/t/tag.t
App-Sqitch-0.952/t/tag_cmd.t
App-Sqitch-0.952/t/user.conf
App-Sqitch-0.952/t/verify.t
App-Sqitch-0.952/t/x.t
App-Sqitch-0.952/t/sql/deploy/
App-Sqitch-0.952/t/sql/sqitch.plan
App-Sqitch-0.952/t/sql/verify/
App-Sqitch-0.952/t/sql/verify/users.sql
App-Sqitch-0.952/t/sql/deploy/roles.sql
App-Sqitch-0.952/t/sql/deploy/users.sql
App-Sqitch-0.952/t/sql/deploy/widgets.sql
App-Sqitch-0.952/t/plans/bad-change.plan
App-Sqitch-0.952/t/plans/changes-only.plan
App-Sqitch-0.952/t/plans/dependencies.plan
App-Sqitch-0.952/t/plans/deploy-and-revert.plan
App-Sqitch-0.952/t/plans/dupe-change-diff-tag.plan
App-Sqitch-0.952/t/plans/dupe-change.plan
App-Sqitch-0.952/t/plans/dupe-tag.plan
App-Sqitch-0.952/t/plans/multi.plan
App-Sqitch-0.952/t/plans/pragmas.plan
App-Sqitch-0.952/t/plans/project_deps.plan
App-Sqitch-0.952/t/plans/reserved-tag.plan
App-Sqitch-0.952/t/plans/widgets.plan
App-Sqitch-0.952/t/pg/deploy/
App-Sqitch-0.952/t/pg/revert/
App-Sqitch-0.952/t/pg/sqitch.plan
App-Sqitch-0.952/t/pg/revert/func/
App-Sqitch-0.952/t/pg/revert/users.sql
App-Sqitch-0.952/t/pg/revert/widgets.sql
App-Sqitch-0.952/t/pg/revert/func/add_user.sql
App-Sqitch-0.952/t/pg/deploy/func/
App-Sqitch-0.952/t/pg/deploy/users.sql
App-Sqitch-0.952/t/pg/deploy/widgets.sql
App-Sqitch-0.952/t/pg/deploy/func/add_user.sql
App-Sqitch-0.952/t/lib/App/
App-Sqitch-0.952/t/lib/MockOutput.pm
App-Sqitch-0.952/t/lib/App/Sqitch/
App-Sqitch-0.952/t/lib/App/Sqitch/Command/
App-Sqitch-0.952/t/lib/App/Sqitch/Engine/
App-Sqitch-0.952/t/lib/App/Sqitch/Engine/bad.pm
App-Sqitch-0.952/t/lib/App/Sqitch/Engine/good.pm
App-Sqitch-0.952/t/lib/App/Sqitch/Command/bad.pm
App-Sqitch-0.952/t/lib/App/Sqitch/Command/good.pm
App-Sqitch-0.952/lib/App/
App-Sqitch-0.952/lib/LocaleData/
App-Sqitch-0.952/lib/sqitch-add-usage.pod
App-Sqitch-0.952/lib/sqitch-add.pod
App-Sqitch-0.952/lib/sqitch-bundle-usage.pod
App-Sqitch-0.952/lib/sqitch-bundle.pod
App-Sqitch-0.952/lib/sqitch-config-usage.pod
App-Sqitch-0.952/lib/sqitch-config.pod
App-Sqitch-0.952/lib/sqitch-deploy-usage.pod
App-Sqitch-0.952/lib/sqitch-deploy.pod
App-Sqitch-0.952/lib/sqitch-help-usage.pod
App-Sqitch-0.952/lib/sqitch-help.pod
App-Sqitch-0.952/lib/sqitch-init-usage.pod
App-Sqitch-0.952/lib/sqitch-init.pod
App-Sqitch-0.952/lib/sqitch-log-usage.pod
App-Sqitch-0.952/lib/sqitch-log.pod
App-Sqitch-0.952/lib/sqitch-rebase-usage.pod
App-Sqitch-0.952/lib/sqitch-rebase.pod
App-Sqitch-0.952/lib/sqitch-revert-usage.pod
App-Sqitch-0.952/lib/sqitch-revert.pod
App-Sqitch-0.952/lib/sqitch-rework-usage.pod
App-Sqitch-0.952/lib/sqitch-rework.pod
App-Sqitch-0.952/lib/sqitch-show-usage.pod
App-Sqitch-0.952/lib/sqitch-show.pod
App-Sqitch-0.952/lib/sqitch-status-usage.pod
App-Sqitch-0.952/lib/sqitch-status.pod
App-Sqitch-0.952/lib/sqitch-tag-usage.pod
App-Sqitch-0.952/lib/sqitch-tag.pod
App-Sqitch-0.952/lib/sqitch-verify-usage.pod
App-Sqitch-0.952/lib/sqitch-verify.pod
App-Sqitch-0.952/lib/sqitch.pod
App-Sqitch-0.952/lib/sqitchchanges.pod
App-Sqitch-0.952/lib/sqitchcommands.pod
App-Sqitch-0.952/lib/sqitchtutorial.pod
App-Sqitch-0.952/lib/LocaleData/de/
App-Sqitch-0.952/lib/LocaleData/fr/
App-Sqitch-0.952/lib/LocaleData/fr/LC_MESSAGES/
App-Sqitch-0.952/lib/LocaleData/fr/LC_MESSAGES/App-Sqitch.mo
App-Sqitch-0.952/lib/LocaleData/de/LC_MESSAGES/
App-Sqitch-0.952/lib/LocaleData/de/LC_MESSAGES/App-Sqitch.mo
App-Sqitch-0.952/lib/App/Sqitch/
App-Sqitch-0.952/lib/App/Sqitch.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/
App-Sqitch-0.952/lib/App/Sqitch/Command.pm
App-Sqitch-0.952/lib/App/Sqitch/Config.pm
App-Sqitch-0.952/lib/App/Sqitch/DateTime.pm
App-Sqitch-0.952/lib/App/Sqitch/Engine/
App-Sqitch-0.952/lib/App/Sqitch/Engine.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/
App-Sqitch-0.952/lib/App/Sqitch/Plan.pm
App-Sqitch-0.952/lib/App/Sqitch/X.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Blank.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Change.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/ChangeList.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Depend.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Line.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/LineList.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Pragma.pm
App-Sqitch-0.952/lib/App/Sqitch/Plan/Tag.pm
App-Sqitch-0.952/lib/App/Sqitch/Engine/pg.pm
App-Sqitch-0.952/lib/App/Sqitch/Engine/pg.sql
App-Sqitch-0.952/lib/App/Sqitch/Engine/sqlite.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/add.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/bundle.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/config.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/deploy.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/help.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/init.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/log.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/rebase.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/revert.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/rework.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/show.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/status.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/tag.pm
App-Sqitch-0.952/lib/App/Sqitch/Command/verify.pm
App-Sqitch-0.952/inc/Module/
App-Sqitch-0.952/inc/Module/Build/
App-Sqitch-0.952/inc/Module/Build/Sqitch.pm
App-Sqitch-0.952/etc/templates/
App-Sqitch-0.952/etc/templates/deploy.tmpl
App-Sqitch-0.952/etc/templates/revert.tmpl
App-Sqitch-0.952/etc/templates/verify.tmpl
App-Sqitch-0.952/dist/sqitch.spec
App-Sqitch-0.952/bin/sqitch
CPAN.pm: Going to build D/DW/DWHEELER/App-Sqitch-0.952.tar.gz
>>> /Users/fly1600/ap1600/bin/perl-dynamic Build.PL
Checking prerequisites...
requires:
! Mouse (1.02) is installed, but we need version >= 1.04
ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the versions
of the modules indicated above before proceeding with this installation
Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'App-Sqitch' version '0.952'
---- Unsatisfied dependencies detected during ----
---- DWHEELER/App-Sqitch-0.952.tar.gz ----
Mouse [requires]
Running Build test
Delayed until after prerequisites
Running test for module 'Mouse'
Running make for G/GF/GFUJI/Mouse-1.04.tar.gz
Checksum for /net/nas/data/cpan/authors/id/G/GF/GFUJI/Mouse-1.04.tar.gz ok
Mouse-1.04/
Mouse-1.04/.shipit
Mouse-1.04/benchmarks/
Mouse-1.04/benchmarks/accessors.pl
Mouse-1.04/benchmarks/basic.pl
Mouse-1.04/benchmarks/class_type.pl
Mouse-1.04/benchmarks/coercion.pl
Mouse-1.04/benchmarks/constructor.pl
Mouse-1.04/benchmarks/load_class.pl
Mouse-1.04/benchmarks/modifiers.pl
Mouse-1.04/benchmarks/new_object.pl
Mouse-1.04/benchmarks/subtype.pl
Mouse-1.04/benchmarks/type_constraints.pl
Mouse-1.04/benchmarks/vs_caf.pl
Mouse-1.04/benchmarks/vs_caf_w_destructors.pl
Mouse-1.04/Changes
Mouse-1.04/example/
Mouse-1.04/example/point.pl
Mouse-1.04/example/traits.pl
Mouse-1.04/example/warns.pl
Mouse-1.04/inc/
Mouse-1.04/inc/Module/
Mouse-1.04/inc/Module/Install/
Mouse-1.04/inc/Module/Install/AuthorTests.pm
Mouse-1.04/inc/Module/Install/Base.pm
Mouse-1.04/inc/Module/Install/Can.pm
Mouse-1.04/inc/Module/Install/Include.pm
Mouse-1.04/inc/Module/Install/Makefile.pm
Mouse-1.04/inc/Module/Install/Metadata.pm
Mouse-1.04/inc/Module/Install/Repository.pm
Mouse-1.04/inc/Module/Install/TestTarget.pm
Mouse-1.04/inc/Module/Install/WriteAll.pm
Mouse-1.04/inc/Module/Install/XSUtil.pm
Mouse-1.04/inc/Module/Install.pm
Mouse-1.04/inc/Test/
Mouse-1.04/inc/Test/Exception/
Mouse-1.04/inc/Test/Exception/LessClever.pm
Mouse-1.04/inc/Test/Exception.pm
Mouse-1.04/inc/Test/Requires.pm
Mouse-1.04/lib/
Mouse-1.04/lib/Mouse/
Mouse-1.04/lib/Mouse/Exporter.pm
Mouse-1.04/lib/Mouse/Meta/
Mouse-1.04/lib/Mouse/Meta/Attribute.pm
Mouse-1.04/lib/Mouse/Meta/Class.pm
Mouse-1.04/lib/Mouse/Meta/Method/
Mouse-1.04/lib/Mouse/Meta/Method/Accessor.pm
Mouse-1.04/lib/Mouse/Meta/Method/Constructor.pm
Mouse-1.04/lib/Mouse/Meta/Method/Delegation.pm
Mouse-1.04/lib/Mouse/Meta/Method/Destructor.pm
Mouse-1.04/lib/Mouse/Meta/Method.pm
Mouse-1.04/lib/Mouse/Meta/Module.pm
Mouse-1.04/lib/Mouse/Meta/Role/
Mouse-1.04/lib/Mouse/Meta/Role/Application.pm
Mouse-1.04/lib/Mouse/Meta/Role/Composite.pm
Mouse-1.04/lib/Mouse/Meta/Role/Method.pm
Mouse-1.04/lib/Mouse/Meta/Role.pm
Mouse-1.04/lib/Mouse/Meta/TypeConstraint.pm
Mouse-1.04/lib/Mouse/Object.pm
Mouse-1.04/lib/Mouse/PurePerl.pm
Mouse-1.04/lib/Mouse/Role.pm
Mouse-1.04/lib/Mouse/Spec.pm
Mouse-1.04/lib/Mouse/Tiny.pod
Mouse-1.04/lib/Mouse/TypeRegistry.pm
Mouse-1.04/lib/Mouse/Util/
Mouse-1.04/lib/Mouse/Util/MetaRole.pm
Mouse-1.04/lib/Mouse/Util/TypeConstraints.pm
Mouse-1.04/lib/Mouse/Util.pm
Mouse-1.04/lib/Mouse/XS.pod
Mouse-1.04/lib/Mouse.pm
Mouse-1.04/lib/ouse.pm
Mouse-1.04/lib/Squirrel/
Mouse-1.04/lib/Squirrel/Role.pm
Mouse-1.04/lib/Squirrel.pm
Mouse-1.04/lib/Test/
Mouse-1.04/lib/Test/Mouse.pm
Mouse-1.04/Makefile.PL
Mouse-1.04/MANIFEST
Mouse-1.04/MANIFEST.SKIP
Mouse-1.04/META.yml
Mouse-1.04/mouse.h
Mouse-1.04/README
Mouse-1.04/t/
Mouse-1.04/t/000-load.t
Mouse-1.04/t/000_recipes/
Mouse-1.04/t/000_recipes/002_schwartz_tutorial.t
Mouse-1.04/t/000_recipes/basics-recipe10.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe1.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe2.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe3.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe4.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe5.t
Mouse-1.04/t/000_recipes/moose_cookbook_basics_recipe6.t
Mouse-1.04/t/000_recipes/moose_cookbook_extending_recipe3.t
Mouse-1.04/t/000_recipes/moose_cookbook_meta_recipe2.t
Mouse-1.04/t/000_recipes/moose_cookbook_meta_recipe3.t
Mouse-1.04/t/000_recipes/moose_cookbook_roles_recipe1.t
Mouse-1.04/t/000_recipes/moose_cookbook_roles_recipe2.t
Mouse-1.04/t/000_recipes/moose_cookbook_roles_recipe3.t
Mouse-1.04/t/001_mouse/
Mouse-1.04/t/001_mouse/001-strict-and-warnings.t
Mouse-1.04/t/001_mouse/002-subclass.t
Mouse-1.04/t/001_mouse/006-unimport.t
Mouse-1.04/t/001_mouse/007-attributes.t
Mouse-1.04/t/001_mouse/008-default.t
Mouse-1.04/t/001_mouse/010-required.t
Mouse-1.04/t/001_mouse/011-lazy.t
Mouse-1.04/t/001_mouse/013-predicate-and-clearer.t
Mouse-1.04/t/001_mouse/014-build.t
Mouse-1.04/t/001_mouse/015-demolish.t
Mouse-1.04/t/001_mouse/016-trigger.t
Mouse-1.04/t/001_mouse/017-default-reference.t
Mouse-1.04/t/001_mouse/018-multiattr-has.t
Mouse-1.04/t/001_mouse/019-handles.t
Mouse-1.04/t/001_mouse/020-load-class.t
Mouse-1.04/t/001_mouse/021-weak-ref.t
Mouse-1.04/t/001_mouse/022-init-arg.t
Mouse-1.04/t/001_mouse/023-builder.t
Mouse-1.04/t/001_mouse/024-isa.t
Mouse-1.04/t/001_mouse/025-more-isa.t
Mouse-1.04/t/001_mouse/026-auto-deref.t
Mouse-1.04/t/001_mouse/027-modifiers.t
Mouse-1.04/t/001_mouse/028-subclass-attr.t
Mouse-1.04/t/001_mouse/029-new.t
Mouse-1.04/t/001_mouse/030-has-plus.t
Mouse-1.04/t/001_mouse/031-clone.t
Mouse-1.04/t/001_mouse/032-buildargs.t
Mouse-1.04/t/001_mouse/033-requires.t
Mouse-1.04/t/001_mouse/034-apply_all_roles.t
Mouse-1.04/t/001_mouse/035-apply-roles-to-roles.t
Mouse-1.04/t/001_mouse/036-with-method-alias.t
Mouse-1.04/t/001_mouse/037-dont-load-test-exception.t
Mouse-1.04/t/001_mouse/039-subtype.t
Mouse-1.04/t/001_mouse/040-existing-subclass.t
Mouse-1.04/t/001_mouse/041-enum.t
Mouse-1.04/t/001_mouse/042-override.t
Mouse-1.04/t/001_mouse/043-parameterized-type.t
Mouse-1.04/t/001_mouse/044-attribute-metaclass.t
Mouse-1.04/t/001_mouse/045-import-into_level.t
Mouse-1.04/t/001_mouse/046-meta-add_attribute.t
Mouse-1.04/t/001_mouse/047-attribute-metaclass-role.t
Mouse-1.04/t/001_mouse/049-coercion-application-order.t
Mouse-1.04/t/001_mouse/050-inherited-immutable-constructor-bug.t
Mouse-1.04/t/001_mouse/051_throw_error.t
Mouse-1.04/t/001_mouse/052-undefined-type-in-union.t
Mouse-1.04/t/001_mouse/053-extends-meta.t
Mouse-1.04/t/001_mouse/054-anon-leak.t
Mouse-1.04/t/001_mouse/055-exporter.t
Mouse-1.04/t/001_mouse/056-role-combine.t
Mouse-1.04/t/001_mouse/057_subtype_without_where.t
Mouse-1.04/t/001_mouse/058-accessor-leaks.t
Mouse-1.04/t/001_mouse/059-weak-with-default.t
Mouse-1.04/t/001_mouse/060-threads.t
Mouse-1.04/t/001_mouse/061-metaclass-compatibility.t
Mouse-1.04/t/001_mouse/062-duck_type.t
Mouse-1.04/t/001_mouse/063-meta-of-metaclasses.t
Mouse-1.04/t/001_mouse/064-class-c3.t
Mouse-1.04/t/001_mouse/065-attr-mop.t
Mouse-1.04/t/001_mouse/066-magic.t
Mouse-1.04/t/001_mouse/067-traits.t
Mouse-1.04/t/001_mouse/068-strict-constructor.t
Mouse-1.04/t/001_mouse/069-add-modifier.t
Mouse-1.04/t/001_mouse/070-inherit-role-attr.t
Mouse-1.04/t/001_mouse/071_tc_dualvar.t
Mouse-1.04/t/001_mouse/072_tc_extra_args.t
Mouse-1.04/t/001_mouse/073_errsv.t
Mouse-1.04/t/001_mouse/074_default_errsv.t
Mouse-1.04/t/001_mouse/100-meta-class.t
Mouse-1.04/t/001_mouse/101-meta-attribute.t
Mouse-1.04/t/001_mouse/102-attr-default-with-instance.t
Mouse-1.04/t/001_mouse/301-bugs-non-mouse.t
Mouse-1.04/t/001_mouse/400-define-role.t
Mouse-1.04/t/001_mouse/401-meta-role.t
Mouse-1.04/t/001_mouse/402-attribute-application.t
Mouse-1.04/t/001_mouse/403-method-modifiers.t
Mouse-1.04/t/001_mouse/404-role-overrides.t
Mouse-1.04/t/001_mouse/600-tiny-tiny.t
Mouse-1.04/t/001_mouse/601-tiny-mouse.t
Mouse-1.04/t/001_mouse/602-mouse-tiny.t
Mouse-1.04/t/001_mouse/603-mouse-pureperl.t
Mouse-1.04/t/001_mouse/801-coerce.t
Mouse-1.04/t/001_mouse/802-coerce_multi_class.t
Mouse-1.04/t/001_mouse/804-immutable-demolish.t
Mouse-1.04/t/001_mouse/805-class_type.t
Mouse-1.04/t/001_mouse/806-role_type.t
Mouse-1.04/t/001_mouse/807-multi-roles.t
Mouse-1.04/t/001_mouse/808-create_class.t
Mouse-1.04/t/001_mouse/809-overwrite-builtin-subtype.t
Mouse-1.04/t/001_mouse/810-isa-or.t
Mouse-1.04/t/001_mouse/811-util-linear-isa.t
Mouse-1.04/t/001_mouse/812-role-compatibility.t
Mouse-1.04/t/001_mouse/813-compatibility-get_method_list.t
Mouse-1.04/t/001_mouse/814-subtype-as.t
Mouse-1.04/t/010_basics/
Mouse-1.04/t/010_basics/001_basic_class_setup.t
Mouse-1.04/t/010_basics/002_require_superclasses.t
Mouse-1.04/t/010_basics/003_super_and_override.t
Mouse-1.04/t/010_basics/004_inner_and_augment.t
Mouse-1.04/t/010_basics/005_override_augment_inner_super.t
Mouse-1.04/t/010_basics/006_override_and_foreign_classes.t
Mouse-1.04/t/010_basics/007_always_strict_warnings.t
Mouse-1.04/t/010_basics/008_wrapped_method_cxt_propagation.t
Mouse-1.04/t/010_basics/009_import_unimport.t
Mouse-1.04/t/010_basics/010_method_modifier_with_regexp.t
Mouse-1.04/t/010_basics/011_moose_respects_type_constraints.t
Mouse-1.04/t/010_basics/013_create.t
Mouse-1.04/t/010_basics/014_create_anon.t
Mouse-1.04/t/010_basics/015_buildargs.t
Mouse-1.04/t/010_basics/017_error_handling.t
Mouse-1.04/t/010_basics/018_methods.t
Mouse-1.04/t/010_basics/019-destruction.t
Mouse-1.04/t/010_basics/020-global-destruction-helper.pl
Mouse-1.04/t/010_basics/020-global-destruction.t
Mouse-1.04/t/020_attributes/
Mouse-1.04/t/020_attributes/001_attribute_reader_generation.t
Mouse-1.04/t/020_attributes/002_attribute_writer_generation.t
Mouse-1.04/t/020_attributes/003_attribute_accessor_generation.t
Mouse-1.04/t/020_attributes/004_attribute_triggers.t
Mouse-1.04/t/020_attributes/005_attribute_does.t
Mouse-1.04/t/020_attributes/006_attribute_required.t
Mouse-1.04/t/020_attributes/007_attribute_custom_metaclass.t
Mouse-1.04/t/020_attributes/008_attribute_type_unions.t
Mouse-1.04/t/020_attributes/009_attribute_inherited_slot_specs.t
Mouse-1.04/t/020_attributes/011_more_attr_delegation.t
Mouse-1.04/t/020_attributes/012_misc_attribute_tests.t
Mouse-1.04/t/020_attributes/013_attr_dereference_test.t
Mouse-1.04/t/020_attributes/014_misc_attribute_coerce_lazy.t
Mouse-1.04/t/020_attributes/015_attribute_traits.t
Mouse-1.04/t/020_attributes/016_attribute_traits_registered.t
Mouse-1.04/t/020_attributes/017_attribute_traits_n_meta.t
Mouse-1.04/t/020_attributes/018_no_init_arg.t
Mouse-1.04/t/020_attributes/020_trigger_and_coerce.t
Mouse-1.04/t/020_attributes/022_illegal_options_for_inheritance.t
Mouse-1.04/t/020_attributes/024_attribute_traits_parameterized.t
Mouse-1.04/t/020_attributes/025_chained_coercion.t
Mouse-1.04/t/020_attributes/026_attribute_without_any_methods.t
Mouse-1.04/t/020_attributes/027_accessor_override_method.t
Mouse-1.04/t/020_attributes/029_accessor_context.t
Mouse-1.04/t/020_attributes/030_non_alpha_attr_names.t
Mouse-1.04/t/020_attributes/031_delegation_and_modifiers.t
Mouse-1.04/t/020_attributes/032_delegation_arg_aliasing.t
Mouse-1.04/t/020_attributes/034_numeric_defaults.t
Mouse-1.04/t/020_attributes/035_default_undef.t
Mouse-1.04/t/020_attributes/036_clone_weak.t
Mouse-1.04/t/030_roles/
Mouse-1.04/t/030_roles/001_meta_role.t
Mouse-1.04/t/030_roles/002_role.t
Mouse-1.04/t/030_roles/003_apply_role.t
Mouse-1.04/t/030_roles/004_role_composition_errors.t
Mouse-1.04/t/030_roles/005_role_conflict_detection.t
Mouse-1.04/t/030_roles/008_role_conflict_edge_cases.t
Mouse-1.04/t/030_roles/009_more_role_edge_cases.t
Mouse-1.04/t/030_roles/010_run_time_role_composition.t
Mouse-1.04/t/030_roles/013_method_aliasing_in_composition.t
Mouse-1.04/t/030_roles/014_more_alias_and_exclude.t
Mouse-1.04/t/030_roles/015_runtime_roles_and_attrs.t
Mouse-1.04/t/030_roles/016_runtime_roles_and_nonmoose.t
Mouse-1.04/t/030_roles/017_extending_role_attrs.t
Mouse-1.04/t/030_roles/018_runtime_roles_w_params.t
Mouse-1.04/t/030_roles/019_build.t
Mouse-1.04/t/030_roles/020_role_composite.t
Mouse-1.04/t/030_roles/031_roles_applied_in_create.t
Mouse-1.04/t/030_roles/033_role_exclusion_and_alias_bug.t
Mouse-1.04/t/030_roles/034_create_role.t
Mouse-1.04/t/030_roles/035_anonymous_roles.t
Mouse-1.04/t/030_roles/036_free_anonymous_roles.t
Mouse-1.04/t/030_roles/037_create_role_subclass.t
Mouse-1.04/t/030_roles/041_empty_method_modifiers_meta_bug.t
Mouse-1.04/t/030_roles/042_compose_overloading.t
Mouse-1.04/t/040_type_constraints/
Mouse-1.04/t/040_type_constraints/002_util_type_constraints_export.t
Mouse-1.04/t/040_type_constraints/003_util_std_type_constraints.t
Mouse-1.04/t/040_type_constraints/004_util_find_type_constraint.t
Mouse-1.04/t/040_type_constraints/005_util_type_coercion.t
Mouse-1.04/t/040_type_constraints/006_util_type_reloading.t
Mouse-1.04/t/040_type_constraints/007_util_more_type_coercion.t
Mouse-1.04/t/040_type_constraints/009_union_types_and_coercions.t
Mouse-1.04/t/040_type_constraints/010_misc_type_tests.t
Mouse-1.04/t/040_type_constraints/011_container_type_constraint.t
Mouse-1.04/t/040_type_constraints/015_enum.t
Mouse-1.04/t/040_type_constraints/016_subtyping_parameterized_types.t
Mouse-1.04/t/040_type_constraints/017_subtyping_union_types.t
Mouse-1.04/t/040_type_constraints/018_custom_parameterized_types.t
Mouse-1.04/t/040_type_constraints/021_maybe_type_constraint.t
Mouse-1.04/t/040_type_constraints/022_custom_type_errors.t
Mouse-1.04/t/040_type_constraints/023_types_and_undef.t
Mouse-1.04/t/040_type_constraints/025_type_coersion_on_lazy_attributes.t
Mouse-1.04/t/040_type_constraints/027_parameterize_from.t
Mouse-1.04/t/040_type_constraints/029_define_type_twice_throws.t
Mouse-1.04/t/040_type_constraints/031_subtype_auto_vivify_parent.t
Mouse-1.04/t/040_type_constraints/032_throw_error.t
Mouse-1.04/t/040_type_constraints/034_duck_types.t
Mouse-1.04/t/050_metaclasses/
Mouse-1.04/t/050_metaclasses/001_custom_attr_meta_with_roles.t
Mouse-1.04/t/050_metaclasses/002_custom_attr_meta_as_role.t
Mouse-1.04/t/050_metaclasses/004_moose_for_meta.t
Mouse-1.04/t/050_metaclasses/011_init_meta.t
Mouse-1.04/t/050_metaclasses/013_metaclass_traits.t
Mouse-1.04/t/050_metaclasses/017_use_base_of_moose.t
Mouse-1.04/t/050_metaclasses/020_metaclass_parameterized_traits.t
Mouse-1.04/t/050_metaclasses/021_export_with_prototype.t
Mouse-1.04/t/050_metaclasses/041_mnmcim.t
Mouse-1.04/t/050_metaclasses/041_moose_nonmoose_chain_init_meta.t
Mouse-1.04/t/050_metaclasses/051_metarole_on_anon.t
Mouse-1.04/t/050_metaclasses/052_new_object_BUILD.t
Mouse-1.04/t/050_metaclasses/053_immutable_metaclass_compat_bug.t
Mouse-1.04/t/050_metaclasses/054_metaclass_compat_no_fixing_bug.t
Mouse-1.04/t/100_bugs/
Mouse-1.04/t/100_bugs/001_subtype_quote_bug.t
Mouse-1.04/t/100_bugs/002_subtype_conflict_bug.t
Mouse-1.04/t/100_bugs/003_Moose_Object_error.t
Mouse-1.04/t/100_bugs/003_Mouse_Object_error.t
Mouse-1.04/t/100_bugs/004_subclass_use_base_bug.t
Mouse-1.04/t/100_bugs/005_inline_reader_bug.t
Mouse-1.04/t/100_bugs/007_reader_precedence_bug.t
Mouse-1.04/t/100_bugs/009_augment_recursion_bug.t
Mouse-1.04/t/100_bugs/010_immutable_n_default_x2.t
Mouse-1.04/t/100_bugs/011_DEMOLISH_eats_exceptions.t
Mouse-1.04/t/100_bugs/012_DEMOLISH_eats_mini.t
Mouse-1.04/t/100_bugs/013_lazybuild_required_undef.t
Mouse-1.04/t/100_bugs/016_inheriting_from_roles.t
Mouse-1.04/t/100_bugs/017_type_constraint_messages.t
Mouse-1.04/t/100_bugs/019_moose_octal_defaults.t
Mouse-1.04/t/100_bugs/020_super_recursion.t
Mouse-1.04/t/100_bugs/022_role_caller.t
Mouse-1.04/t/100_bugs/025_universal_methods_wrappable.t
Mouse-1.04/t/100_bugs/026_create_anon_recursion.t
Mouse-1.04/t/100_bugs/027_constructor_object_overload.t
Mouse-1.04/t/100_bugs/029_instance_application_role_args.t
Mouse-1.04/t/100_bugs/030_coerce_without_coercion.t
Mouse-1.04/t/200_examples/
Mouse-1.04/t/200_examples/001_example.t
Mouse-1.04/t/200_examples/003_example.t
Mouse-1.04/t/200_examples/004_example_w_DCS.t
Mouse-1.04/t/200_examples/005_example_w_TestDeep.t
Mouse-1.04/t/200_examples/0071_Child_Parent_attr_inherit_imm.t
Mouse-1.04/t/200_examples/007_Child_Parent_attr_inherit.t
Mouse-1.04/t/200_examples/008_record_set_iterator.t
Mouse-1.04/t/300_immutable/
Mouse-1.04/t/300_immutable/001_immutable_moose.t
Mouse-1.04/t/300_immutable/002_apply_roles_to_immutable.t
Mouse-1.04/t/300_immutable/003_immutable_meta_class.t
Mouse-1.04/t/300_immutable/004_inlined_constructors_n_types.t
Mouse-1.04/t/300_immutable/005_multiple_demolish_inline.t
Mouse-1.04/t/300_immutable/007_immutable_trigger_from_constructor.t
Mouse-1.04/t/300_immutable/008_immutable_constructor_error.t
Mouse-1.04/t/300_immutable/009_buildargs.t
Mouse-1.04/t/300_immutable/012_default_values.t
Mouse-1.04/t/300_immutable/013_immutable_roundtrip.t
Mouse-1.04/t/300_immutable/014_immutable_metaclass_with_traits.t
Mouse-1.04/t/300_immutable/016_inline_fallbacks.t
Mouse-1.04/t/300_immutable/101-immutable-default.t
Mouse-1.04/t/400_mouse_util/
Mouse-1.04/t/400_mouse_util/001_moose_util.t
Mouse-1.04/t/400_mouse_util/002_moose_util_does_role.t
Mouse-1.04/t/400_mouse_util/007_apply_roles.t
Mouse-1.04/t/500_test_moose/
Mouse-1.04/t/500_test_moose/001_test_moose.t
Mouse-1.04/t/500_test_moose/002_test_moose_does_ok.t
Mouse-1.04/t/500_test_moose/003_test_moose_has_attribute_ok.t
Mouse-1.04/t/500_test_moose/004_test_moose_meta_ok.t
Mouse-1.04/t/500_test_moose/005_with_immutable.t
Mouse-1.04/t/800_with_external/
Mouse-1.04/t/800_with_external/001-pod-coverage-moose.t
Mouse-1.04/t/800_with_external/002-externals.t
Mouse-1.04/t/800_with_external/lib/
Mouse-1.04/t/800_with_external/lib/Foo.pm
Mouse-1.04/t/810_with_moose/
Mouse-1.04/t/810_with_moose/201-squirrel.t
Mouse-1.04/t/810_with_moose/202-squirrel-role.t
Mouse-1.04/t/810_with_moose/500_moose_extends_mouse.t
Mouse-1.04/t/810_with_moose/501_moose_coerce_mouse.t
Mouse-1.04/t/900_mouse_bugs/
Mouse-1.04/t/900_mouse_bugs/001_immutable_types.t
Mouse-1.04/t/900_mouse_bugs/002_does_role_should_search_parent.t
Mouse-1.04/t/900_mouse_bugs/003_RT50421.t
Mouse-1.04/t/900_mouse_bugs/004_RT54203.t
Mouse-1.04/t/900_mouse_bugs/005_large_int.t
Mouse-1.04/t/900_mouse_bugs/006_RT69939.t
Mouse-1.04/t/900_mouse_bugs/007_RT56523.t
Mouse-1.04/t/900_mouse_bugs/008_RT56837.t
Mouse-1.04/t/900_mouse_bugs/009_RT57144.t
Mouse-1.04/t/900_mouse_bugs/010_use_mouse_before_tb2.t
Mouse-1.04/t/900_mouse_bugs/011_RT61852.t
Mouse-1.04/t/900_mouse_bugs/012_RT61906.t
Mouse-1.04/t/900_mouse_bugs/013_RT73592_tied_.t
Mouse-1.04/t/900_mouse_bugs/014_autoload.t
Mouse-1.04/t/900_mouse_bugs/RT75093.t
Mouse-1.04/t/990_deprecated/
Mouse-1.04/t/990_deprecated/001-export_to_level.t
Mouse-1.04/t/lib/
Mouse-1.04/t/lib/Bar.pm
Mouse-1.04/t/lib/Bar7/
Mouse-1.04/t/lib/Bar7/Meta/
Mouse-1.04/t/lib/Bar7/Meta/Trait.pm
Mouse-1.04/t/lib/Bar7/Meta/Trait2.pm
Mouse-1.04/t/lib/BaseClass.pm
Mouse-1.04/t/lib/ClassType_Foo.pm
Mouse-1.04/t/lib/Foo.pm
Mouse-1.04/t/lib/MooseCompat.pm
Mouse-1.04/t/lib/Mouse/
Mouse-1.04/t/lib/Mouse/Meta/
Mouse-1.04/t/lib/Mouse/Meta/Attribute/
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/Bar.pm
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/Foo.pm
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/Trait/
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/Trait/Bar.pm
Mouse-1.04/t/lib/Mouse/Meta/Attribute/Custom/Trait/Foo.pm
Mouse-1.04/t/lib/MyExporter.pm
Mouse-1.04/t/lib/MyMetaclassRole.pm
Mouse-1.04/t/lib/MyMouseA.pm
Mouse-1.04/t/lib/MyMouseB.pm
Mouse-1.04/t/lib/MyMouseObject.pm
Mouse-1.04/t/lib/Role/
Mouse-1.04/t/lib/Role/Child.pm
Mouse-1.04/t/lib/Role/Interface.pm
Mouse-1.04/t/lib/Role/Parent.pm
Mouse-1.04/t/lib/SyntaxError.pm
Mouse-1.04/t/lib/Unsweetened.pm
Mouse-1.04/tool/
Mouse-1.04/tool/create-moose-compatibility-tests.pl
Mouse-1.04/tool/generate-mouse-tiny.pl
Mouse-1.04/xs-src/
Mouse-1.04/xs-src/Mouse.xs
Mouse-1.04/xs-src/MouseAccessor.xs
Mouse-1.04/xs-src/MouseAttribute.xs
Mouse-1.04/xs-src/MouseTypeConstraints.xs
Mouse-1.04/xs-src/MouseUtil.xs
Mouse-1.04/xt/
Mouse-1.04/xt/001-pod.t
Mouse-1.04/xt/002-pod_spell.t
Mouse-1.04/xt/003-pod_coverage.t
Mouse-1.04/xt/004-fs_portability.t
Mouse-1.04/xt/005-dbsub.t
Mouse-1.04/xt/006-perlcritic.t
CPAN.pm: Going to build G/GF/GFUJI/Mouse-1.04.tar.gz
>>> /Users/fly1600/ap1600/bin/perl-dynamic Makefile.PL
Mouse configured with XS.
Writing ppport.h
Generate Mouse::Tiny ...
done.
Checking if your kit is complete...
Looks good
Writing Makefile for Mouse
Writing MYMETA.yml and MYMETA.json
>>> make
cp lib/Mouse/Tiny.pod blib/lib/Mouse/Tiny.pod
cp lib/Mouse/TypeRegistry.pm blib/lib/Mouse/TypeRegistry.pm
cp lib/Mouse/Meta/Role/Composite.pm blib/lib/Mouse/Meta/Role/Composite.pm
cp lib/Mouse/Meta/Role/Method.pm blib/lib/Mouse/Meta/Role/Method.pm
cp lib/Mouse/Meta/Method/Delegation.pm blib/lib/Mouse/Meta/Method/Delegation.pm
cp lib/Mouse/XS.pod blib/lib/Mouse/XS.pod
cp lib/Mouse/Meta/Method/Destructor.pm blib/lib/Mouse/Meta/Method/Destructor.pm
cp lib/Mouse.pm blib/lib/Mouse.pm
cp lib/Mouse/Meta/Class.pm blib/lib/Mouse/Meta/Class.pm
cp lib/Squirrel/Role.pm blib/lib/Squirrel/Role.pm
cp lib/Mouse/Meta/Method.pm blib/lib/Mouse/Meta/Method.pm
cp lib/Test/Mouse.pm blib/lib/Test/Mouse.pm
cp lib/Mouse/Tiny.pm blib/lib/Mouse/Tiny.pm
cp lib/Mouse/Meta/Attribute.pm blib/lib/Mouse/Meta/Attribute.pm
cp lib/Mouse/Meta/TypeConstraint.pm blib/lib/Mouse/Meta/TypeConstraint.pm
cp lib/Mouse/Meta/Method/Accessor.pm blib/lib/Mouse/Meta/Method/Accessor.pm
cp lib/Mouse/Meta/Role.pm blib/lib/Mouse/Meta/Role.pm
cp lib/Mouse/Util/TypeConstraints.pm blib/lib/Mouse/Util/TypeConstraints.pm
cp lib/Mouse/Spec.pm blib/lib/Mouse/Spec.pm
cp lib/Mouse/Role.pm blib/lib/Mouse/Role.pm
cp lib/Squirrel.pm blib/lib/Squirrel.pm
cp lib/Mouse/Util/MetaRole.pm blib/lib/Mouse/Util/MetaRole.pm
cp lib/Mouse/Meta/Module.pm blib/lib/Mouse/Meta/Module.pm
cp lib/Mouse/Util.pm blib/lib/Mouse/Util.pm
cp lib/Mouse/Meta/Role/Application.pm blib/lib/Mouse/Meta/Role/Application.pm
cp lib/Mouse/Meta/Method/Constructor.pm blib/lib/Mouse/Meta/Method/Constructor.pm
cp lib/Mouse/Exporter.pm blib/lib/Mouse/Exporter.pm
cp lib/Mouse/PurePerl.pm blib/lib/Mouse/PurePerl.pm
cp lib/ouse.pm blib/lib/ouse.pm
cp lib/Mouse/Object.pm blib/lib/Mouse/Object.pm
/Users/fly1600/ap1600/bin/perl-dynamic "-Iinc" /Users/fly1600/var/megalib/ExtUtils/xsubpp -typemap /Users/fly1600/ap1600/lib/ExtUtils/typemap xs-src/Mouse.xs > xs-src/Mouse.xsc && mv xs-src/Mouse.xsc xs-src/Mouse.c
gcc -c "-I." "-I." -fno-common -DPERL_DARWIN -no-cpp-precomp -arch i386 -arch x86_64 -nostdinc -B/Developer/SDKs/MacOSX10.6.sdk/usr/include/gcc -B/Developer/SDKs/MacOSX10.6.sdk/usr/lib/gcc -isystem/Developer/SDKs/MacOSX10.6.sdk/usr/include -F/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.6 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-merge-constants -fno-strict-aliasing -pipe -fstack-protector -Wall -Wextra -Wdeclaration-after-statement -Wc++-compat -O3 -DVERSION=\"1.04\" -DXS_VERSION=\"1.04\" -o xs-src/Mouse.o "-I/Users/fly1600/ap1600/lib/CORE" -DUSE_PPPORT xs-src/Mouse.c
/Users/fly1600/ap1600/bin/perl-dynamic "-Iinc" /Users/fly1600/var/megalib/ExtUtils/xsubpp -typemap /Users/fly1600/ap1600/lib/ExtUtils/typemap xs-src/MouseAccessor.xs > xs-src/MouseAccessor.xsc && mv xs-src/MouseAccessor.xsc xs-src/MouseAccessor.c
gcc -c "-I." "-I." -fno-common -DPERL_DARWIN -no-cpp-precomp -arch i386 -arch x86_64 -nostdinc -B/Developer/SDKs/MacOSX10.6.sdk/usr/include/gcc -B/Developer/SDKs/MacOSX10.6.sdk/usr/lib/gcc -isystem/Developer/SDKs/MacOSX10.6.sdk/usr/include -F/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.6 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-merge-constants -fno-strict-aliasing -pipe -fstack-protector -Wall -Wextra -Wdeclaration-after-statement -Wc++-compat -O3 -DVERSION=\"1.04\" -DXS_VERSION=\"1.04\" -o xs-src/MouseAccessor.o "-I/Users/fly1600/ap1600/lib/CORE" -DUSE_PPPORT xs-src/MouseAccessor.c
/Users/fly1600/ap1600/bin/perl-dynamic "-Iinc" /Users/fly1600/var/megalib/ExtUtils/xsubpp -typemap /Users/fly1600/ap1600/lib/ExtUtils/typemap xs-src/MouseAttribute.xs > xs-src/MouseAttribute.xsc && mv xs-src/MouseAttribute.xsc xs-src/MouseAttribute.c
gcc -c "-I." "-I." -fno-common -DPERL_DARWIN -no-cpp-precomp -arch i386 -arch x86_64 -nostdinc -B/Developer/SDKs/MacOSX10.6.sdk/usr/include/gcc -B/Developer/SDKs/MacOSX10.6.sdk/usr/lib/gcc -isystem/Developer/SDKs/MacOSX10.6.sdk/usr/include -F/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.6 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-merge-constants -fno-strict-aliasing -pipe -fstack-protector -Wall -Wextra -Wdeclaration-after-statement -Wc++-compat -O3 -DVERSION=\"1.04\" -DXS_VERSION=\"1.04\" -o xs-src/MouseAttribute.o "-I/Users/fly1600/ap1600/lib/CORE" -DUSE_PPPORT xs-src/MouseAttribute.c
/Users/fly1600/ap1600/bin/perl-dynamic "-Iinc" /Users/fly1600/var/megalib/ExtUtils/xsubpp -typemap /Users/fly1600/ap1600/lib/ExtUtils/typemap xs-src/MouseTypeConstraints.xs > xs-src/MouseTypeConstraints.xsc && mv xs-src/MouseTypeConstraints.xsc xs-src/MouseTypeConstraints.c
gcc -c "-I." "-I." -fno-common -DPERL_DARWIN -no-cpp-precomp -arch i386 -arch x86_64 -nostdinc -B/Developer/SDKs/MacOSX10.6.sdk/usr/include/gcc -B/Developer/SDKs/MacOSX10.6.sdk/usr/lib/gcc -isystem/Developer/SDKs/MacOSX10.6.sdk/usr/include -F/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.6 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-merge-constants -fno-strict-aliasing -pipe -fstack-protector -Wall -Wextra -Wdeclaration-after-statement -Wc++-compat -O3 -DVERSION=\"1.04\" -DXS_VERSION=\"1.04\" -o xs-src/MouseTypeConstraints.o "-I/Users/fly1600/ap1600/lib/CORE" -DUSE_PPPORT xs-src/MouseTypeConstraints.c
/Users/fly1600/ap1600/bin/perl-dynamic "-Iinc" /Users/fly1600/var/megalib/ExtUtils/xsubpp -typemap /Users/fly1600/ap1600/lib/ExtUtils/typemap xs-src/MouseUtil.xs > xs-src/MouseUtil.xsc && mv xs-src/MouseUtil.xsc xs-src/MouseUtil.c
gcc -c "-I." "-I." -fno-common -DPERL_DARWIN -no-cpp-precomp -arch i386 -arch x86_64 -nostdinc -B/Developer/SDKs/MacOSX10.6.sdk/usr/include/gcc -B/Developer/SDKs/MacOSX10.6.sdk/usr/lib/gcc -isystem/Developer/SDKs/MacOSX10.6.sdk/usr/include -F/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.6 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-merge-constants -fno-strict-aliasing -pipe -fstack-protector -Wall -Wextra -Wdeclaration-after-statement -Wc++-compat -O3 -DVERSION=\"1.04\" -DXS_VERSION=\"1.04\" -o xs-src/MouseUtil.o "-I/Users/fly1600/ap1600/lib/CORE" -DUSE_PPPORT xs-src/MouseUtil.c
Running Mkbootstrap for Mouse ()
chmod 644 Mouse.bs
rm -f blib/arch/auto/Mouse/Mouse.bundle
cc -mmacosx-version-min=10.5 -bundle -undefined dynamic_lookup -Wl,-search_paths_first -arch i386 -arch x86_64 -Wl,-syslibroot,/Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6 -fstack-protector xs-src/Mouse.o xs-src/MouseAccessor.o xs-src/MouseAttribute.o xs-src/MouseTypeConstraints.o xs-src/MouseUtil.o -o blib/arch/auto/Mouse/Mouse.bundle \
\
chmod 755 blib/arch/auto/Mouse/Mouse.bundle
cp Mouse.bs blib/arch/auto/Mouse/Mouse.bs
chmod 644 blib/arch/auto/Mouse/Mouse.bs
Manifying blib/man3/Mouse::TypeRegistry.3
Manifying blib/man3/Mouse::Tiny.3
Manifying blib/man3/Mouse::Meta::Role::Method.3
Manifying blib/man3/Mouse::Meta::Role::Composite.3
Manifying blib/man3/Mouse::Meta::Method::Delegation.3
Manifying blib/man3/Mouse::Meta::Method::Destructor.3
Manifying blib/man3/Mouse::XS.3
Manifying blib/man3/Mouse.3
Manifying blib/man3/Mouse::Meta::Class.3
Manifying blib/man3/Squirrel::Role.3
Manifying blib/man3/Test::Mouse.3
Manifying blib/man3/Mouse::Meta::Method.3
Manifying blib/man3/Mouse::Meta::Method::Accessor.3
Manifying blib/man3/Mouse::Meta::TypeConstraint.3
Manifying blib/man3/Mouse::Meta::Attribute.3
Manifying blib/man3/Mouse::Meta::Role.3
Manifying blib/man3/Mouse::Util::TypeConstraints.3
Manifying blib/man3/Mouse::Util::MetaRole.3
Manifying blib/man3/Squirrel.3
Manifying blib/man3/Mouse::Role.3
Manifying blib/man3/Mouse::Spec.3
Manifying blib/man3/Mouse::Meta::Module.3
Manifying blib/man3/Mouse::Meta::Role::Application.3
Manifying blib/man3/Mouse::Util.3
Manifying blib/man3/Mouse::Meta::Method::Constructor.3
Manifying blib/man3/Mouse::PurePerl.3
Manifying blib/man3/Mouse::Exporter.3
Manifying blib/man3/Mouse::Object.3
Manifying blib/man3/ouse.3
GFUJI/Mouse-1.04.tar.gz
make -- OK
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 /Users/fly1600/ap1600/bin/perl-dynamic "-MExtUtils::Command::MM" "-e" "test_harness(1, 'inc', 'blib/lib', 'blib/arch'); " t/*.t t/*/*.t
# Testing Mouse/1.04 (XS)
# Soft dependency versions:
# Class::MOP: 2.0604
# Moose: 2.0604
t/000-load.t ...................................................
1..2
ok 1 - require Mouse;
ok 2 - require Mouse::Role;
ok
t/000_recipes/002_schwartz_tutorial.t ..........................
1..5
ok 1
ok 2
ok 3
ok 4
ok 5
ok
t/000_recipes/basics-recipe10.t ................................
1..10
ok 1 - gene combination blue,blue,blue,blue produces blue eye color
ok 2 - gene combination blue,blue,green,blue produces green eye color
ok 3 - gene combination blue,blue,blue,green produces green eye color
ok 4 - gene combination blue,blue,green,green produces green eye color
ok 5 - gene combination brown,blue,blue,blue produces brown eye color
ok 6 - gene combination brown,brown,green,green produces brown eye color
ok 7 - gene combination blue,brown,green,blue produces brown eye color
ok 8 - mother blue + father blue = child blue
ok 9 - mother blue + father brown = child brown
ok 10 - mother green + father green = child green
ok
t/000_recipes/moose_cookbook_basics_recipe1.t ..................
ok 1 - The object isa Point
ok 2 - The object isa Mouse::Object
ok 3 - ... got the right value for x
ok 4 - ... got the right value for y
ok 5 - ... got the right (changed) value for y
ok 6 - ... cannot assign a non-Int to y
ok 7 - ... must provide required attributes to new
ok 8 - ... got the right (cleared) value for x
ok 9 - ... got the right (cleared) value for y
ok 10 - ... can assign a 0 to x and y
ok 11 - ... cannot assign a non-Int to y
ok 12 - ... cannot assign a non-Int to x
ok 13 - The object isa Point3D
ok 14 - The object isa Point
ok 15 - The object isa Mouse::Object
ok 16 - ... got the right value for x
ok 17 - ... got the right value for y
ok 18 - ... got the right value for z
ok 19 - ... got the right (cleared) value for x
ok 20 - ... got the right (cleared) value for y
ok 21 - ... got the right (cleared) value for z
ok 22 - ... cannot assign a non-Int to y
ok 23 - ... cannot assign a non-Int to x
ok 24 - ... cannot assign a non-Int to z
ok 25 - ... z is a required attribute for Point3D
ok 26 - Point->can('meta')
ok 27 - The object isa Mouse::Meta::Class
ok 28 - Point3D->can('meta')
ok 29 - The object isa Mouse::Meta::Class
ok 30 - ... they are different metaclasses as well
ok 31 - ... Point got the automagic base class
ok 32 - ... we match the method list for Point
ok 33 - ... we match the attribute list for Point
ok 34 - ... Point has the method "meta"
ok 35 - ... Point has the method "x"
ok 36 - ... Point has the method "y"
ok 37 - ... Point has the method "clear"
ok 38 - ... Point has the attribute "x"
ok 39 - ... Attribute x has a type constraint
ok 40 - The object isa Mouse::Meta::TypeConstraint
ok 41 - ... Attribute x has an Int type constraint
ok 42 - ... Point has the attribute "y"
ok 43 - ... Attribute y has a type constraint
ok 44 - The object isa Mouse::Meta::TypeConstraint
ok 45 - ... Attribute y has an Int type constraint
ok 46 - ... Point3D gets the parent given to it
ok 47 - ... we match the method list for Point3D
ok 48 - ... we match the attribute list for Point3D
ok 49 - ... Point3D has the method "meta"
ok 50 - ... Point3D has the method "z"
ok 51 - ... Point3D has the method "clear"
ok 52 - ... Point3D has the attribute "z"
ok 53 - ... Attribute z has a type constraint
ok 54 - The object isa Mouse::Meta::TypeConstraint
ok 55 - ... Attribute z has an Int type constraint
1..55
ok
t/000_recipes/moose_cookbook_basics_recipe2.t ..................
ok 1 - The object isa BankAccount
ok 2 - ... got the right savings balance
ok 3 - ... withdrew from savings successfully
ok 4 - ... got the right savings balance after withdrawl
ok 5 - ... got the right savings balance after deposit
ok 6 - The object isa CheckingAccount
ok 7 - The object isa BankAccount
ok 8 - ... got the right overdraft account
ok 9 - ... got the right checkings balance
ok 10 - ... withdrew from checking successfully
ok 11 - ... got the right checkings balance after withdrawl
ok 12 - ... got the right savings balance after checking withdrawl (no overdraft)
ok 13 - ... withdrew from checking successfully
ok 14 - ... got the right checkings balance after withdrawl
ok 15 - ... got the right savings balance after overdraft withdrawl
ok 16 - The object isa CheckingAccount
ok 17 - The object isa BankAccount
ok 18 - ... no overdraft account
ok 19 - ... got the right checkings balance
ok 20 - ... withdrew from checking successfully
ok 21 - ... got the right checkings balance after withdrawl
ok 22 - ... withdrawl failed due to attempted overdraft
ok 23 - ... got the right checkings balance after withdrawl failure
1..23
ok
t/000_recipes/moose_cookbook_basics_recipe3.t ..................
ok 1 - The object isa BinaryTree
ok 2 - ... got the right node value
ok 3 - ... no left node yet
ok 4 - ... no right node yet
ok 5 - ... no parent for root node
ok 6 - The object isa BinaryTree
ok 7 - ... got the same node (and it is $left)
ok 8 - ... we have a left node now
ok 9 - ... lefts has a parent
ok 10 - ... lefts parent is the root
ok 11 - ... parent is a weakened ref
ok 12 - ... $left no left node yet
ok 13 - ... $left no right node yet
ok 14 - ... left has got no node value
ok 15 - ... assign to lefts node
ok 16 - ... left now has a node value
ok 17 - ... still no right node yet
ok 18 - ... right has got no node value
ok 19 - ... now we have a right node
ok 20 - The object isa BinaryTree
ok 21 - ... assign to rights node
ok 22 - ... left now has a node value
ok 23 - ... got the same node (and it is $right)
ok 24 - ... we have a right node now
ok 25 - ... rights has a parent
ok 26 - ... rights parent is the root
ok 27 - ... parent is a weakened ref
ok 28 - The object isa BinaryTree
ok 29 - ... left does have a parent
ok 30 - ... got a parent node (and it is $left)
ok 31 - ... we have a left node now
ok 32 - ... got a left node (and it is $left_left)
ok 33 - ... parent is a weakened ref
ok 34 - The object isa BinaryTree
ok 35 - ... assign to rights node
ok 36 - ... left does have a parent
ok 37 - ... got a parent node (and it is $left)
ok 38 - ... we have a left node now
ok 39 - ... got a left node (and it is $left_left)
ok 40 - ... parent is a weakened ref
ok 41 - ... cant assign a node which already has a parent
1..41
ok
t/000_recipes/moose_cookbook_basics_recipe4.t ..................
ok 1 - ... created the entire company successfully
ok 2 - The object isa Company
ok 3 - ... got the right name for the company
ok 4 - The object isa Address
ok 5 - ... got the right street address
ok 6 - ... got the right city
ok 7 - ... got the right state
ok 8 - ... got the zip code
ok 9 - ... got the right employee count
ok 10 - The object isa Employee
ok 11 - The object isa Person
ok 12 - ... got the right first name
ok 13 - ... got the right last name
ok 14 - ... no middle initial
ok 15 - ... got the right middle initial value
ok 16 - ... got the right full name
ok 17 - ... got the right title
ok 18 - ... got the right company
ok 19 - ... the company is a weak-ref
ok 20 - The object isa Address
ok 21 - ... got the right city
ok 22 - ... got the right state
ok 23 - The object isa Employee
ok 24 - The object isa Person
ok 25 - ... got the right first name
ok 26 - ... got the right last name
ok 27 - ... no middle initial
ok 28 - ... got the right middle initial value
ok 29 - ... got the right full name
ok 30 - ... got the right title
ok 31 - ... got the right company
ok 32 - ... the company is a weak-ref
ok 33 - The object isa Address
ok 34 - ... got the right city
ok 35 - ... got the right state
ok 36 - The object isa Employee
ok 37 - The object isa Person
ok 38 - ... got the right first name
ok 39 - ... got the right last name
ok 40 - ... got middle initial
ok 41 - ... got the right middle initial value
ok 42 - ... got the right full name
ok 43 - ... got the right title
ok 44 - ... got the right company
ok 45 - ... the company is a weak-ref
ok 46 - The object isa Address
ok 47 - ... got the right city
ok 48 - ... got the right state
ok 49 - The object isa Company
ok 50 - ... has the ii company
ok 51 - ... has the ii company
ok 52 - ... has the ii company
ok 53 - ... has the different company now
ok 54 - ... has the different company now
ok 55 - ... has the different company now
ok 56 - ... we die correctly with bad args
ok 57 - ... we die correctly with bad args
ok 58 - ... we die correctly with bad args
ok 59 - ... we live correctly with good args
ok 60 - ... we die correctly with bad args
ok 61 - ... we live correctly with good args
ok 62 - ... we die correctly without good args
ok 63 - ... we live correctly without good args
ok 64 - ... we die correctly with good args
ok 65 - ... we live correctly with good args
1..65
ok
t/000_recipes/moose_cookbook_basics_recipe5.t ..................
ok 1 - The object isa Request
ok 2 - The object isa HTTP::Headers
ok 3 - ... got no content type in the header
ok 4 - The object isa HTTP::Headers
ok 5 - ... created a new HTTP::Header object
ok 6 - ... got the right content type in the header
ok 7 - The object isa HTTP::Headers
ok 8 - ... created a new HTTP::Header object
ok 9 - ... got the right content type in the header
ok 10 - The object isa HTTP::Headers
ok 11 - ... created a new HTTP::Header object
ok 12 - ... got the right content type in the header
ok 13 - ... dies when it gets bad params
ok 14 - ... got nothing by default
ok 15 - ... set the protocol correctly
ok 16 - ... got nothing by default
ok 17 - ... the protocol died with bar params correctly
ok 18 - The object isa URI
ok 19 - The object isa URI
1..19
ok
t/000_recipes/moose_cookbook_basics_recipe6.t ..................
ok 1 - The object isa TPSReport
ok 2 - ... got the right TPS report
1..2
ok
t/000_recipes/moose_cookbook_extending_recipe3.t ...............
ok 1 - Foo isa MyApp::Base
ok 2 - Foo has a size method
ok 3 - got expected warning when calling Foo->new
ok 4 - $foo->size is 2
1..4
ok
t/000_recipes/moose_cookbook_meta_recipe2.t ....................
ok 1 - ... got the expected dump value
1..1
ok
t/000_recipes/moose_cookbook_meta_recipe3.t ....................
ok 1 - ... got the expected dump value
1..1
ok
t/000_recipes/moose_cookbook_roles_recipe1.t ...................
ok 1 - ... US::Currency does Comparable
ok 2 - ... US::Currency does Eq
ok 3 - ... US::Currency does Printable
ok 4 - The object isa US::Currency
ok 5 - UNIVERSAL::DOES for class
ok 6 - UNIVERSAL::DOES for role
ok 7 - US::Currency->can('amount')
ok 8 - ... got the right amount
ok 9 - US::Currency->can('to_string')
ok 10 - ... got the right stringified value
ok 11 - ... US::Currency does Comparable
ok 12 - ... US::Currency does Eq
ok 13 - ... US::Currency does Printable
ok 14 - The object isa US::Currency
ok 15 - US::Currency->can('amount')
ok 16 - ... got the right amount
ok 17 - US::Currency->can('to_string')
ok 18 - ... got the right stringified value
ok 19 - ... 100 gt 50
ok 20 - ... 100 ge 50
ok 21 - ... !100 lt 50
ok 22 - ... !100 le 50
ok 23 - ... !100 eq 50
ok 24 - ... 100 ne 50
ok 25 - ... !50 gt 100
ok 26 - ... !50 ge 100
ok 27 - ... 50 lt 100
ok 28 - ... 50 le 100
ok 29 - ... !50 eq 100
ok 30 - ... 50 ne 100
ok 31 - ... !50 gt 50
ok 32 - ... !50 ge 50
ok 33 - ... 50 lt 50
ok 34 - ... 50 le 50
ok 35 - ... 50 eq 50
ok 36 - ... !50 ne 50
ok 37 - The object isa Mouse::Meta::Role
ok 38 - ... Eq has_method not_equal_to
ok 39 - ... Eq requires_method not_equal_to
ok 40 - The object isa Mouse::Meta::Role
ok 41 - ... Comparable does Eq
ok 42 - ... Comparable has_method equal_to
ok 43 - ... Comparable has_method not_equal_to
ok 44 - ... Comparable has_method greater_than
ok 45 - ... Comparable has_method greater_than_or_equal_to
ok 46 - ... Comparable has_method less_than
ok 47 - ... Comparable has_method less_than_or_equal_to
ok 48 - ... Comparable requires_method compare
ok 49 - The object isa Mouse::Meta::Role
ok 50 - ... Printable requires_method to_string
ok 51 - The object isa Mouse::Meta::Class
ok 52 - ... US::Currency does Comparable
ok 53 - ... US::Currency does Eq
ok 54 - ... US::Currency does Printable
ok 55 - ... US::Currency has_method amount
ok 56 - ... US::Currency has_method equal_to
ok 57 - ... US::Currency has_method not_equal_to
ok 58 - ... US::Currency has_method compare
ok 59 - ... US::Currency has_method greater_than
ok 60 - ... US::Currency has_method greater_than_or_equal_to
ok 61 - ... US::Currency has_method less_than
ok 62 - ... US::Currency has_method less_than_or_equal_to
ok 63 - ... US::Currency has_method to_string
1..63
ok
t/000_recipes/moose_cookbook_roles_recipe2.t ...................
ok 1 - made anon class with Restartable::ButUnreliable role
ok 2 - Mouse::Meta::Class::__ANON__::1->can(...)
ok 3 - made anon class with Restartable::ButBroken role
ok 4 - ... start called explode
ok 5 - ... stop also called explode
1..5
ok
t/000_recipes/moose_cookbook_roles_recipe3.t ...................
ok 1 - lisa now does the manager role
ok 2 - homer was assigned a task by lisa
1..2
ok
t/001_mouse/001-strict-and-warnings.t ..........................
ok 1 - using Mouse turns on strictures
ok 2
ok 3 - using Mouse turns on warnings
ok 4 - using Mouse::Role turns on strictures
ok 5
ok 6 - using Mouse::Role turns on warnings
ok 7 - using Mouse::Exporter turns on strictures
ok 8
ok 9 - using Mouse::Exporter turns on warnings
1..9
ok
t/001_mouse/002-subclass.t .....................................
ok 1 - Class->can('new')
ok 2 - The object isa Class
ok 3 - The object isa Mouse::Object
ok 4 - Child->can('new')
ok 5 - The object isa Child
ok 6 - The object isa ParentClass
ok 7 - The object isa Mouse::Object
ok 8 - Mouse::TestClass->can(...)
ok 9 - The object isa ParentClass
ok 10 - The object isa Mouse::Object
1..10
ok
t/001_mouse/006-unimport.t .....................................
1..5
ok 1 - extends keyword is unimported
ok 2 - extends keyword is unimported
ok 3 - has keyword is unimported
ok 4 - extends method is NOT unimported
ok 5 - extends method is ours, not the extends keyword
ok
t/001_mouse/007-attributes.t ...................................
ok 1 - No accessor is injected if 'is' has no value
ok 2 - Class->can(...)
ok 3 - The object does has an attribute named x
ok 4 - The object does has an attribute named y
ok 5 - The object does has an attribute named z
ok 6 - No accessor is injected if 'is' has no value
ok 7 - Class->can(...)
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14 - Class->can(...)
ok 15
ok 16
ok 17
ok 18
ok 19
ok 20
ok 21 - Class->can('rw_attr2')
ok 22 - doesn't have attr2
ok 23
ok 24
ok 25
ok 26 - insertion_order
ok 27 - No accessor is injected if 'is' has no value
ok 28 - Class->can(...)
ok 29 - The object does has an attribute named x
ok 30 - The object does has an attribute named y
ok 31 - The object does has an attribute named z
ok 32 - No accessor is injected if 'is' has no value
ok 33 - Class->can(...)
ok 34
ok 35
ok 36
ok 37
ok 38
ok 39
ok 40 - Class->can(...)
ok 41
ok 42
ok 43
ok 44
ok 45
ok 46
ok 47 - Class->can('rw_attr2')
ok 48 - doesn't have attr2
ok 49
ok 50
ok 51
ok 52 - insertion_order
1..52
ok
t/001_mouse/008-default.t ......................................
1..36
ok 1 - attribute has a default of 10
ok 2 - attribute has a default of 20
ok 3 - attribute has no default
ok 4 - setting a new value
ok 5 - setting a new value
ok 6 - setting a new value
ok 7 - setting a new value does not trigger default
ok 8 - setting a new value does not trigger default
ok 9 - setting a new value does not trigger default
ok 10 - attribute was initialized to 50
ok 11 - attribute has a default of 20
ok 12 - attribute has no default
ok 13 - setting a new value
ok 14 - setting a new value
ok 15 - setting a new value
ok 16 - setting a new value does not trigger default
ok 17 - setting a new value does not trigger default
ok 18 - setting a new value does not trigger default
ok 19 - attribute has a default of 10
ok 20 - attribute has a default of 20
ok 21 - attribute has no default
ok 22 - setting a new value
ok 23 - setting a new value
ok 24 - setting a new value
ok 25 - setting a new value does not trigger default
ok 26 - setting a new value does not trigger default
ok 27 - setting a new value does not trigger default
ok 28 - attribute was initialized to 50
ok 29 - attribute has a default of 20
ok 30 - attribute has no default
ok 31 - setting a new value
ok 32 - setting a new value
ok 33 - setting a new value
ok 34 - setting a new value does not trigger default
ok 35 - setting a new value does not trigger default
ok 36 - setting a new value does not trigger default
ok
t/001_mouse/010-required.t .....................................
1..3
ok 1 - required attribute is required
ok 2 - foo is the only required but unfulfilled attribute
ok 3 - all attributes specified
ok
t/001_mouse/011-lazy.t .........................................
ok 1
ok 2 - lazy attribute not yet initialized
ok 3 - lazy coderef
ok 4 - lazy coderef invoked once
ok 5 - lazy coderef is cached
ok 6 - lazy coderef invoked once
ok 7 - lazy value
ok 8 - lazy coderef invoked once
ok 9 - set new value
ok 10 - lazy coderef invoked once
ok 11 - got new value
ok 12 - lazy coderef invoked once
ok 13
ok 14
ok 15 - lazy attribute not initialized when an argument is passed to the constructor
ok 16 - value from the constructor
ok 17 - value from the constructor
ok 18 - lazy coderef not invoked, we already have a value
1..18
ok
t/001_mouse/013-predicate-and-clearer.t ........................
ok 1 - Class->can('clear_lazy')
ok 2 - lazy attribute not yet initialized
ok 3 - no lazy value yet
ok 4 - lazy attribute not initialized by predicate
ok 5 - lazy attribute not initialized by clearer
ok 6 - no lazy value yet
ok 7 - lazy attribute not initialized by predicate
ok 8 - lazy value
ok 9 - lazy coderef invoked once
ok 10 - lazy value now
ok 11 - lazy coderef invoked once
ok 12 - lazy value is cached
ok 13 - lazy coderef invoked once
ok 14 - lazy coderef not invoked by clearer
ok 15 - no value now, clearer removed it
ok 16 - lazy attribute not initialized by predicate
ok 17 - new lazy value; previous was cleared
ok 18 - lazy coderef invoked twice
ok 19 - lazy attribute not initialized when an argument is passed to the constructor
ok 20 - lazy value now
ok 21 - lazy attribute not initialized when checked with predicate
ok 22 - value from the constructor
ok 23 - lazy coderef not invoked, we already have a value
ok 24 - lazy attribute not initialized by clearer
ok 25 - no more lazy value
ok 26 - lazy attribute not initialized by predicate
ok 27 - new lazy value
ok 28 - lazy value re-created
ok 29 - lazy attribute not yet initialized
ok 30 - no lazy value yet
ok 31 - lazy attribute not initialized by predicate
ok 32 - lazy attribute not initialized by clearer
ok 33 - no lazy value yet
ok 34 - lazy attribute not initialized by predicate
ok 35 - lazy value
ok 36 - lazy coderef invoked once
ok 37 - lazy value now
ok 38 - lazy coderef invoked once
ok 39 - lazy value is cached
ok 40 - lazy coderef invoked once
ok 41 - lazy coderef not invoked by clearer
ok 42 - no value now, clearer removed it
ok 43 - lazy attribute not initialized by predicate
ok 44 - new lazy value; previous was cleared
ok 45 - lazy coderef invoked twice
ok 46 - lazy attribute not initialized when an argument is passed to the constructor
ok 47 - lazy value now
ok 48 - lazy attribute not initialized when checked with predicate
ok 49 - value from the constructor
ok 50 - lazy coderef not invoked, we already have a value
ok 51 - lazy attribute not initialized by clearer
ok 52 - no more lazy value
ok 53 - lazy attribute not initialized by predicate
ok 54 - new lazy value
ok 55 - lazy value re-created
1..55
ok
t/001_mouse/014-build.t ........................................
ok 1 - no BUILD calls yet
ok 2 - immutable
ok 3
ok 4
ok 5 - BUILDALL
ok 6 - new_object calls BUILDALL
ok 7 - mutable
ok 8
ok 9
ok 10 - BUILDALL
ok 11 - new_object calls BUILDALL
1..11
ok
t/001_mouse/015-demolish.t .....................................
1..15
ok 1 - no DEMOLISH calls yet
ok 2 - immutable
ok 3 - no DEMOLISH calls yet
ok 4
ok 5 - no DEMOLISH calls yet
ok 6
ok 7 - DEMOLISHALL
ok 8 - DEMOLISHALL
ok 9 - mutable
ok 10 - no DEMOLISH calls yet
ok 11
ok 12 - no DEMOLISH calls yet
ok 13
ok 14 - DEMOLISHALL
ok 15 - DEMOLISHALL
ok
t/001_mouse/016-trigger.t ......................................
ok 1 - it's no longer an error to have trigger on a readonly attribute
ok 2
ok 3 - Class->can('attr')
ok 4 - trigger not called yet
ok 5 - default value
ok 6 - trigger not called on read
ok 7 - setting the value
ok 8 - trigger was called on read
ok 9 - correct arguments to trigger in the accessor
ok 10
ok 11 - triggers that clear the attr
ok 12 - call clearer in triggers
ok 13 - trigger was called on new with the attribute specified
ok 14 - correct arguments to trigger in the constructor
1..14
ok
t/001_mouse/017-default-reference.t ............................
1..9
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6 - default => sub { sub { 1 } } stuffs a coderef
ok 7 - default => sub sub strips off the first coderef
ok 8 - default of sub { reference } works
ok 9 - default method gets the $_[0] it needs to work
ok
t/001_mouse/018-multiattr-has.t ................................
1..3
ok 1 - Class->can(...)
ok 2 - three attributes created
ok 3 - correct triggers called
ok
t/001_mouse/019-handles.t ......................................
ok 1 - Class->can(...)
ok 2 - don't have a person yet
ok 3 - calling person_name instantiated person
ok 4 - we really do have a person
ok 5 - handles method
ok 6 - traditional lookup
ok 7 - handles method
ok 8 - traditional lookup
ok 9 - curring
ok 10 - we have a person from the constructor
ok 11 - handles method
ok 12 - traditional lookup
ok 13 - no age because we didn't use the default
ok 14 - no age because we didn't use the default
ok 15 - currying
ok 16 - we have a Shawn
ok 17 - name handle
ok 18 - age handle
ok 19 - delegations with method modifiers
ok 20 - me->name
ok 21 - me->age
ok 22 - correct handles layout for 'me'
ok 23 - correct handles layout for 'person'
ok 24
ok 25
ok 26
ok 27
1..27
ok
t/001_mouse/020-load-class.t ...................................
ok 1 - is_class_loaded with undef returns false
ok 2 - can't load the empty class
ok 3 - can't load a class name reference
ok 4 - Mouse is loaded
ok 5 - Test::More is loaded
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12 - Unsweetened->can('unsweetened')
ok 13 - this should not die!
ok 14
ok 15
1..15
ok
t/001_mouse/021-weak-ref.t .....................................
1..31
ok 1 - weak reference
ok 2 - we've got circularity
ok 3 - weak reference
ok 4 - we've got circularity
ok 5 - weak reference
ok 6 - we've got circularity
ok 7 - destroyed from the accessor
ok 8 - destroyed from the constructor
ok 9 - casuality of war
ok 10 - make_immutable made it immutable
ok 11 - weak reference
ok 12 - we've got circularity
ok 13 - weak reference
ok 14 - we've got circularity
ok 15 - weak reference
ok 16 - we've got circularity
ok 17 - destroyed from the accessor (after make_immutable)
ok 18 - destroyed from the constructor (after make_immutable)
ok 19 - casuality of war (after make_immutable)
ok 20 - type is not a weakref
ok 21 - self IS a weakref
ok 22 - value IS a weakref
ok 23 - weak_ref doesn't apply to non-refs
ok 24
ok 25
ok 26 - weakened the reference even with a nonref default
ok 27 - hashref collected immediately because refcount=0
ok 28 - attribute is turned into undef, not deleted from instance
ok 29 - hashref collected between set and get because refcount=0
ok 30 - attribute is turned into undef, not deleted from instance
ok 31 - hashref IS a weakref
ok
t/001_mouse/022-init-arg.t .....................................
1..20
ok 1 - accessor uses attribute name (mutable)
ok 2 - nothing in object->{init_arg}!
ok 3 - value is in object->{name}
ok 4 - attribute value is from name
ok 5 - no value for the init_arg
ok 6 - value is in key from name
ok 7 - got the attribute object by name (not init_arg)
ok 8 - name is name
ok 9 - init_arg is key
ok 10 - init_arg => undef ignores attribute name in the constructor
ok 11 - accessor uses attribute name (immutable)
ok 12 - nothing in object->{init_arg}!
ok 13 - value is in object->{name}
ok 14 - attribute value is from name
ok 15 - no value for the init_arg
ok 16 - value is in key from name
ok 17 - got the attribute object by name (not init_arg)
ok 18 - name is name
ok 19 - init_arg is key
ok 20 - init_arg => undef ignores attribute name in the constructor
ok
t/001_mouse/023-builder.t ......................................
1..47
ok 1 - predicate: value from constructor
ok 2 - builder not called in the constructor when we pass a value
ok 3 - builder doesn't matter when we just set the value in constructor
ok 4 - builder doesn't matter when we just set the value in writer
ok 5 - builder not called in the setter
ok 6 - predicate: no value after clear
ok 7 - eager builder does NOT swoop in after clear
ok 8 - predicate: no value after clear and get
ok 9 - builder not called in the getter, even after clear
ok 10 - predicate: value from eager builder
ok 11 - builder called to provide the default value
ok 12 - builder called ONCE to provide the default value
ok 13 - lazy builder not called yet
ok 14 - predicate: no age yet
ok 15 - lazy builder value
ok 16 - predicate: have value after get
ok 17 - lazy builder called on get
ok 18 - lazy builder value
ok 19 - lazy builder not called on subsequent gets
ok 20 - predicate: have value after subsequent gets
ok 21 - predicate: no value after clear
ok 22 - lazy builder not called on clear
ok 23 - lazy builder value
ok 24 - predicate: have value after clear and get
ok 25 - lazy builder called on get after clear
ok 26 - predicate: have value from constructor
ok 27 - lazy builder not called yet
ok 28 - value from constructor
ok 29 - lazy builder not called if value is from constructor
ok 30 - predicate: no value after clear
ok 31 - lazy builder not called on clear
ok 32 - lazy builder value
ok 33 - predicate: have value after clear and get
ok 34 - lazy builder called on get after clear
ok 35
ok 36 - correct predicate
ok 37
ok 38
ok 39 - correct predicate
ok 40 - correct clearer
ok 41 - correct predicate
ok 42 - correct predicate
ok 43
ok 44
ok 45 - correct predicate
ok 46 - correct clearer
ok 47 - correct predicate
ok
t/001_mouse/024-isa.t ..........................................
ok 1 - Class->can(...)
# For Any
ok 2 - correctly set a Any in the constructor
ok 3
ok 4 - initially unset
ok 5 - correctly set a Any in the setter
ok 6
ok 7 - correctly set a Any in the constructor
ok 8
ok 9 - initially unset
ok 10 - correctly set a Any in the setter
ok 11
ok 12 - correctly set a Any in the constructor
ok 13
ok 14 - initially unset
ok 15 - correctly set a Any in the setter
ok 16
ok 17 - correctly set a Any in the constructor
ok 18
ok 19 - initially unset
ok 20 - correctly set a Any in the setter
ok 21
ok 22 - correctly set a Any in the constructor
ok 23
ok 24 - initially unset
ok 25 - correctly set a Any in the setter
ok 26
ok 27 - correctly set a Any in the constructor
ok 28
ok 29 - initially unset
ok 30 - correctly set a Any in the setter
ok 31
ok 32 - correctly set a Any in the constructor
ok 33
ok 34 - initially unset
ok 35 - correctly set a Any in the setter
ok 36
ok 37 - correctly set a Any in the constructor
ok 38
ok 39 - initially unset
ok 40 - correctly set a Any in the setter
ok 41
ok 42 - correctly set a Any in the constructor
ok 43
ok 44 - initially unset
ok 45 - correctly set a Any in the setter
ok 46
ok 47 - correctly set a Any in the constructor
ok 48
ok 49 - initially unset
ok 50 - correctly set a Any in the setter
ok 51
ok 52 - correctly set a Any in the constructor
ok 53
ok 54 - initially unset
ok 55 - correctly set a Any in the setter
ok 56
ok 57 - correctly set a Any in the constructor
ok 58
ok 59 - initially unset
ok 60 - correctly set a Any in the setter
ok 61
ok 62 - correctly set a Any in the constructor
ok 63
ok 64 - initially unset
ok 65 - correctly set a Any in the setter
ok 66
ok 67 - correctly set a Any in the constructor
ok 68
ok 69 - initially unset
ok 70 - correctly set a Any in the setter
ok 71
ok 72 - correctly set a Any in the constructor
ok 73
ok 74 - initially unset
ok 75 - correctly set a Any in the setter
ok 76
ok 77 - correctly set a Any in the constructor
ok 78
ok 79 - initially unset
ok 80 - correctly set a Any in the setter
ok 81
ok 82 - correctly set a Any in the constructor
ok 83
ok 84 - initially unset
ok 85 - correctly set a Any in the setter
ok 86
ok 87 - correctly set a Any in the constructor
ok 88
ok 89 - initially unset
ok 90 - correctly set a Any in the setter
ok 91
ok 92 - correctly set a Any in the constructor
ok 93
ok 94 - initially unset
ok 95 - correctly set a Any in the setter
ok 96
ok 97 - correctly set a Any in the constructor
ok 98
ok 99 - initially unset
ok 100 - correctly set a Any in the setter
ok 101
ok 102 - correctly set a Any in the constructor
ok 103
ok 104 - initially unset
ok 105 - correctly set a Any in the setter
ok 106
ok 107 - correctly set a Any in the constructor
ok 108
ok 109 - initially unset
ok 110 - correctly set a Any in the setter
ok 111
ok 112 - correctly set a Any in the constructor
ok 113
ok 114 - initially unset
ok 115 - correctly set a Any in the setter
ok 116
ok 117 - correctly set a Any in the constructor
ok 118
ok 119 - initially unset
ok 120 - correctly set a Any in the setter
ok 121
ok 122 - correctly set a Any in the constructor
ok 123
ok 124 - initially unset
ok 125 - correctly set a Any in the setter
ok 126
ok 127 - correctly set a Any in the constructor
ok 128
ok 129 - initially unset
ok 130 - correctly set a Any in the setter
ok 131
# For Item
ok 132 - correctly set a Item in the constructor
ok 133
ok 134 - initially unset
ok 135 - correctly set a Item in the setter
ok 136
ok 137 - correctly set a Item in the constructor
ok 138
ok 139 - initially unset
ok 140 - correctly set a Item in the setter
ok 141
ok 142 - correctly set a Item in the constructor
ok 143
ok 144 - initially unset
ok 145 - correctly set a Item in the setter
ok 146
ok 147 - correctly set a Item in the constructor
ok 148
ok 149 - initially unset
ok 150 - correctly set a Item in the setter
ok 151
ok 152 - correctly set a Item in the constructor
ok 153
ok 154 - initially unset
ok 155 - correctly set a Item in the setter
ok 156
ok 157 - correctly set a Item in the constructor
ok 158
ok 159 - initially unset
ok 160 - correctly set a Item in the setter
ok 161
ok 162 - correctly set a Item in the constructor
ok 163
ok 164 - initially unset
ok 165 - correctly set a Item in the setter
ok 166
ok 167 - correctly set a Item in the constructor
ok 168
ok 169 - initially unset
ok 170 - correctly set a Item in the setter
ok 171
ok 172 - correctly set a Item in the constructor
ok 173
ok 174 - initially unset
ok 175 - correctly set a Item in the setter
ok 176
ok 177 - correctly set a Item in the constructor
ok 178
ok 179 - initially unset
ok 180 - correctly set a Item in the setter
ok 181
ok 182 - correctly set a Item in the constructor
ok 183
ok 184 - initially unset
ok 185 - correctly set a Item in the setter
ok 186
ok 187 - correctly set a Item in the constructor
ok 188
ok 189 - initially unset
ok 190 - correctly set a Item in the setter
ok 191
ok 192 - correctly set a Item in the constructor
ok 193
ok 194 - initially unset
ok 195 - correctly set a Item in the setter
ok 196
ok 197 - correctly set a Item in the constructor
ok 198
ok 199 - initially unset
ok 200 - correctly set a Item in the setter
ok 201
ok 202 - correctly set a Item in the constructor
ok 203
ok 204 - initially unset
ok 205 - correctly set a Item in the setter
ok 206
ok 207 - correctly set a Item in the constructor
ok 208
ok 209 - initially unset
ok 210 - correctly set a Item in the setter
ok 211
ok 212 - correctly set a Item in the constructor
ok 213
ok 214 - initially unset
ok 215 - correctly set a Item in the setter
ok 216
ok 217 - correctly set a Item in the constructor
ok 218
ok 219 - initially unset
ok 220 - correctly set a Item in the setter
ok 221
ok 222 - correctly set a Item in the constructor
ok 223
ok 224 - initially unset
ok 225 - correctly set a Item in the setter
ok 226
ok 227 - correctly set a Item in the constructor
ok 228
ok 229 - initially unset
ok 230 - correctly set a Item in the setter
ok 231
ok 232 - correctly set a Item in the constructor
ok 233
ok 234 - initially unset
ok 235 - correctly set a Item in the setter
ok 236
ok 237 - correctly set a Item in the constructor
ok 238
ok 239 - initially unset
ok 240 - correctly set a Item in the setter
ok 241
ok 242 - correctly set a Item in the constructor
ok 243
ok 244 - initially unset
ok 245 - correctly set a Item in the setter
ok 246
ok 247 - correctly set a Item in the constructor
ok 248
ok 249 - initially unset
ok 250 - correctly set a Item in the setter
ok 251
ok 252 - correctly set a Item in the constructor
ok 253
ok 254 - initially unset
ok 255 - correctly set a Item in the setter
ok 256
ok 257 - correctly set a Item in the constructor
ok 258
ok 259 - initially unset
ok 260 - correctly set a Item in the setter
ok 261
# For Bool
ok 262 - correctly set a Bool in the constructor
ok 263
ok 264 - initially unset
ok 265 - correctly set a Bool in the setter
ok 266
ok 267 - correctly set a Bool in the constructor
ok 268
ok 269 - initially unset
ok 270 - correctly set a Bool in the setter
ok 271
ok 272 - correctly set a Bool in the constructor
ok 273
ok 274 - initially unset
ok 275 - correctly set a Bool in the setter
ok 276
ok 277 - correctly set a Bool in the constructor
ok 278
ok 279 - initially unset
ok 280 - correctly set a Bool in the setter
ok 281
ok 282 - correctly set a Bool in the constructor
ok 283
ok 284 - initially unset
ok 285 - correctly set a Bool in the setter
ok 286
ok 287 - correctly set a Bool in the constructor
ok 288
ok 289 - initially unset
ok 290 - correctly set a Bool in the setter
ok 291
ok 292
ok 293 - no object created
ok 294
ok 295 - value for Bool not set
ok 296
ok 297 - no object created
ok 298
ok 299 - value for Bool not set
ok 300
ok 301 - no object created
ok 302
ok 303 - value for Bool not set
ok 304
ok 305 - no object created
ok 306
ok 307 - value for Bool not set
ok 308
ok 309 - no object created
ok 310
ok 311 - value for Bool not set
ok 312
ok 313 - no object created
ok 314
ok 315 - value for Bool not set
ok 316
ok 317 - no object created
ok 318
ok 319 - value for Bool not set
ok 320
ok 321 - no object created
ok 322
ok 323 - value for Bool not set
ok 324
ok 325 - no object created
ok 326
ok 327 - value for Bool not set
ok 328
ok 329 - no object created
ok 330
ok 331 - value for Bool not set
ok 332
ok 333 - no object created
ok 334
ok 335 - value for Bool not set
ok 336
ok 337 - no object created
ok 338
ok 339 - value for Bool not set
ok 340
ok 341 - no object created
ok 342
ok 343 - value for Bool not set
ok 344
ok 345 - no object created
ok 346
ok 347 - value for Bool not set
ok 348
ok 349 - no object created
ok 350
ok 351 - value for Bool not set
ok 352
ok 353 - no object created
ok 354
ok 355 - value for Bool not set
ok 356
ok 357 - no object created
ok 358
ok 359 - value for Bool not set
ok 360
ok 361 - no object created
ok 362
ok 363 - value for Bool not set
ok 364
ok 365 - no object created
ok 366
ok 367 - value for Bool not set
ok 368
ok 369 - no object created
ok 370
ok 371 - value for Bool not set
# For Undef
ok 372 - correctly set a Undef in the constructor
ok 373
ok 374 - initially unset
ok 375 - correctly set a Undef in the setter
ok 376
ok 377
ok 378 - no object created
ok 379
ok 380 - value for Undef not set
ok 381
ok 382 - no object created
ok 383
ok 384 - value for Undef not set
ok 385
ok 386 - no object created
ok 387
ok 388 - value for Undef not set
ok 389
ok 390 - no object created
ok 391
ok 392 - value for Undef not set
ok 393
ok 394 - no object created
ok 395
ok 396 - value for Undef not set
ok 397
ok 398 - no object created
ok 399
ok 400 - value for Undef not set
ok 401
ok 402 - no object created
ok 403
ok 404 - value for Undef not set
ok 405
ok 406 - no object created
ok 407
ok 408 - value for Undef not set
ok 409
ok 410 - no object created
ok 411
ok 412 - value for Undef not set
ok 413
ok 414 - no object created
ok 415
ok 416 - value for Undef not set
ok 417
ok 418 - no object created
ok 419
ok 420 - value for Undef not set
ok 421
ok 422 - no object created
ok 423
ok 424 - value for Undef not set
ok 425
ok 426 - no object created
ok 427
ok 428 - value for Undef not set
ok 429
ok 430 - no object created
ok 431
ok 432 - value for Undef not set
ok 433
ok 434 - no object created
ok 435
ok 436 - value for Undef not set
ok 437
ok 438 - no object created
ok 439
ok 440 - value for Undef not set
ok 441
ok 442 - no object created
ok 443
ok 444 - value for Undef not set
ok 445
ok 446 - no object created
ok 447
ok 448 - value for Undef not set
ok 449
ok 450 - no object created
ok 451
ok 452 - value for Undef not set
ok 453
ok 454 - no object created
ok 455
ok 456 - value for Undef not set
ok 457
ok 458 - no object created
ok 459
ok 460 - value for Undef not set
ok 461
ok 462 - no object created
ok 463
ok 464 - value for Undef not set
ok 465
ok 466 - no object created
ok 467
ok 468 - value for Undef not set
ok 469
ok 470 - no object created
ok 471
ok 472 - value for Undef not set
ok 473
ok 474 - no object created
ok 475
ok 476 - value for Undef not set
# For Defined
ok 477 - correctly set a Defined in the constructor
ok 478
ok 479 - initially unset
ok 480 - correctly set a Defined in the setter
ok 481
ok 482 - correctly set a Defined in the constructor
ok 483
ok 484 - initially unset
ok 485 - correctly set a Defined in the setter
ok 486
ok 487 - correctly set a Defined in the constructor
ok 488
ok 489 - initially unset
ok 490 - correctly set a Defined in the setter
ok 491
ok 492 - correctly set a Defined in the constructor
ok 493
ok 494 - initially unset
ok 495 - correctly set a Defined in the setter
ok 496
ok 497 - correctly set a Defined in the constructor
ok 498
ok 499 - initially unset
ok 500 - correctly set a Defined in the setter
ok 501
ok 502 - correctly set a Defined in the constructor
ok 503
ok 504 - initially unset
ok 505 - correctly set a Defined in the setter
ok 506
ok 507 - correctly set a Defined in the constructor
ok 508
ok 509 - initially unset
ok 510 - correctly set a Defined in the setter
ok 511
ok 512 - correctly set a Defined in the constructor
ok 513
ok 514 - initially unset
ok 515 - correctly set a Defined in the setter
ok 516
ok 517 - correctly set a Defined in the constructor
ok 518
ok 519 - initially unset
ok 520 - correctly set a Defined in the setter
ok 521
ok 522 - correctly set a Defined in the constructor
ok 523
ok 524 - initially unset
ok 525 - correctly set a Defined in the setter
ok 526
ok 527 - correctly set a Defined in the constructor
ok 528
ok 529 - initially unset
ok 530 - correctly set a Defined in the setter
ok 531
ok 532 - correctly set a Defined in the constructor
ok 533
ok 534 - initially unset
ok 535 - correctly set a Defined in the setter
ok 536
ok 537 - correctly set a Defined in the constructor
ok 538
ok 539 - initially unset
ok 540 - correctly set a Defined in the setter
ok 541
ok 542 - correctly set a Defined in the constructor
ok 543
ok 544 - initially unset
ok 545 - correctly set a Defined in the setter
ok 546
ok 547 - correctly set a Defined in the constructor
ok 548
ok 549 - initially unset
ok 550 - correctly set a Defined in the setter
ok 551
ok 552 - correctly set a Defined in the constructor
ok 553
ok 554 - initially unset
ok 555 - correctly set a Defined in the setter
ok 556
ok 557 - correctly set a Defined in the constructor
ok 558
ok 559 - initially unset
ok 560 - correctly set a Defined in the setter
ok 561
ok 562 - correctly set a Defined in the constructor
ok 563
ok 564 - initially unset
ok 565 - correctly set a Defined in the setter
ok 566
ok 567 - correctly set a Defined in the constructor
ok 568
ok 569 - initially unset
ok 570 - correctly set a Defined in the setter
ok 571
ok 572 - correctly set a Defined in the constructor
ok 573
ok 574 - initially unset
ok 575 - correctly set a Defined in the setter
ok 576
ok 577 - correctly set a Defined in the constructor
ok 578
ok 579 - initially unset
ok 580 - correctly set a Defined in the setter
ok 581
ok 582 - correctly set a Defined in the constructor
ok 583
ok 584 - initially unset
ok 585 - correctly set a Defined in the setter
ok 586
ok 587 - correctly set a Defined in the constructor
ok 588
ok 589 - initially unset
ok 590 - correctly set a Defined in the setter
ok 591
ok 592 - correctly set a Defined in the constructor
ok 593
ok 594 - initially unset
ok 595 - correctly set a Defined in the setter
ok 596
ok 597 - correctly set a Defined in the constructor
ok 598
ok 599 - initially unset
ok 600 - correctly set a Defined in the setter
ok 601
ok 602
ok 603 - no object created
ok 604
ok 605 - value for Defined not set
# For Value
ok 606 - correctly set a Value in the constructor
ok 607
ok 608 - initially unset
ok 609 - correctly set a Value in the setter
ok 610
ok 611 - correctly set a Value in the constructor
ok 612
ok 613 - initially unset
ok 614 - correctly set a Value in the setter
ok 615
ok 616 - correctly set a Value in the constructor
ok 617
ok 618 - initially unset
ok 619 - correctly set a Value in the setter
ok 620
ok 621 - correctly set a Value in the constructor
ok 622
ok 623 - initially unset
ok 624 - correctly set a Value in the setter
ok 625
ok 626 - correctly set a Value in the constructor
ok 627
ok 628 - initially unset
ok 629 - correctly set a Value in the setter
ok 630
ok 631 - correctly set a Value in the constructor
ok 632
ok 633 - initially unset
ok 634 - correctly set a Value in the setter
ok 635
ok 636 - correctly set a Value in the constructor
ok 637
ok 638 - initially unset
ok 639 - correctly set a Value in the setter
ok 640
ok 641 - correctly set a Value in the constructor
ok 642
ok 643 - initially unset
ok 644 - correctly set a Value in the setter
ok 645
ok 646 - correctly set a Value in the constructor
ok 647
ok 648 - initially unset
ok 649 - correctly set a Value in the setter
ok 650
ok 651 - correctly set a Value in the constructor
ok 652
ok 653 - initially unset
ok 654 - correctly set a Value in the setter
ok 655
ok 656 - correctly set a Value in the constructor
ok 657
ok 658 - initially unset
ok 659 - correctly set a Value in the setter
ok 660
ok 661 - correctly set a Value in the constructor
ok 662
ok 663 - initially unset
ok 664 - correctly set a Value in the setter
ok 665
ok 666 - correctly set a Value in the constructor
ok 667
ok 668 - initially unset
ok 669 - correctly set a Value in the setter
ok 670
ok 671
ok 672 - no object created
ok 673
ok 674 - value for Value not set
ok 675
ok 676 - no object created
ok 677
ok 678 - value for Value not set
ok 679
ok 680 - no object created
ok 681
ok 682 - value for Value not set
ok 683
ok 684 - no object created
ok 685
ok 686 - value for Value not set
ok 687
ok 688 - no object created
ok 689
ok 690 - value for Value not set
ok 691
ok 692 - no object created
ok 693
ok 694 - value for Value not set
ok 695
ok 696 - no object created
ok 697
ok 698 - value for Value not set
ok 699
ok 700 - no object created
ok 701
ok 702 - value for Value not set
ok 703
ok 704 - no object created
ok 705
ok 706 - value for Value not set
ok 707
ok 708 - no object created
ok 709
ok 710 - value for Value not set
ok 711
ok 712 - no object created
ok 713
ok 714 - value for Value not set
ok 715
ok 716 - no object created
ok 717
ok 718 - value for Value not set
ok 719
ok 720 - no object created
ok 721
ok 722 - value for Value not set
# For Num
ok 723 - correctly set a Num in the constructor
ok 724
ok 725 - initially unset
ok 726 - correctly set a Num in the setter
ok 727
ok 728 - correctly set a Num in the constructor
ok 729
ok 730 - initially unset
ok 731 - correctly set a Num in the setter
ok 732
ok 733 - correctly set a Num in the constructor
ok 734
ok 735 - initially unset
ok 736 - correctly set a Num in the setter
ok 737
ok 738 - correctly set a Num in the constructor
ok 739
ok 740 - initially unset
ok 741 - correctly set a Num in the setter
ok 742
ok 743 - correctly set a Num in the constructor
ok 744
ok 745 - initially unset
ok 746 - correctly set a Num in the setter
ok 747
ok 748 - correctly set a Num in the constructor
ok 749
ok 750 - initially unset
ok 751 - correctly set a Num in the setter
ok 752
ok 753 - correctly set a Num in the constructor
ok 754
ok 755 - initially unset
ok 756 - correctly set a Num in the setter
ok 757
ok 758 - correctly set a Num in the constructor
ok 759
ok 760 - initially unset
ok 761 - correctly set a Num in the setter
ok 762
ok 763
ok 764 - no object created
ok 765
ok 766 - value for Num not set
ok 767
ok 768 - no object created
ok 769
ok 770 - value for Num not set
ok 771
ok 772 - no object created
ok 773
ok 774 - value for Num not set
ok 775
ok 776 - no object created
ok 777
ok 778 - value for Num not set
ok 779
ok 780 - no object created
ok 781
ok 782 - value for Num not set
ok 783
ok 784 - no object created
ok 785
ok 786 - value for Num not set
ok 787
ok 788 - no object created
ok 789
ok 790 - value for Num not set
ok 791
ok 792 - no object created
ok 793
ok 794 - value for Num not set
ok 795
ok 796 - no object created
ok 797
ok 798 - value for Num not set
ok 799
ok 800 - no object created
ok 801
ok 802 - value for Num not set
ok 803
ok 804 - no object created
ok 805
ok 806 - value for Num not set
ok 807
ok 808 - no object created
ok 809
ok 810 - value for Num not set
ok 811
ok 812 - no object created
ok 813
ok 814 - value for Num not set
ok 815
ok 816 - no object created
ok 817
ok 818 - value for Num not set
ok 819
ok 820 - no object created
ok 821
ok 822 - value for Num not set
ok 823
ok 824 - no object created
ok 825
ok 826 - value for Num not set
ok 827
ok 828 - no object created
ok 829
ok 830 - value for Num not set
ok 831
ok 832 - no object created
ok 833
ok 834 - value for Num not set
# For Int
ok 835 - correctly set a Int in the constructor
ok 836
ok 837 - initially unset
ok 838 - correctly set a Int in the setter
ok 839
ok 840 - correctly set a Int in the constructor
ok 841
ok 842 - initially unset
ok 843 - correctly set a Int in the setter
ok 844
ok 845 - correctly set a Int in the constructor
ok 846
ok 847 - initially unset
ok 848 - correctly set a Int in the setter
ok 849
ok 850 - correctly set a Int in the constructor
ok 851
ok 852 - initially unset
ok 853 - correctly set a Int in the setter
ok 854
ok 855 - correctly set a Int in the constructor
ok 856
ok 857 - initially unset
ok 858 - correctly set a Int in the setter
ok 859
ok 860 - correctly set a Int in the constructor
ok 861
ok 862 - initially unset
ok 863 - correctly set a Int in the setter
ok 864
ok 865
ok 866 - no object created
ok 867
ok 868 - value for Int not set
ok 869
ok 870 - no object created
ok 871
ok 872 - value for Int not set
ok 873
ok 874 - no object created
ok 875
ok 876 - value for Int not set
ok 877
ok 878 - no object created
ok 879
ok 880 - value for Int not set
ok 881
ok 882 - no object created
ok 883
ok 884 - value for Int not set
ok 885
ok 886 - no object created
ok 887
ok 888 - value for Int not set
ok 889
ok 890 - no object created
ok 891
ok 892 - value for Int not set
ok 893
ok 894 - no object created
ok 895
ok 896 - value for Int not set
ok 897
ok 898 - no object created
ok 899
ok 900 - value for Int not set
ok 901
ok 902 - no object created
ok 903
ok 904 - value for Int not set
ok 905
ok 906 - no object created
ok 907
ok 908 - value for Int not set
ok 909
ok 910 - no object created
ok 911
ok 912 - value for Int not set
ok 913
ok 914 - no object created
ok 915
ok 916 - value for Int not set
ok 917
ok 918 - no object created
ok 919
ok 920 - value for Int not set
ok 921
ok 922 - no object created
ok 923
ok 924 - value for Int not set
ok 925
ok 926 - no object created
ok 927
ok 928 - value for Int not set
ok 929
ok 930 - no object created
ok 931
ok 932 - value for Int not set
ok 933
ok 934 - no object created
ok 935
ok 936 - value for Int not set
ok 937
ok 938 - no object created
ok 939
ok 940 - value for Int not set
ok 941
ok 942 - no object created
ok 943
ok 944 - value for Int not set
# For Str
ok 945 - correctly set a Str in the constructor
ok 946
ok 947 - initially unset
ok 948 - correctly set a Str in the setter
ok 949
ok 950 - correctly set a Str in the constructor
ok 951
ok 952 - initially unset
ok 953 - correctly set a Str in the setter
ok 954
ok 955 - correctly set a Str in the constructor
ok 956
ok 957 - initially unset
ok 958 - correctly set a Str in the setter
ok 959
ok 960 - correctly set a Str in the constructor
ok 961
ok 962 - initially unset
ok 963 - correctly set a Str in the setter
ok 964
ok 965 - correctly set a Str in the constructor
ok 966
ok 967 - initially unset
ok 968 - correctly set a Str in the setter
ok 969
ok 970 - correctly set a Str in the constructor
ok 971
ok 972 - initially unset
ok 973 - correctly set a Str in the setter
ok 974
ok 975 - correctly set a Str in the constructor
ok 976
ok 977 - initially unset
ok 978 - correctly set a Str in the setter
ok 979
ok 980 - correctly set a Str in the constructor
ok 981
ok 982 - initially unset
ok 983 - correctly set a Str in the setter
ok 984
ok 985 - correctly set a Str in the constructor
ok 986
ok 987 - initially unset
ok 988 - correctly set a Str in the setter
ok 989
ok 990 - correctly set a Str in the constructor
ok 991
ok 992 - initially unset
ok 993 - correctly set a Str in the setter
ok 994
ok 995 - correctly set a Str in the constructor
ok 996
ok 997 - initially unset
ok 998 - correctly set a Str in the setter
ok 999
ok 1000 - correctly set a Str in the constructor
ok 1001
ok 1002 - initially unset
ok 1003 - correctly set a Str in the setter
ok 1004
ok 1005 - correctly set a Str in the constructor
ok 1006
ok 1007 - initially unset
ok 1008 - correctly set a Str in the setter
ok 1009
ok 1010
ok 1011 - no object created
ok 1012
ok 1013 - value for Str not set
ok 1014
ok 1015 - no object created
ok 1016
ok 1017 - value for Str not set
ok 1018
ok 1019 - no object created
ok 1020
ok 1021 - value for Str not set
ok 1022
ok 1023 - no object created
ok 1024
ok 1025 - value for Str not set
ok 1026
ok 1027 - no object created
ok 1028
ok 1029 - value for Str not set
ok 1030
ok 1031 - no object created
ok 1032
ok 1033 - value for Str not set
ok 1034
ok 1035 - no object created
ok 1036
ok 1037 - value for Str not set
ok 1038
ok 1039 - no object created
ok 1040
ok 1041 - value for Str not set
ok 1042
ok 1043 - no object created
ok 1044
ok 1045 - value for Str not set
ok 1046
ok 1047 - no object created
ok 1048
ok 1049 - value for Str not set
ok 1050
ok 1051 - no object created
ok 1052
ok 1053 - value for Str not set
ok 1054
ok 1055 - no object created
ok 1056
ok 1057 - value for Str not set
ok 1058
ok 1059 - no object created
ok 1060
ok 1061 - value for Str not set
# For ClassName
ok 1062 - correctly set a ClassName in the constructor
ok 1063
ok 1064 - initially unset
ok 1065 - correctly set a ClassName in the setter
ok 1066
ok 1067
ok 1068 - no object created
ok 1069
ok 1070 - value for ClassName not set
ok 1071
ok 1072 - no object created
ok 1073
ok 1074 - value for ClassName not set
ok 1075
ok 1076 - no object created
ok 1077
ok 1078 - value for ClassName not set
ok 1079
ok 1080 - no object created
ok 1081
ok 1082 - value for ClassName not set
ok 1083
ok 1084 - no object created
ok 1085
ok 1086 - value for ClassName not set
ok 1087
ok 1088 - no object created
ok 1089
ok 1090 - value for ClassName not set
ok 1091
ok 1092 - no object created
ok 1093
ok 1094 - value for ClassName not set
ok 1095
ok 1096 - no object created
ok 1097
ok 1098 - value for ClassName not set
ok 1099
ok 1100 - no object created
ok 1101
ok 1102 - value for ClassName not set
ok 1103
ok 1104 - no object created
ok 1105
ok 1106 - value for ClassName not set
ok 1107
ok 1108 - no object created
ok 1109
ok 1110 - value for ClassName not set
ok 1111
ok 1112 - no object created
ok 1113
ok 1114 - value for ClassName not set
ok 1115
ok 1116 - no object created
ok 1117
ok 1118 - value for ClassName not set
ok 1119
ok 1120 - no object created
ok 1121
ok 1122 - value for ClassName not set
ok 1123
ok 1124 - no object created
ok 1125
ok 1126 - value for ClassName not set
ok 1127
ok 1128 - no object created
ok 1129
ok 1130 - value for ClassName not set
ok 1131
ok 1132 - no object created
ok 1133
ok 1134 - value for ClassName not set
ok 1135
ok 1136 - no object created
ok 1137
ok 1138 - value for ClassName not set
ok 1139
ok 1140 - no object created
ok 1141
ok 1142 - value for ClassName not set
ok 1143
ok 1144 - no object created
ok 1145
ok 1146 - value for ClassName not set
ok 1147
ok 1148 - no object created
ok 1149
ok 1150 - value for ClassName not set
ok 1151
ok 1152 - no object created
ok 1153
ok 1154 - value for ClassName not set
ok 1155
ok 1156 - no object created
ok 1157
ok 1158 - value for ClassName not set
ok 1159
ok 1160 - no object created
ok 1161
ok 1162 - value for ClassName not set
ok 1163
ok 1164 - no object created
ok 1165
ok 1166 - value for ClassName not set
# For Ref
ok 1167 - correctly set a Ref in the constructor
ok 1168
ok 1169 - initially unset
ok 1170 - correctly set a Ref in the setter
ok 1171
ok 1172 - correctly set a Ref in the constructor
ok 1173
ok 1174 - initially unset
ok 1175 - correctly set a Ref in the setter
ok 1176
ok 1177 - correctly set a Ref in the constructor
ok 1178
ok 1179 - initially unset
ok 1180 - correctly set a Ref in the setter
ok 1181
ok 1182 - correctly set a Ref in the constructor
ok 1183
ok 1184 - initially unset
ok 1185 - correctly set a Ref in the setter
ok 1186
ok 1187 - correctly set a Ref in the constructor
ok 1188
ok 1189 - initially unset
ok 1190 - correctly set a Ref in the setter
ok 1191
ok 1192 - correctly set a Ref in the constructor
ok 1193
ok 1194 - initially unset
ok 1195 - correctly set a Ref in the setter
ok 1196
ok 1197 - correctly set a Ref in the constructor
ok 1198
ok 1199 - initially unset
ok 1200 - correctly set a Ref in the setter
ok 1201
ok 1202 - correctly set a Ref in the constructor
ok 1203
ok 1204 - initially unset
ok 1205 - correctly set a Ref in the setter
ok 1206
ok 1207 - correctly set a Ref in the constructor
ok 1208
ok 1209 - initially unset
ok 1210 - correctly set a Ref in the setter
ok 1211
ok 1212 - correctly set a Ref in the constructor
ok 1213
ok 1214 - initially unset
ok 1215 - correctly set a Ref in the setter
ok 1216
ok 1217 - correctly set a Ref in the constructor
ok 1218
ok 1219 - initially unset
ok 1220 - correctly set a Ref in the setter
ok 1221
ok 1222 - correctly set a Ref in the constructor
ok 1223
ok 1224 - initially unset
ok 1225 - correctly set a Ref in the setter
ok 1226
ok 1227
ok 1228 - no object created
ok 1229
ok 1230 - value for Ref not set
ok 1231
ok 1232 - no object created
ok 1233
ok 1234 - value for Ref not set
ok 1235
ok 1236 - no object created
ok 1237
ok 1238 - value for Ref not set
ok 1239
ok 1240 - no object created
ok 1241
ok 1242 - value for Ref not set
ok 1243
ok 1244 - no object created
ok 1245
ok 1246 - value for Ref not set
ok 1247
ok 1248 - no object created
ok 1249
ok 1250 - value for Ref not set
ok 1251
ok 1252 - no object created
ok 1253
ok 1254 - value for Ref not set
ok 1255
ok 1256 - no object created
ok 1257
ok 1258 - value for Ref not set
ok 1259
ok 1260 - no object created
ok 1261
ok 1262 - value for Ref not set
ok 1263
ok 1264 - no object created
ok 1265
ok 1266 - value for Ref not set
ok 1267
ok 1268 - no object created
ok 1269
ok 1270 - value for Ref not set
ok 1271
ok 1272 - no object created
ok 1273
ok 1274 - value for Ref not set
ok 1275
ok 1276 - no object created
ok 1277
ok 1278 - value for Ref not set
ok 1279
ok 1280 - no object created
ok 1281
ok 1282 - value for Ref not set
# For ScalarRef
ok 1283 - correctly set a ScalarRef in the constructor
ok 1284
ok 1285 - initially unset
ok 1286 - correctly set a ScalarRef in the setter
ok 1287
ok 1288 - correctly set a ScalarRef in the constructor
ok 1289
ok 1290 - initially unset
ok 1291 - correctly set a ScalarRef in the setter
ok 1292
ok 1293 - correctly set a ScalarRef in the constructor
ok 1294
ok 1295 - initially unset
ok 1296 - correctly set a ScalarRef in the setter
ok 1297
ok 1298
ok 1299 - no object created
ok 1300
ok 1301 - value for ScalarRef not set
ok 1302
ok 1303 - no object created
ok 1304
ok 1305 - value for ScalarRef not set
ok 1306
ok 1307 - no object created
ok 1308
ok 1309 - value for ScalarRef not set
ok 1310
ok 1311 - no object created
ok 1312
ok 1313 - value for ScalarRef not set
ok 1314
ok 1315 - no object created
ok 1316
ok 1317 - value for ScalarRef not set
ok 1318
ok 1319 - no object created
ok 1320
ok 1321 - value for ScalarRef not set
ok 1322
ok 1323 - no object created
ok 1324
ok 1325 - value for ScalarRef not set
ok 1326
ok 1327 - no object created
ok 1328
ok 1329 - value for ScalarRef not set
ok 1330
ok 1331 - no object created
ok 1332
ok 1333 - value for ScalarRef not set
ok 1334
ok 1335 - no object created
ok 1336
ok 1337 - value for ScalarRef not set
ok 1338
ok 1339 - no object created
ok 1340
ok 1341 - value for ScalarRef not set
ok 1342
ok 1343 - no object created
ok 1344
ok 1345 - value for ScalarRef not set
ok 1346
ok 1347 - no object created
ok 1348
ok 1349 - value for ScalarRef not set
ok 1350
ok 1351 - no object created
ok 1352
ok 1353 - value for ScalarRef not set
ok 1354
ok 1355 - no object created
ok 1356
ok 1357 - value for ScalarRef not set
ok 1358
ok 1359 - no object created
ok 1360
ok 1361 - value for ScalarRef not set
ok 1362
ok 1363 - no object created
ok 1364
ok 1365 - value for ScalarRef not set
ok 1366
ok 1367 - no object created
ok 1368
ok 1369 - value for ScalarRef not set
ok 1370
ok 1371 - no object created
ok 1372
ok 1373 - value for ScalarRef not set
ok 1374
ok 1375 - no object created
ok 1376
ok 1377 - value for ScalarRef not set
ok 1378
ok 1379 - no object created
ok 1380
ok 1381 - value for ScalarRef not set
ok 1382
ok 1383 - no object created
ok 1384
ok 1385 - value for ScalarRef not set
ok 1386
ok 1387 - no object created
ok 1388
ok 1389 - value for ScalarRef not set
# For ArrayRef
ok 1390 - correctly set a ArrayRef in the constructor
ok 1391
ok 1392 - initially unset
ok 1393 - correctly set a ArrayRef in the setter
ok 1394
ok 1395 - correctly set a ArrayRef in the constructor
ok 1396
ok 1397 - initially unset
ok 1398 - correctly set a ArrayRef in the setter
ok 1399
ok 1400
ok 1401 - no object created
ok 1402
ok 1403 - value for ArrayRef not set
ok 1404
ok 1405 - no object created
ok 1406
ok 1407 - value for ArrayRef not set
ok 1408
ok 1409 - no object created
ok 1410
ok 1411 - value for ArrayRef not set
ok 1412
ok 1413 - no object created
ok 1414
ok 1415 - value for ArrayRef not set
ok 1416
ok 1417 - no object created
ok 1418
ok 1419 - value for ArrayRef not set
ok 1420
ok 1421 - no object created
ok 1422
ok 1423 - value for ArrayRef not set
ok 1424
ok 1425 - no object created
ok 1426
ok 1427 - value for ArrayRef not set
ok 1428
ok 1429 - no object created
ok 1430
ok 1431 - value for ArrayRef not set
ok 1432
ok 1433 - no object created
ok 1434
ok 1435 - value for ArrayRef not set
ok 1436
ok 1437 - no object created
ok 1438
ok 1439 - value for ArrayRef not set
ok 1440
ok 1441 - no object created
ok 1442
ok 1443 - value for ArrayRef not set
ok 1444
ok 1445 - no object created
ok 1446
ok 1447 - value for ArrayRef not set
ok 1448
ok 1449 - no object created
ok 1450
ok 1451 - value for ArrayRef not set
ok 1452
ok 1453 - no object created
ok 1454
ok 1455 - value for ArrayRef not set
ok 1456
ok 1457 - no object created
ok 1458
ok 1459 - value for ArrayRef not set
ok 1460
ok 1461 - no object created
ok 1462
ok 1463 - value for ArrayRef not set
ok 1464
ok 1465 - no object created
ok 1466
ok 1467 - value for ArrayRef not set
ok 1468
ok 1469 - no object created
ok 1470
ok 1471 - value for ArrayRef not set
ok 1472
ok 1473 - no object created
ok 1474
ok 1475 - value for ArrayRef not set
ok 1476
ok 1477 - no object created
ok 1478
ok 1479 - value for ArrayRef not set
ok 1480
ok 1481 - no object created
ok 1482
ok 1483 - value for ArrayRef not set
ok 1484
ok 1485 - no object created
ok 1486
ok 1487 - value for ArrayRef not set
ok 1488
ok 1489 - no object created
ok 1490
ok 1491 - value for ArrayRef not set
ok 1492
ok 1493 - no object created
ok 1494
ok 1495 - value for ArrayRef not set
# For HashRef
ok 1496 - correctly set a HashRef in the constructor
ok 1497
ok 1498 - initially unset
ok 1499 - correctly set a HashRef in the setter
ok 1500
ok 1501
ok 1502 - no object created
ok 1503
ok 1504 - value for HashRef not set
ok 1505
ok 1506 - no object created
ok 1507
ok 1508 - value for HashRef not set
ok 1509
ok 1510 - no object created
ok 1511
ok 1512 - value for HashRef not set
ok 1513
ok 1514 - no object created
ok 1515
ok 1516 - value for HashRef not set
ok 1517
ok 1518 - no object created
ok 1519
ok 1520 - value for HashRef not set
ok 1521
ok 1522 - no object created
ok 1523
ok 1524 - value for HashRef not set
ok 1525
ok 1526 - no object created
ok 1527
ok 1528 - value for HashRef not set
ok 1529
ok 1530 - no object created
ok 1531
ok 1532 - value for HashRef not set
ok 1533
ok 1534 - no object created
ok 1535
ok 1536 - value for HashRef not set
ok 1537
ok 1538 - no object created
ok 1539
ok 1540 - value for HashRef not set
ok 1541
ok 1542 - no object created
ok 1543
ok 1544 - value for HashRef not set
ok 1545
ok 1546 - no object created
ok 1547
ok 1548 - value for HashRef not set
ok 1549
ok 1550 - no object created
ok 1551
ok 1552 - value for HashRef not set
ok 1553
ok 1554 - no object created
ok 1555
ok 1556 - value for HashRef not set
ok 1557
ok 1558 - no object created
ok 1559
ok 1560 - value for HashRef not set
ok 1561
ok 1562 - no object created
ok 1563
ok 1564 - value for HashRef not set
ok 1565
ok 1566 - no object created
ok 1567
ok 1568 - value for HashRef not set
ok 1569
ok 1570 - no object created
ok 1571
ok 1572 - value for HashRef not set
ok 1573
ok 1574 - no object created
ok 1575
ok 1576 - value for HashRef not set
ok 1577
ok 1578 - no object created
ok 1579
ok 1580 - value for HashRef not set
ok 1581
ok 1582 - no object created
ok 1583
ok 1584 - value for HashRef not set
ok 1585
ok 1586 - no object created
ok 1587
ok 1588 - value for HashRef not set
ok 1589
ok 1590 - no object created
ok 1591
ok 1592 - value for HashRef not set
ok 1593
ok 1594 - no object created
ok 1595
ok 1596 - value for HashRef not set
ok 1597
ok 1598 - no object created
ok 1599
ok 1600 - value for HashRef not set
# For CodeRef
ok 1601 - correctly set a CodeRef in the constructor
ok 1602
ok 1603 - initially unset
ok 1604 - correctly set a CodeRef in the setter
ok 1605
ok 1606
ok 1607 - no object created
ok 1608
ok 1609 - value for CodeRef not set
ok 1610
ok 1611 - no object created
ok 1612
ok 1613 - value for CodeRef not set
ok 1614
ok 1615 - no object created
ok 1616
ok 1617 - value for CodeRef not set
ok 1618
ok 1619 - no object created
ok 1620
ok 1621 - value for CodeRef not set
ok 1622
ok 1623 - no object created
ok 1624
ok 1625 - value for CodeRef not set
ok 1626
ok 1627 - no object created
ok 1628
ok 1629 - value for CodeRef not set
ok 1630
ok 1631 - no object created
ok 1632
ok 1633 - value for CodeRef not set
ok 1634
ok 1635 - no object created
ok 1636
ok 1637 - value for CodeRef not set
ok 1638
ok 1639 - no object created
ok 1640
ok 1641 - value for CodeRef not set
ok 1642
ok 1643 - no object created
ok 1644
ok 1645 - value for CodeRef not set
ok 1646
ok 1647 - no object created
ok 1648
ok 1649 - value for CodeRef not set
ok 1650
ok 1651 - no object created
ok 1652
ok 1653 - value for CodeRef not set
ok 1654
ok 1655 - no object created
ok 1656
ok 1657 - value for CodeRef not set
ok 1658
ok 1659 - no object created
ok 1660
ok 1661 - value for CodeRef not set
ok 1662
ok 1663 - no object created
ok 1664
ok 1665 - value for CodeRef not set
ok 1666
ok 1667 - no object created
ok 1668
ok 1669 - value for CodeRef not set
ok 1670
ok 1671 - no object created
ok 1672
ok 1673 - value for CodeRef not set
ok 1674
ok 1675 - no object created
ok 1676
ok 1677 - value for CodeRef not set
ok 1678
ok 1679 - no object created
ok 1680
ok 1681 - value for CodeRef not set
ok 1682
ok 1683 - no object created
ok 1684
ok 1685 - value for CodeRef not set
ok 1686
ok 1687 - no object created
ok 1688
ok 1689 - value for CodeRef not set
ok 1690
ok 1691 - no object created
ok 1692
ok 1693 - value for CodeRef not set
ok 1694
ok 1695 - no object created
ok 1696
ok 1697 - value for CodeRef not set
ok 1698
ok 1699 - no object created
ok 1700
ok 1701 - value for CodeRef not set
ok 1702
ok 1703 - no object created
ok 1704
ok 1705 - value for CodeRef not set
# For RegexpRef
ok 1706 - correctly set a RegexpRef in the constructor
ok 1707
ok 1708 - initially unset
ok 1709 - correctly set a RegexpRef in the setter
ok 1710
ok 1711
ok 1712 - no object created
ok 1713
ok 1714 - value for RegexpRef not set
ok 1715
ok 1716 - no object created
ok 1717
ok 1718 - value for RegexpRef not set
ok 1719
ok 1720 - no object created
ok 1721
ok 1722 - value for RegexpRef not set
ok 1723
ok 1724 - no object created
ok 1725
ok 1726 - value for RegexpRef not set
ok 1727
ok 1728 - no object created
ok 1729
ok 1730 - value for RegexpRef not set
ok 1731
ok 1732 - no object created
ok 1733
ok 1734 - value for RegexpRef not set
ok 1735
ok 1736 - no object created
ok 1737
ok 1738 - value for RegexpRef not set
ok 1739
ok 1740 - no object created
ok 1741
ok 1742 - value for RegexpRef not set
ok 1743
ok 1744 - no object created
ok 1745
ok 1746 - value for RegexpRef not set
ok 1747
ok 1748 - no object created
ok 1749
ok 1750 - value for RegexpRef not set
ok 1751
ok 1752 - no object created
ok 1753
ok 1754 - value for RegexpRef not set
ok 1755
ok 1756 - no object created
ok 1757
ok 1758 - value for RegexpRef not set
ok 1759
ok 1760 - no object created
ok 1761
ok 1762 - value for RegexpRef not set
ok 1763
ok 1764 - no object created
ok 1765
ok 1766 - value for RegexpRef not set
ok 1767
ok 1768 - no object created
ok 1769
ok 1770 - value for RegexpRef not set
ok 1771
ok 1772 - no object created
ok 1773
ok 1774 - value for RegexpRef not set
ok 1775
ok 1776 - no object created
ok 1777
ok 1778 - value for RegexpRef not set
ok 1779
ok 1780 - no object created
ok 1781
ok 1782 - value for RegexpRef not set
ok 1783
ok 1784 - no object created
ok 1785
ok 1786 - value for RegexpRef not set
ok 1787
ok 1788 - no object created
ok 1789
ok 1790 - value for RegexpRef not set
ok 1791
ok 1792 - no object created
ok 1793
ok 1794 - value for RegexpRef not set
ok 1795
ok 1796 - no object created
ok 1797
ok 1798 - value for RegexpRef not set
ok 1799
ok 1800 - no object created
ok 1801
ok 1802 - value for RegexpRef not set
ok 1803
ok 1804 - no object created
ok 1805
ok 1806 - value for RegexpRef not set
ok 1807
ok 1808 - no object created
ok 1809
ok 1810 - value for RegexpRef not set
# For GlobRef
ok 1811 - correctly set a GlobRef in the constructor
ok 1812
ok 1813 - initially unset
ok 1814 - correctly set a GlobRef in the setter
ok 1815
ok 1816 - correctly set a GlobRef in the constructor
ok 1817
ok 1818 - initially unset
ok 1819 - correctly set a GlobRef in the setter
ok 1820
ok 1821
ok 1822 - no object created
ok 1823
ok 1824 - value for GlobRef not set
ok 1825
ok 1826 - no object created
ok 1827
ok 1828 - value for GlobRef not set
ok 1829
ok 1830 - no object created
ok 1831
ok 1832 - value for GlobRef not set
ok 1833
ok 1834 - no object created
ok 1835
ok 1836 - value for GlobRef not set
ok 1837
ok 1838 - no object created
ok 1839
ok 1840 - value for GlobRef not set
ok 1841
ok 1842 - no object created
ok 1843
ok 1844 - value for GlobRef not set
ok 1845
ok 1846 - no object created
ok 1847
ok 1848 - value for GlobRef not set
ok 1849
ok 1850 - no object created
ok 1851
ok 1852 - value for GlobRef not set
ok 1853
ok 1854 - no object created
ok 1855
ok 1856 - value for GlobRef not set
ok 1857
ok 1858 - no object created
ok 1859
ok 1860 - value for GlobRef not set
ok 1861
ok 1862 - no object created
ok 1863
ok 1864 - value for GlobRef not set
ok 1865
ok 1866 - no object created
ok 1867
ok 1868 - value for GlobRef not set
ok 1869
ok 1870 - no object created
ok 1871
ok 1872 - value for GlobRef not set
ok 1873
ok 1874 - no object created
ok 1875
ok 1876 - value for GlobRef not set
ok 1877
ok 1878 - no object created
ok 1879
ok 1880 - value for GlobRef not set
ok 1881
ok 1882 - no object created
ok 1883
ok 1884 - value for GlobRef not set
ok 1885
ok 1886 - no object created
ok 1887
ok 1888 - value for GlobRef not set
ok 1889
ok 1890 - no object created
ok 1891
ok 1892 - value for GlobRef not set
ok 1893
ok 1894 - no object created
ok 1895
ok 1896 - value for GlobRef not set
ok 1897
ok 1898 - no object created
ok 1899
ok 1900 - value for GlobRef not set
ok 1901
ok 1902 - no object created
ok 1903
ok 1904 - value for GlobRef not set
ok 1905
ok 1906 - no object created
ok 1907
ok 1908 - value for GlobRef not set
ok 1909
ok 1910 - no object created
ok 1911
ok 1912 - value for GlobRef not set
ok 1913
ok 1914 - no object created
ok 1915
ok 1916 - value for GlobRef not set
# For FileHandle
ok 1917 - correctly set a FileHandle in the constructor
ok 1918
ok 1919 - initially unset
ok 1920 - correctly set a FileHandle in the setter
ok 1921
ok 1922 - correctly set a FileHandle in the constructor
ok 1923
ok 1924 - initially unset
ok 1925 - correctly set a FileHandle in the setter
ok 1926
ok 1927
ok 1928 - no object created
ok 1929
ok 1930 - value for FileHandle not set
ok 1931
ok 1932 - no object created
ok 1933
ok 1934 - value for FileHandle not set
ok 1935
ok 1936 - no object created
ok 1937
ok 1938 - value for FileHandle not set
ok 1939
ok 1940 - no object created
ok 1941
ok 1942 - value for FileHandle not set
ok 1943
ok 1944 - no object created
ok 1945
ok 1946 - value for FileHandle not set
ok 1947
ok 1948 - no object created
ok 1949
ok 1950 - value for FileHandle not set
ok 1951
ok 1952 - no object created
ok 1953
ok 1954 - value for FileHandle not set
ok 1955
ok 1956 - no object created
ok 1957
ok 1958 - value for FileHandle not set
ok 1959
ok 1960 - no object created
ok 1961
ok 1962 - value for FileHandle not set
ok 1963
ok 1964 - no object created
ok 1965
ok 1966 - value for FileHandle not set
ok 1967
ok 1968 - no object created
ok 1969
ok 1970 - value for FileHandle not set
ok 1971
ok 1972 - no object created
ok 1973
ok 1974 - value for FileHandle not set
ok 1975
ok 1976 - no object created
ok 1977
ok 1978 - value for FileHandle not set
ok 1979
ok 1980 - no object created
ok 1981
ok 1982 - value for FileHandle not set
ok 1983
ok 1984 - no object created
ok 1985
ok 1986 - value for FileHandle not set
ok 1987
ok 1988 - no object created
ok 1989
ok 1990 - value for FileHandle not set
ok 1991
ok 1992 - no object created
ok 1993
ok 1994 - value for FileHandle not set
ok 1995
ok 1996 - no object created
ok 1997
ok 1998 - value for FileHandle not set
ok 1999
ok 2000 - no object created
ok 2001
ok 2002 - value for FileHandle not set
ok 2003
ok 2004 - no object created
ok 2005
ok 2006 - value for FileHandle not set
ok 2007
ok 2008 - no object created
ok 2009
ok 2010 - value for FileHandle not set
ok 2011
ok 2012 - no object created
ok 2013
ok 2014 - value for FileHandle not set
ok 2015
ok 2016 - no object created
ok 2017
ok 2018 - value for FileHandle not set
ok 2019
ok 2020 - no object created
ok 2021
ok 2022 - value for FileHandle not set
# For Object
ok 2023 - correctly set a Object in the constructor
ok 2024
ok 2025 - initially unset
ok 2026 - correctly set a Object in the setter
ok 2027
ok 2028 - correctly set a Object in the constructor
ok 2029
ok 2030 - initially unset
ok 2031 - correctly set a Object in the setter
ok 2032
ok 2033
ok 2034 - no object created
ok 2035
ok 2036 - value for Object not set
ok 2037
ok 2038 - no object created
ok 2039
ok 2040 - value for Object not set
ok 2041
ok 2042 - no object created
ok 2043
ok 2044 - value for Object not set
ok 2045
ok 2046 - no object created
ok 2047
ok 2048 - value for Object not set
ok 2049
ok 2050 - no object created
ok 2051
ok 2052 - value for Object not set
ok 2053
ok 2054 - no object created
ok 2055
ok 2056 - value for Object not set
ok 2057
ok 2058 - no object created
ok 2059
ok 2060 - value for Object not set
ok 2061
ok 2062 - no object created
ok 2063
ok 2064 - value for Object not set
ok 2065
ok 2066 - no object created
ok 2067
ok 2068 - value for Object not set
ok 2069
ok 2070 - no object created
ok 2071
ok 2072 - value for Object not set
ok 2073
ok 2074 - no object created
ok 2075
ok 2076 - value for Object not set
ok 2077
ok 2078 - no object created
ok 2079
ok 2080 - value for Object not set
ok 2081
ok 2082 - no object created
ok 2083
ok 2084 - value for Object not set
ok 2085
ok 2086 - no object created
ok 2087
ok 2088 - value for Object not set
ok 2089
ok 2090 - no object created
ok 2091
ok 2092 - value for Object not set
ok 2093
ok 2094 - no object created
ok 2095
ok 2096 - value for Object not set
ok 2097
ok 2098 - no object created
ok 2099
ok 2100 - value for Object not set
ok 2101
ok 2102 - no object created
ok 2103
ok 2104 - value for Object not set
ok 2105
ok 2106 - no object created
ok 2107
ok 2108 - value for Object not set
ok 2109
ok 2110 - no object created
ok 2111
ok 2112 - value for Object not set
ok 2113
ok 2114 - no object created
ok 2115
ok 2116 - value for Object not set
ok 2117
ok 2118 - no object created
ok 2119
ok 2120 - value for Object not set
ok 2121
ok 2122 - no object created
ok 2123
ok 2124 - value for Object not set
ok 2125
ok 2126 - no object created
ok 2127
ok 2128 - value for Object not set
1..2128
ok
t/001_mouse/025-more-isa.t .....................................
ok 1 - Class->can('tb')
ok 2
ok 3
ok 4
ok 5 - The object isa Test::Builder
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19
ok 20
ok 21
ok 22
ok 23
ok 24
ok 25
ok 26
ok 27
ok 28
ok 29
ok 30
ok 31
ok 32
ok 33
ok 34
ok 35
ok 36
1..36
ok
t/001_mouse/026-auto-deref.t ...................................
1..15
ok 1
ok 2
ok 3 - auto_deref without defaults don't explode on new
ok 4 - auto_deref without default doesn't explode on get
ok 5 - array without value is undef in scalar context
ok 6 - hash without value is undef in scalar context
ok 7 - array without value is empty in list context
ok 8 - hash without value is empty in list context
ok 9 - setter returns the dereferenced list
ok 10 - setter returns the dereferenced hash
ok 11 - auto_deref without default doesn't explode on get
ok 12 - auto_deref in scalar context gives the reference
ok 13 - auto_deref in scalar context gives the reference
ok 14 - auto_deref in list context gives the list
ok 15 - auto_deref in list context gives the hash
ok
t/001_mouse/027-modifiers.t ....................................
1..25
ok 1 - multiple afters called in the right order
ok 2 - SuperL loaded correctly
ok 3 - SuperR loaded correctly
ok 4 - MiddleL loaded correctly
ok 5 - MiddleR loaded correctly
ok 6 - Child loaded correctly
ok 7 - SuperL->sl_c on SuperL
ok 8 - SuperL->sl_c wrapped by Child's around
ok 9 - SuperR->sr_c on SuperR
ok 10 - SuperR->sr_c wrapped by Child's around
ok 11 - SuperR->sr_m_c on SuperR
ok 12 - SuperR->sr_m_c wrapped by MiddleR's around
ok 13 - MiddleR->sr_m_c's wrapping wrapped by Child's around
ok 14 - SuperL->conflict on SuperL
ok 15 - MiddleR->conflict on MiddleR
ok 16 - SuperL->conflict on Child
ok 17 - SuperL->cnf_mod on SuperL
ok 18 - MiddleR->cnf_mod on MiddleR
ok 19 - SuperL->cnf_mod wrapped by Child's around
ok 20 - original method called
ok 21 - after-modifier called
ok 22 - list context with after doesn't screw up 'return'
ok 23 - original method called
ok 24 - after-modifier called
ok 25 - scalar context with after doesn't screw up 'return'
ok
t/001_mouse/028-subclass-attr.t ................................
ok 1 - local attribute set in constructor
ok 2 - inherited attribute set in constructor
ok 3 - correct get_all_attributes
ok 4 - correct get_all_attributes
ok 5 - local attribute set in constructor
ok 6 - inherited attribute set in constructor
ok 7 - correct get_all_attributes
ok 8 - correct get_all_attributes
ok 9 - subclass does not affect parent attr
ok 10 - new attribute does not have the new default
ok 11
ok 12
ok 13
ok 14
ok 15 - correct get_all_attributes
ok 16 - correct get_all_attributes
ok 17 - subclass does not affect parent attr
ok 18 - new attribute does not have the new default
ok 19
ok 20
ok 21
ok 22
ok 23 - correct get_all_attributes
ok 24 - correct get_all_attributes
1..24
ok
t/001_mouse/029-new.t ..........................................
1..7
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok
t/001_mouse/030-has-plus.t .....................................
1..3
ok 1 - has + does not affect the superclass
ok 2 - has + combines child attribute with parent
ok 3
ok
t/001_mouse/031-clone.t ........................................
ok 1 - attr 1
ok 2 - init_arg respected
ok 3
ok 4 - attr 2
ok 5
ok 6 - clone_object() invokes triggers
ok 7 - overridden attr
ok 8 - clone attr
ok 9 - init_arg=undef means the attr is ignored
ok 10 - clone uses init_arg and not attribute name
ok 11 - clone() with required attributes
ok 12
ok 13
1..13
ok
t/001_mouse/032-buildargs.t ....................................
1..11
ok 1
ok 2
ok 3
ok 4
ok 5 - values must be copied
ok 6 - values must be copied
ok 7
ok 8
ok 9 - no value
ok 10 - single arg
ok 11 - twoargs
ok
t/001_mouse/033-requires.t .....................................
1..1
ok 1
ok
t/001_mouse/034-apply_all_roles.t ..............................
ok 1
ok 2
ok 3
# Mouse::Meta::Class::__ANON__::2=HASH(0x10091a0a0)
ok 4
ok 5
# Mouse::Meta::Class::__ANON__::3=HASH(0x1009145d8)
ok 6
ok 7
# Mouse::Meta::Class::__ANON__::5=HASH(0x100915028)
ok 8
ok 9
1..9
ok
t/001_mouse/035-apply-roles-to-roles.t .........................
1..5
ok 1
ok 2
ok 3
ok 4
ok 5
ok
t/001_mouse/036-with-method-alias.t ............................
1..6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok
t/001_mouse/037-dont-load-test-exception.t .....................
1..1
ok 1 - don't load Test::Exception on production environment
ok
t/001_mouse/039-subtype.t ......................................
1..14
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok
t/001_mouse/040-existing-subclass.t ............................
1..3
not ok 1 - Mouse warns when it would have blown away the inherited constructor # TODO Mouse doesn't track enough context
# Failed (TODO) test 'Mouse warns when it would have blown away the inherited constructor'
# at t/001_mouse/040-existing-subclass.t line 25.
# STDERR is:
#
# not:
# Not inlining a constructor for Child since it is not inheriting the default Mouse::Object constructor
#
# as expected
ok 2 - Mouse does not warn about inlining a constructor when the superclass inlined a constructor
ok 3
ok
t/001_mouse/041-enum.t .........................................
1..19
ok 1
ok 2
ok 3
ok 4
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 17 - enum $name, $array_ref
ok 18
ok 19
ok
t/001_mouse/042-override.t .....................................
1..3
ok 1
ok 2
ok 3
ok
# derived from parameterized types #1
# derived from parameterized types #2
t/001_mouse/043-parameterized-type.t ...........................
ok 1
ok 2 - foo is a proper hash
ok 3 - bar is a proper array
ok 4 - complex is a proper ... structure
ok 5
ok 6 - The object isa My::Class
ok 7
ok 8 - Bad args for hash throws an exception
ok 9 - Bad args for array throws an exception
ok 10 - Bad args for complex types throws an exception
ok 11
ok 12
ok 13
ok 14
ok 15 - list is as expected
ok 16 - Bad coercion parameter throws an error
ok 17 - Maybe[Int] is a type of Maybe[Int]
ok 18 - Maybe[Int] is a type of Maybe
ok 19 - Maybe[Int] is a type of Maybe[Int]
ok 20
ok 21
ok 22
ok 23
ok 24 - Maybe[Int] is a type of Maybe[Int]
ok 25 - Maybe[Int] is a type of Maybe
ok 26 - Maybe[Int] is a type of Maybe[Int]
ok 27
ok 28
ok 29
ok 30
ok 31
ok 32
ok 33
ok 34
ok 35
ok 36
ok 37
ok 38
ok 39
ok 40
ok 41
ok 42
ok 43
ok 44
ok 45
ok 46
ok 47 - magical array
ok 48
ok 49 - magical hash
ok 50
ok 51
ok 52
ok 53
ok 54 - the hash iterator is initialized
ok 55 - MyHashRef
ok 56
ok 57
ok 58
ok 59
ok 60
ok 61 - H
ok 62
ok 63
ok 64 - empty hash
ok 65
ok 66
ok 67
ok 68
ok 69
ok 70
ok 71
ok 72 - MyHashRef
ok 73
ok 74
ok 75
ok 76
ok 77
ok 78 - H
ok 79
ok 80
ok 81 - empty hash
ok 82
ok 83
ok 84
ok 85
ok 86
ok 87
ok 88
1..88
ok
t/001_mouse/044-attribute-metaclass.t ..........................
1..7
ok 1 - MyClass->can('i_add')
ok 2
ok 3 - MyClassWithTraits->can(...)
ok 4
ok 5
ok 6
ok 7
ok
t/001_mouse/045-import-into_level.t ............................
1..1
ok 1
ok
t/001_mouse/046-meta-add_attribute.t ...........................
1..1
ok 1
ok
t/001_mouse/047-attribute-metaclass-role.t .....................
1..7
ok 1 - Klass1->can('add_number')
ok 2
ok 3 - Klass2->can('f_m')
ok 4 - Klass2->can('b_m')
ok 5 - Klass2->can('add_number')
ok 6 - Klass2->can('add_number_j')
ok 7
ok
t/001_mouse/049-coercion-application-order.t ...................
1..3
ok 1 - initial date is correct: 2001-01-01
ok 2 - initial date field correct: 2001-01-01
ok 3 - coerced timestamp 1238778317 to date field 2009-04-03 correctly
ok
t/001_mouse/050-inherited-immutable-constructor-bug.t ..........
1..8
ok 1 - The object isa SausageDog
ok 2 - The object isa Dog
ok 3 - Fritz is not a Sausage
ok 4 - Fritz does Sausage
ok 5 - SausageDog->can(...)
ok 6 - Fritz has gristle
ok 7 - Fritz has a tail
ok 8 - Fritz has a yap
ok
t/001_mouse/051_throw_error.t ..................................
1..4
ok 1
ok 2
ok 3
ok 4
ok
t/001_mouse/052-undefined-type-in-union.t ...................... skipped: suspending
t/001_mouse/053-extends-meta.t .................................
1..14
ok 1 - The object isa My::Meta::Class
ok 2 - The object isa Mouse::Meta::Class
ok 3 - My::Meta::Class->can(...)
ok 4
ok 5
ok 6 - The object isa My::Meta::Role
ok 7 - The object isa Mouse::Meta::Class
ok 8 - My::Meta::Role->can(...)
ok 9
ok 10
ok 11 - The object isa My::Meta::Attribute
ok 12 - My::Meta::Attribute->can(...)
ok 13
ok 14
ok
t/001_mouse/054-anon-leak.t ....................................
1..6
ok 1 - create_anon_class() (leaks 0 <= 0)
ok 2 - create_anon_class() with superclasses (leaks 0 <= 0)
ok 3 - create_anon_class() with attributes (leaks 0 <= 0)
ok 4 - create_anon_class() with roles (leaks 0 <= 0)
ok 5 - create_anon_role() (leaks 0 <= 0)
ok 6 - create_anon_role() with roles (leaks 0 <= 0)
ok
t/001_mouse/055-exporter.t .....................................
1..14
ok 1 - MyMouse->can(...)
ok 2 - MyMouseEx->can(...)
ok 3 - MyApp->can('meta')
ok 4 - foo is imported
ok 5 - has is also imported
ok 6 - foo is unimported
ok 7 - has is also unimported
ok 8 - MyAppEx->can('meta')
ok 9 - foo is imported
ok 10 - foo is also imported
ok 11 - has is also imported
ok 12 - foo is unimported
ok 13 - foo is also unimported
ok 14 - has is also unimported
ok
t/001_mouse/056-role-combine.t .................................
1..2
ok 1
ok 2
ok
t/001_mouse/057_subtype_without_where.t ........................
1..4
ok 1 - The object isa Class
ok 2
ok 3 - The object isa Class
ok 4
ok
t/001_mouse/058-accessor-leaks.t ...............................
1..11
ok 1 - leaks 0 <= 0
ok 2 - leaks 0 <= 0
ok 3 - leaks 0 <= 0
ok 4 - leaks 0 <= 0
ok 5 - leaks 0 <= 0
ok 6 - leaks 0 <= 0
ok 7 - leaks 0 <= 0
ok 8 - leaks 0 <= 0
ok 9 - leaks 0 <= 0
ok 10 - leaks 0 <= 0
ok 11 - leaks 0 <= 0
ok
t/001_mouse/059-weak-with-default.t ............................
1..6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok
t/001_mouse/060-threads.t ...................................... skipped: FIXME
t/001_mouse/061-metaclass-compatibility.t ......................
ok 1 - BaseClass->meta->does("FooTrait")
ok 2 - !BaseClass->meta->does("BarTrait")
ok 3 - SubClass->meta->does("FooTrait")
ok 4 - SubClass->meta->does("BarTrait")
ok 5 - SubSubClass->meta->does("FooTrait")
ok 6 - SubSubClass->meta->does("BarTrait")
1..6
ok
t/001_mouse/062-duck_type.t ....................................
1..15
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok 15
ok
t/001_mouse/063-meta-of-metaclasses.t ..........................
1..10
ok 1 - Mouse::Meta::Class->can('meta')
ok 2 - Mouse::Meta::Method::Constructor::XS->can('meta')
ok 3 - Mouse::Meta::Method::Destructor::XS->can('meta')
ok 4 - Mouse::Meta::Attribute->can('meta')
ok 5 - Mouse::Meta::Method->can('meta')
ok 6 - Mouse::Meta::Attribute->can('meta')
ok 7 - Mouse::Meta::Method::Accessor::XS->can('meta')
ok 8 - Mouse::Meta::Method::Delegation->can('meta')
ok 9 - Mouse::Meta::Class->can('meta')
ok 10 - Mouse::Meta::Method->can('meta')
ok
t/001_mouse/064-class-c3.t .....................................
1..1
ok 1
ok
t/001_mouse/065-attr-mop.t .....................................
1..10
ok 1 - mutable
ok 2 - has_value
ok 3 - set_value/get_value
ok 4 - has_value
ok 5 - clear_value
ok 6 - immutable
ok 7 - has_value
ok 8 - set_value/get_value
ok 9 - has_value
ok 10 - clear_value
ok
t/001_mouse/066-magic.t ........................................
1..6
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
ok
t/001_mouse/067-traits.t .......................................
ok 1 - The object does MyMouseX::Foo::Class
ok 2 - The object does MyMouseX::Foo::Method
ok 3 - The object does MyMouseX::Bar::Class
ok 4 - The object does MyMouseX::Bar::Method
ok 5 - The object does MyMouseX::Foo::Class
ok 6 - The object does MyMouseX::Foo::Method
ok 7 - The object does MyMouseX::Foo::Class
ok 8 - The object does MyMouseX::Foo::Method
ok 9 - The object does MyMouseX::Bar::Class
ok 10 - The object does MyMouseX::Bar::Method
1..10
ok
t/001_mouse/068-strict-constructor.t ...........................
ok 1 - The object isa MyClass
ok 2
ok 3 - The object isa MyClass
ok 4
ok 5
ok 6 - init_arg => undef
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13 - The object isa MyClass
ok 14
ok 15 - The object isa MyClass
ok 16
ok 17
ok 18 - init_arg => undef
ok 19
ok 20
ok 21
ok 22
ok 23
ok 24
1..24
ok
t/001_mouse/069-add-modifier.t .................................
ok 1
ok 2 - add_around_modifier
1..2
ok
t/001_mouse/070-inherit-role-attr.t ............................
ok 1
ok 2
ok 3
ok 4
ok 5
1..5
ok
t/001_mouse/071_tc_dualvar.t ...................................
ok 1 - Int for dualvar
ok 2 - Num for dualvar
ok 3
ok 4 - keeps dualvar-ness
1..4
ok
t/001_mouse/072_tc_extra_args.t ................................
1..2
ok 1
ok 2
ok
t/001_mouse/073_errsv.t ........................................
1..1
ok 1
ok
t/001_mouse/074_default_errsv.t ................................
1..1
ok 1
ok
t/001_mouse/100-meta-class.t ...................................
ok 1 - The object isa Mouse::Meta::Class
ok 2 - correctly inherting from Mouse::Object
ok 3 - same metaclass instance
ok 4 - Mouse::Meta::Class->can(...)
ok 5
ok 6 - The object isa Mouse::Meta::Attribute
ok 7 - got the correct attribute
ok 8 - attribute list
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19 - same metaclass instance, even if use Mouse is performed again
ok 20 - name for the metaclass
ok 21 - The object isa Mouse::Meta::Class
ok 22 - different metaclass instances for the two classes
ok 23 - correct superclasses
ok 24
ok 25
ok 26
ok 27 - Mouse::Meta::Class->can('find_method_by_name')
ok 28
ok 29
ok 30
1..30
ok
t/001_mouse/101-meta-attribute.t ...............................
1..10
ok 1 - The object isa Mouse::Meta::Class
ok 2 - The object isa Mouse::Meta::Attribute
ok 3 - Mouse::Meta::Attribute->can(...)
ok 4 - attribute name
ok 5 - associated_class
ok 6 - predicate
ok 7 - clearer
ok 8 - not lazy_build
ok 9 - default is a coderef
ok 10 - verify_against_type_constraint works even without isa
ok
t/001_mouse/102-attr-default-with-instance.t ...................
ok 1 - default() returns CodeRef
ok 2 - default($instance) returns resolved values
1..2
ok
t/001_mouse/301-bugs-non-mouse.t ...............................
ok 1 - inherit attr when @ISA contains a non Mouse class before a Mouse class with the base attr
ok 2 - inherited attribute
1..2
ok
t/001_mouse/400-define-role.t ..................................
1..11
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6
not ok 7 - excludes # TODO Mouse::Role does not currently support 'excludes'
# Failed (TODO) test 'excludes'
# at t/001_mouse/400-define-role.t line 76.
ok 8
ok 9
ok 10
ok 11
ok
t/001_mouse/401-meta-role.t ....................................
1..5
ok 1 - Role has a meta
ok 2 - The object isa Mouse::Meta::Role
ok 3
ok 4 - Role doesn't have attr attribute yet
ok 5 - Role has an attr now
ok
t/001_mouse/402-attribute-application.t ........................
1..11
ok 1
ok 2 - role application added the attribute
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9 - local class wins over the role
ok 10
ok 11 - role wins over the parent method
ok
t/001_mouse/403-method-modifiers.t .............................
1..4
ok 1
ok 2
ok 3
ok 4
ok
t/001_mouse/404-role-overrides.t ...............................
1..2
ok 1
ok 2
ok
t/001_mouse/600-tiny-tiny.t ....................................
1..2
ok 1
ok 2
ok
t/001_mouse/601-tiny-mouse.t ...................................
1..2
ok 1
ok 2
ok
t/001_mouse/602-mouse-tiny.t ...................................
1..2
ok 1
ok 2
ok
t/001_mouse/603-mouse-pureperl.t ...............................
1..1
ok 1 - load Mouse::PurePerl
ok
t/001_mouse/801-coerce.t .......................................
1..6
ok 1 - The object isa Headers
ok 2
ok 3 - The object isa Headers
ok 4
ok 5
ok 6
ok
t/001_mouse/802-coerce_multi_class.t ...........................
1..13
ok 1
ok 2
ok 3
ok 4
ok 5
ok 6 - The object isa Response::Headers
ok 7
ok 8 - The object isa Response::Headers
ok 9
ok 10 - The object isa Response::Headers
ok 11
ok 12 - The object isa Response::Headers
ok 13
ok
t/001_mouse/804-immutable-demolish.t ...........................
1..2
ok 1
ok 2
ok
t/001_mouse/805-class_type.t ...................................
1..4
ok 1 - The object isa t::lib::ClassType_Foo
ok 2
ok 3 - The object isa t::lib::ClassType_Foo
ok 4
ok
t/001_mouse/806-role_type.t ....................................
ok 1 - The object isa Response::Headers
ok 2
ok 3 - The object isa Response::Headers
ok 4
ok 5
ok 6
1..6
ok
t/001_mouse/807-multi-roles.t ..................................
1..3
ok 1
ok 2
ok 3
ok
t/001_mouse/808-create_class.t .................................
1..25
ok 1
ok 2
ok 3
ok 4 - The object isa Mouse::Meta::Class
ok 5
ok 6 - The object isa Mouse::Meta::Class
ok 7 - The object isa FooBar
ok 8
ok 9
ok 10 - create_anon_class isa Mouse::Meta::Class
ok 11 - is_anon_class
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19 - cache => 1 makes it immortal
ok 20
ok 21
ok 22 - make anon class immutable
ok 23 - The object isa Mouse::Object
ok 24 - Mouse::Meta::Class::__ANON__::4->can('meta')
ok 25 - The object isa Mouse::Meta::Class
ok
t/001_mouse/809-overwrite-builtin-subtype.t ....................
1..1
ok 1
ok
t/001_mouse/810-isa-or.t .......................................
1..22
ok 1 - type constraint and coercion failed
ok 2 - The object isa Foo
ok 3 - got an object 1
ok 4 - The object isa Foo
ok 5 - got an object 2
ok 6 -
ok 7 - bar is baz (coerce from ArrayRef)
ok 8
ok 9 - bar is hoge
ok 10
ok 11 - bar is undef
ok 12 - got an object 3
ok 13 - foo is Name
ok 14
ok 15 - got an object 4
ok 16 - foo is Name
ok 17 - The object isa KLASS
ok 18 - foo is undef
ok 19
ok 20
ok 21
ok 22
ok
t/001_mouse/811-util-linear-isa.t ..............................
1..2
ok 1
ok 2
ok
t/001_mouse/812-role-compatibility.t ...........................
1..5
ok 1 - does ChildRole
ok 2 - does ParentRole
ok 3 - Class->can(...)
ok 4
ok 5
ok
t/001_mouse/813-compatibility-get_method_list.t ................
1..6
ok 1 - mutable Mouse
ok 2 - immutable Mouse
ok 3 - role Mouse
ok 4 - role Mouse
ok 5 - Mouse with a role
ok 6 - Mouse with roles
ok
t/001_mouse/814-subtype-as.t ...................................
1..12
ok 1
ok 2
ok 3
ok 4
ok 5 - The object isa Foo
ok 6
ok 7 - The object isa Foo
ok 8
ok 9 - The object isa Foo
ok 10
ok 11 - The object isa Foo
ok 12
ok
t/010_basics/001_basic_class_setup.t ...........................
1..29
ok 1 - Foo->can('meta')
ok 2 - The object isa Mouse::Meta::Class
ok 3 - ... we got the &meta method
ok 4 - ... Foo is automagically a Mouse::Object
ok 5 - ... has_method requires an arg
ok 6 - Foo->can('does')
ok 7 - ... the meta does not treat "extends" as a method
ok 8 - ... the meta does not treat "has" as a method
ok 9 - ... the meta does not treat "before" as a method
ok 10 - ... the meta does not treat "after" as a method
ok 11 - ... the meta does not treat "around" as a method
ok 12 - ... the meta does not treat "blessed" as a method
ok 13 - ... the meta does not treat "confess" as a method
ok 14 - ... the meta does not treat "type" as a method
ok 15 - ... the meta does not treat "subtype" as a method
ok 16 - ... the meta does not treat "as" as a method
ok 17 - ... the meta does not treat "where" as a method
ok 18 - ... the meta does not treat "coerce" as a method
ok 19 - ... the meta does not treat "from" as a method
ok 20 - ... the meta does not treat "via" as a method
ok 21 - ... the meta does not treat "find_type_constraint" as a method
ok 22 - no namespace pollution in Mouse::Object (blessed)
not ok 23 - no namespace pollution in Mouse::Object (blessed) # TODO no automatic namespace cleaning yet
# Failed (TODO) test 'no namespace pollution in Mouse::Object (blessed)'
# at t/010_basics/001_basic_class_setup.t line 50.
ok 24 - no namespace pollution in Mouse::Object (try)
ok 25 - no namespace pollution in Mouse::Object (try)
ok 26 - no namespace pollution in Mouse::Object (catch)
ok 27 - no namespace pollution in Mouse::Object (catch)
ok 28 - no namespace pollution in Mouse::Object (in_global_destruction)
ok 29 - no namespace pollution in Mouse::Object (in_global_destruction)
ok
t/010_basics/002_require_superclasses.t ........................
1..4
ok 1 - loaded Foo superclass correctly
ok 2 - loaded (inline) Bar superclass correctly
ok 3 - loaded Foo and (inline) Bar superclass correctly
ok 4 - correct error when superclass could not be found
ok
t/010_basics/003_super_and_override.t ..........................
1..16
ok 1 - The object isa Baz
ok 2 - The object isa Bar
ok 3 - The object isa Foo
ok 4 - ... got the right value from &foo
ok 5 - ... got the right value from &bar
ok 6 - ... got the right value from &baz
ok 7 - The object isa Bar
ok 8 - The object isa Foo
ok 9 - ... got the right value from &foo
ok 10 - ... got the right value from &bar
ok 11 - ... got the right value from &baz
ok 12 - The object isa Foo
ok 13 - ... got the right value from &foo
ok 14 - ... got the right value from &bar
ok 15 - ... got the right value from &baz
ok 16 - ... cannot override a method which has a local equivalent
ok
t/010_basics/004_inner_and_augment.t ...........................
1..16
ok 1 - The object isa Baz
ok 2 - The object isa Bar
ok 3 - The object isa Foo
ok 4 - ... got the right value from &foo
ok 5 - ... got the right value from &bar
ok 6 - ... got the right value from &baz
ok 7 - The object isa Bar
ok 8 - The object isa Foo
ok 9 - ... got the right value from &foo
ok 10 - ... got the right value from &bar
ok 11 - ... got the right value from &baz
ok 12 - The object isa Foo
ok 13 - ... got the right value from &foo
ok 14 - ... got the right value from &bar
ok 15 - ... got the right value from &baz
ok 16 - ... cannot augment a method which has a local equivalent
ok
t/010_basics/005_override_augment_inner_super.t ................
1..5
ok 1 - The object isa Baz
ok 2 - The object isa Bar
ok 3 - The object isa Foo
ok 4 - ... got the right value from mixed augment/override foo
not ok 5 - ... got the right value from mixed augment/override bar # TODO mixed augment/override is not supported
# Failed (TODO) test '... got the right value from mixed augment/override bar'
# at t/010_basics/005_override_augment_inner_super.t line 70.
# got: 'Bar::bar -> Foo::bar()'
# expected: 'Bar::bar -> Foo::bar(Baz::bar)'
ok
t/010_basics/006_override_and_foreign_classes.t ................
1..15
ok 1 - The object isa Baz
ok 2 - The object isa Bar
ok 3 - The object isa Foo
ok 4 - ... got the right value from &foo
ok 5 - ... got the right value from &bar
ok 6 - ... got the right value from &baz
ok 7 - The object isa Bar
ok 8 - The object isa Foo
ok 9 - ... got the right value from &foo
ok 10 - ... got the right value from &bar
ok 11 - ... got the right value from &baz
ok 12 - The object isa Foo
ok 13 - ... got the right value from &foo
ok 14 - ... got the right value from &bar
ok 15 - ... got the right value from &baz
ok
t/010_basics/007_always_strict_warnings.t ......................
1..15
ok 1 - ... got an error because strict is on
ok 2 - ... got the right error
ok 3 - ... no warning yet
ok 4 - ... got a warning
ok 5 - .. and it is the right warning
ok 6 - ... got an error because strict is on
ok 7 - ... got the right error
ok 8 - ... no warning yet
ok 9 - ... got a warning
ok 10 - .. and it is the right warning
ok 11 - ... got an error because strict is on
ok 12 - ... got the right error
ok 13 - ... no warning yet
ok 14 - ... got a warning
ok 15 - .. and it is the right warning
ok
t/010_basics/008_wrapped_method_cxt_propagation.t ..............
1..7
ok 1 - array context (TouchyBase)
ok 2 - scalar context (TouchyBase)
ok 3 - void context (TouchyBase)
ok 4 - array context (AfterSub)
ok 5 - scalar context (AfterSub)
ok 6 - void context (AfterSub)
ok 7 - methods were wrapped
ok
t/010_basics/009_import_unimport.t .............................
1..40
ok 1 - Foo->can('extends')
ok 2 - Foo->can('with')
ok 3 - Foo->can('has')
ok 4 - Foo->can('before')
ok 5 - Foo->can('after')
ok 6 - Foo->can('around')
ok 7 - Foo->can('override')
ok 8 - Foo->can('augment')
ok 9 - Foo->can('super')
ok 10 - Foo->can('inner')
ok 11 - ... Foo can no longer do extends
ok 12 - ... Foo can no longer do with
ok 13 - ... Foo can no longer do has
ok 14 - ... Foo can no longer do before
ok 15 - ... Foo can no longer do after
ok 16 - ... Foo can no longer do around
ok 17 - ... Foo can no longer do override
ok 18 - ... Foo can no longer do augment
ok 19 - ... Foo can no longer do super
ok 20 - ... Foo can no longer do inner
ok 21 - Bar->can('type')
ok 22 - Bar->can('subtype')
ok 23 - Bar->can('as')
ok 24 - Bar->can('where')
ok 25 - Bar->can('message')
ok 26 - Bar->can('coerce')
ok 27 - Bar->can('from')
ok 28 - Bar->can('via')
ok 29 - Bar->can('enum')
ok 30 - Bar->can('find_type_constraint')
ok 31 - ... Bar can no longer do type
ok 32 - ... Bar can no longer do subtype
ok 33 - ... Bar can no longer do as
ok 34 - ... Bar can no longer do where
ok 35 - ... Bar can no longer do message
ok 36 - ... Bar can no longer do coerce
ok 37 - ... Bar can no longer do from
ok 38 - ... Bar can no longer do via
ok 39 - ... Bar can no longer do enum
ok 40 - ... Bar can no longer do find_type_constraint
ok
t/010_basics/010_method_modifier_with_regexp.t .................
1..9
ok 1 - around modifier is called
ok 2 - around modifier is called
ok 3 - before modifier is called once
ok 4 - after modifier is called once
ok 5 - before modifier is called twice
ok 6 - after modifier is called twice
ok 7 - ... this is not currently supported
ok 8 - ... this is not currently supported
ok 9 - ... this is not currently supported
ok
t/010_basics/011_moose_respects_type_constraints.t .............
1..7
ok 1 - The object isa Mouse::Meta::TypeConstraint
ok 2 - ... got the Value subtype for Foo
ok 3 - ... my constraint passed correctly
ok 4 - ... my constraint failed correctly
ok 5 - The object isa Bar
ok 6 - ... checked the type constraint correctly
ok 7 - ... checked the type constraint correctly
ok
t/010_basics/013_create.t ......................................
1..7
ok 1 - creating lives
ok 2
ok 3
ok 4 - $with_foo isa Class
ok 5
ok 6 - did not create Made::Of::Fail
ok 7 - conflicting roles == death
ok
t/010_basics/014_create_anon.t .................................
ok 1 - creating the same class twice without caching results in 2 classes
ok 2
ok 3
ok 4 - with cache, the same class is the same class
ok 5
ok 6
ok 7 - class_and_foo and class_and_bar are different
ok 8
ok 9 - Mouse::Meta::Class::__ANON__::5->can('meta')
1..9
ok
t/010_basics/015_buildargs.t ...................................
1..14
ok 1 - no args
ok 2 - normal args
ok 3 - single arg
ok 4 - ... got the right bar
ok 5 - ... got the right bar
ok 6 - ... got the right bar
ok 7 - ... got the right bar
ok 8 - no args
ok 9 - normal args
ok 10 - single arg
ok 11 - ... got the right bar
ok 12 - ... got the right bar
ok 13 - ... got the right bar
ok 14 - ... got the right bar
ok
t/010_basics/017_error_handling.t ..............................
1..3
ok 1 - A single non-hashref arg to a constructor throws an error
ok 2 - A single non-hashref arg to a constructor throws an error
ok 3 - Cannot call does() without a role name
ok
t/010_basics/018_methods.t .....................................
1..6
ok 1 - associated_metaclass is defined
ok 2 - associated_metaclass is correct class isa Mouse::Meta::Class
ok 3 - associated_metaclass->name looks like an anonymous class
ok 4 - associated_metaclass is defined
ok 5 - associated_metaclass is correct class isa Mouse::Meta::Class
ok 6 - associated_metaclass->name is Test2
ok
t/010_basics/019-destruction.t .................................
1..3
ok 1 - Foo demolished properly
ok 2 - Foo::Sub demolished properly
ok 3 - Foo::Sub::Sub demolished properly
ok
t/010_basics/020-global-destruction.t ..........................
ok 1 - in_global_destruction state is passed to DEMOLISH properly (false)
ok 2 - in_global_destruction state is passed to DEMOLISH properly (false)
ok 3 - in_global_destruction state is passed to DEMOLISH properly (true)
ok 4 - in_global_destruction state is passed to DEMOLISH properly (true)
ok 5 - exited successfully
1..5
ok
t/020_attributes/001_attribute_reader_generation.t .............
ok 1 - ... created the reader method okay
ok 2 - ... created the lazy reader method okay
ok 3 - ... got a warning for mispelled attribute argument
ok 4 - The object isa Foo
ok 5 - Foo->can('get_foo')
ok 6 - ... got an undefined value
ok 7 - ... get_foo is a read-only
ok 8 - ... no value in get_lazy_foo slot
ok 9 - Foo->can('get_lazy_foo')
ok 10 - ... got an deferred value
ok 11 - ... get_lazy_foo is a read-only
ok 12 - The object isa Foo
ok 13 - The object isa Mouse::Meta::Attribute
ok 14 - it's lazy
# skip Moose specific features
ok 15 - The object isa Foo
ok 16 - ... got the correct value
ok 17 - ... got the correct value
1..17
ok
t/020_attributes/002_attribute_writer_generation.t .............
ok 1 - ... created the writer method okay
ok 2 - ... created the required writer method okay
ok 3 - ... created the writer method with type constraint okay
ok 4 - ... created the writer method with weak_ref okay
ok 5 - The object isa Foo
ok 6 - Foo->can('set_foo')
ok 7 - ... got an unset value
ok 8 - ... set_foo wrote successfully
ok 9 - ... got the correct set value
ok 10 - ... it is not a weak reference
ok 11 - ... cannot create without the required attribute
ok 12 - Foo->can('set_foo_required')
ok 13 - ... got an unset value
ok 14 - ... set_foo_required wrote successfully
ok 15 - ... got the correct set value
ok 16 - ... set_foo_required died successfully with no value
ok 17 - ... set_foo_required did accept undef
ok 18 - ... it is not a weak reference
ok 19 - Foo->can('set_foo_int')
ok 20 - ... got an unset value
ok 21 - ... set_foo_int wrote successfully
ok 22 - ... got the correct set value
ok 23 - ... set_foo_int died successfully
ok 24 - ... it is not a weak reference
ok 25 - Foo->can('set_foo_weak')
ok 26 - ... got an unset value
ok 27 - ... set_foo_weak wrote successfully
ok 28 - ... got the correct set value
ok 29 - ... it is a weak reference
1..29
ok
t/020_attributes/003_attribute_accessor_generation.t ...........
ok 1 - ... created the accessor method okay
ok 2 - ... created the lazy accessor method okay
ok 3 - ... created the required accessor method okay
ok 4 - ... created the accessor method with type constraint okay
ok 5 - ... created the accessor method with weak_ref okay
ok 6 - ... created the accessor method with auto_deref okay
ok 7 - ... created the reader method with auto_deref okay
ok 8 - ... created the reader method with auto_deref okay
ok 9 - The object isa Foo
ok 10 - Foo->can('foo')
ok 11 - ... got an unset value
ok 12 - ... foo wrote successfully
ok 13 - ... got the correct set value
ok 14 - ... it is not a weak reference
ok 15 - ... cannot create without the required attribute
ok 16 - Foo->can('foo_required')
ok 17 - ... got an unset value
ok 18 - ... foo_required wrote successfully
ok 19 - ... got the correct set value
ok 20 - ... foo_required did not die with undef
ok 21 - value is undef
ok 22 - ... it is not a weak reference
ok 23 - ... no value in lazy_foo slot
ok 24 - Foo->can('lazy_foo')
ok 25 - ... got an deferred value
ok 26 - Foo->can('foo_int')
ok 27 - ... got an unset value
ok 28 - ... foo_int wrote successfully
ok 29 - ... got the correct set value
ok 30 - ... foo_int died successfully
ok 31 - ... it is not a weak reference
ok 32 - Foo->can('foo_weak')
ok 33 - ... got an unset value
ok 34 - ... foo_weak wrote successfully
ok 35 - ... got the correct set value
ok 36 - ... it is a weak reference
ok 37 - Foo->can('foo_deref')
ok 38 - ... default default value
ok 39 - ... doesn't deref undef value
ok 40 - returns empty list in list context
ok 41 - ... foo_deref wrote successfully
ok 42 - returns an array reference in scalar context
ok 43 - correct array
ok 44 - returns list in list context
ok 45 - correct list
ok 46 - Foo->can('foo_deref')
ok 47 - ... default default value
ok 48 - ... read only
ok 49 - scalar context ro
ok 50 - list context ro
ok 51 - Foo->can('foo_deref_hash')
ok 52 - ... default default value
ok 53 - ... doesn't deref undef value
ok 54 - returns empty list in list context
ok 55 - ... foo_deref_hash wrote successfully
ok 56 - scalar context
ok 57 - list context
1..57
ok
t/020_attributes/004_attribute_triggers.t ......................
ok 1 - The object isa Foo
ok 2 - The object isa Bar
ok 3 - The object isa Baz
ok 4 - ... did not die setting bar
ok 5 - ... set the value foo.bar correctly
ok 6 - ... which in turn set the value bar.foo correctly
ok 7 - ... bar.foo is a weak reference
ok 8 - ... did not die un-setting bar
ok 9 - ... set the value foo.bar correctly
ok 10 - ... which in turn set the value bar.foo correctly
ok 11 - ... did not die setting baz
ok 12 - ... set the value foo.baz correctly
ok 13 - ... which in turn set the value baz.foo correctly
ok 14 - ... baz.foo is a weak reference
ok 15 - The object isa Bar
ok 16 - The object isa Baz
ok 17 - The object isa Foo
ok 18 - ... set the value foo.bar correctly
ok 19 - ... which in turn set the value bar.foo correctly
ok 20 - ... bar.foo is a weak reference
ok 21 - ... set the value foo.baz correctly
ok 22 - ... which in turn set the value baz.foo correctly
ok 23 - ... baz.foo is a weak reference
ok 24 - ... a trigger must be a CODE ref
ok 25 - ... a trigger must be a CODE ref
ok 26 - Blarg->new() lives
ok 27 - Have a $blarg
ok 28 - foo has default value
ok 29 - bar has default value
ok 30 - baz has default value
ok 31 - No triggers fired
ok 32 - All triggers fired once on assign
ok 33 - All triggers given assigned values
ok 34 - ->new() with parameters
ok 35 - All triggers fired once on construct
ok 36 - All triggers given assigned values
ok 37 - trigger called correctly on initial set via meta-API
# skip Moose specific features
# skip Moose specific features
1..37
ok
t/020_attributes/005_attribute_does.t ..........................
ok 1 - The object isa Foo::Class
ok 2 - The object isa Bar::Class
ok 3 - ... bar passed the type constraint okay
ok 4 - ... foo did not pass the type constraint okay
ok 5 - ... baz passed the type constraint okay
ok 6 - ... foo did not pass the type constraint okay
ok 7 - ... foo passed the type constraint okay
ok 8 - ... cannot have a does() which is not done by the isa()
ok 9 - ... cannot have a isa() which is cannot does()
1..9
ok
t/020_attributes/006_attribute_required.t ......................
ok 1 - The object isa Foo
ok 2 - ... got the right bar
ok 3 - ... got the right baz
ok 4 - ... got the right boo
ok 5 - The object isa Foo
ok 6 - ... got the right bar
ok 7 - ... got the right baz
ok 8 - ... got the right boo
ok 9 - The object isa Foo
ok 10 - ... got the right bar
ok 11 - ... got the right baz
ok 12 - ... got the right boo
ok 13 - ... undef is a valid attribute value
ok 14 - ... undef is a valid attribute value
ok 15 - ... must supply all the required attribute
1..15
ok
t/020_attributes/007_attribute_custom_metaclass.t ..............
ok 1 - The object isa Foo
ok 2 - The object isa Foo::Meta::Attribute
ok 3 - The object isa Mouse::Meta::Attribute
ok 4 - ... got the right name for our meta-attribute
ok 5 - ... our meta-attrubute created the accessor for us
ok 6 - ... our meta-attrubute created the type_constraint for us
ok 7 - The object isa Mouse::Meta::TypeConstraint
ok 8 - ... got the right type constraint name
ok 9 - ... got the right type constraint parent name
ok 10 - ... the attribute metaclass need not be a Mouse::Meta::Attribute as long as it behaves
ok 11 - ... the attribute metaclass alias worked correctly
ok 12 - ... the attribute metaclass alias worked correctly
ok 13 - The object isa Foo::Meta::Attribute
ok 14 - The object isa Mouse::Meta::Attribute
ok 15 - The object isa Mouse::Meta::Attribute::Custom::Bar
ok 16 - The object isa Mouse::Meta::Attribute
1..16
ok
t/020_attributes/008_attribute_type_unions.t ...................
ok 1 - The object isa Foo
ok 2 - ... set bar successfully with an ARRAY ref
ok 3 - ... set bar successfully with a HASH ref
ok 4 - ... couldnt set bar successfully with a number
ok 5 - ... couldnt set bar successfully with a CODE ref
ok 6 - ... created new Foo with bar successfully set with an ARRAY ref
ok 7 - ... created new Foo with bar successfully set with a HASH ref
ok 8 - ... didnt create a new Foo with bar as a number
ok 9 - ... didnt create a new Foo with bar as a CODE ref
ok 10 - The object isa Bar
ok 11 - ... set baz successfully with a string
ok 12 - ... set baz successfully with a CODE ref
ok 13 - ... couldnt set baz successfully with a SCALAR ref
ok 14 - ... couldnt set bar successfully with a HASH ref
ok 15 - ... created new Bar with baz successfully set with a string
ok 16 - ... created new Bar with baz successfully set with a CODE ref
ok 17 - ... didnt create a new Bar with baz as a number
ok 18 - ... didnt create a new Bar with baz as a HASH ref
1..18
ok
t/020_attributes/009_attribute_inherited_slot_specs.t ..........
ok 1 - ... we can change the default attribute option
ok 2 - ... we can add change the isa as long as it is a subtype
ok 3 - ... we can change/add coerce as an attribute option
ok 4 - ... we can change/add required as an attribute option
ok 5 - ... we can change/add lazy as an attribute option
ok 6 - ... we can add lazy_build as an attribute option
ok 7 - ... extend an attribute with parameterized type
ok 8 - ... extend an attribute with anon-subtype
ok 9 - ... now can extend an attribute with a non-subtype
ok 10 - ... now allowed to add the weak_ref option via inheritance
ok 11 - ... we can add the handles attribute option
ok 12 - ... we can not alter the handles attribute option
ok 13 - ... can now create an attribute with an improper subtype relation
ok 14 - ... cannot create an attribute with an illegal option
ok 15 - ... cannot extend a non-existing attribute
ok 16 - The object isa Foo
ok 17 - ... got the right undef default value
ok 18 - ... assigned foo correctly
ok 19 - ... got the right value for foo
ok 20 - ... foo is not coercing (as expected)
ok 21 - ... got the right default value
ok 22 - ... Foo::bar is a read/only attr
ok 23 - ... got the right undef default value
ok 24 - ... Foo::baz accepts hash refs
ok 25 - ... got the right value assigned to baz
ok 26 - ... Foo::baz accepts an array ref
ok 27 - ... got the right value assigned to baz
ok 28 - ... Foo::baz accepts scalar ref
ok 29 - ... got the right value assigned to baz
ok 30 - ... Foo::bunch_of_stuff accepts an array of strings
ok 31 - ... Foo::one_last_one accepts a code ref
ok 32 - ... Foo::baz accepts a code ref
ok 33 - ... got the right value assigned to baz
ok 34 - ... cannot create Bar without required gorch param
ok 35 - The object isa Bar
ok 36 - The object isa Foo
ok 37 - ... got the right undef default value
ok 38 - ... assigned foo correctly
ok 39 - ... got the right value for foo
ok 40 - ... assigned foo correctly
ok 41 - ... got the right value for foo
ok 42 - ... got the right default value
ok 43 - ... got the right default value
ok 44 - ... Bar::bar is a read/only attr
ok 45 - ... got the right undef default value
ok 46 - ... Bar::baz does not accept hash refs
ok 47 - ... Bar::baz can accept an array ref
ok 48 - ... got the right value assigned to baz
ok 49 - ... Bar::baz does not accept a scalar ref
ok 50 - ... Bar::bunch_of_stuff accepts an array of ints
ok 51 - ... Bar::bunch_of_stuff does not accept an array of strings
ok 52 - ... Bar::baz does not accept a code ref
ok 53 - ... Bar has a foo attr
ok 54 - ... Bar has a bar attr
ok 55 - ... Bar has a baz attr
ok 56 - ... Bar has a gorch attr
ok 57 - ... Bar has a gloum attr
ok 58 - ... Bar has a bling attr
ok 59 - ... Bar does have a bunch_of_stuff attr
ok 60 - ... Bar has a blang attr
ok 61 - ... Bar has a fail attr
ok 62 - ... Bar does not have an other_fail attr
ok 63 - ... Foo and Bar have different copies of foo
ok 64 - ... Foo and Bar have different copies of bar
ok 65 - ... Foo and Bar have different copies of baz
ok 66 - ... Foo and Bar have different copies of gorch
ok 67 - ... Foo and Bar have different copies of gloum
ok 68 - ... Foo and Bar have different copies of bling
ok 69 - ... Foo and Bar have different copies of bunch_of_stuff
ok 70 - ... Bar::bar inherited the type constraint too
ok 71 - ... Bar::baz inherited the type constraint too
ok 72 - ... Bar::bar inherited the right type constraint too
ok 73 - ... Foo::baz inherited the right type constraint too
ok 74 - ... Bar::baz inherited the right type constraint too
ok 75 - ... Foo::gorch is not a required attr
ok 76 - ... Bar::gorch is a required attr
ok 77 - ... Foo::bunch_of_stuff is an ArrayRef
ok 78 - ... Bar::bunch_of_stuff is an ArrayRef[Int]
ok 79 - ... Foo::gloum is not a required attr
ok 80 - ... Bar::gloum is a required attr
ok 81 - ... Foo::foo should not coerce
ok 82 - ... Bar::foo should coerce
ok 83 - ... Foo::foo should not handles
ok 84 - ... Bar::foo should handles
1..84
ok
t/020_attributes/011_more_attr_delegation.t ....................
ok 1 - Parent->can('parent_method_1')
ok 2 - all_methods requires explicit isa
ok 3 - allow all_methods with explicit isa
ok 4 - don't need to declare isa if method list is predefined
ok 5 - can declare regex collector
ok 6 - can't create attr with generative handles parameter and no isa
ok 7 - can't create attr with generative handles parameter and no isa
ok 8 - can delegate to non moose class using explicit method list
ok 9 - subrefs on non moose class give no meta
ok 10 - plain classes are handed down to subs
ok 11 - can delegate to object even without explicit reader
ok 12 - Parent->can('parent_method_1')
ok 13 - Can't override exisiting class method in delegate
ok 14 - Parent->can('parent_method_1')
ok 15 - Test handles code ref for skipping predefined methods
ok 16 - The object isa Parent
ok 17 - The object isa ChildA
ok 18 - The object isa ChildB
ok 19 - The object isa ChildC
ok 20 - The object isa ChildD
ok 21 - The object isa ChildE
ok 22 - The object isa ChildF
ok 23 - The object isa ChildI
ok 24 - ... no child_g accessor defined
not ok 25 - ... no child_h accessor defined # TODO Mouse does not install delegations atomically
# Failed (TODO) test '... no child_h accessor defined'
# at t/020_attributes/011_more_attr_delegation.t line 227.
ok 26 - parent method
ok 27 - child supermethod
ok 28 - child method
ok 29 - Parent->can('child_a_super_method')
ok 30 - Parent->can('child_a_method_1')
ok 31 - Parent->can('child_a_method_2')
ok 32 - but not subclass of delegate class
ok 33 - delegate behaves the same
ok 34 - delegates are their own invocants
ok 35 - Parent->can('child_b_method_1')
ok 36 - but not ChildB's unspecified siblings
ok 37 - none of ChildD's methods (child_d_method_2)
ok 38 - none of ChildD's methods (child_d_method_1)
ok 39 - Parent->can('child_c_method_3_la')
ok 40 - Parent->can('child_c_method_4_la')
ok 41 - ChildC method delegated OK
ok 42 - Parent->can('child_e_method_2')
ok 43 - but not child_e_method_1
ok 44 - delegate to non moose class (child_e_method_2)
ok 45 - Parent->can('child_g_method_1')
ok 46 - delegate to moose class without reader (child_g_method_1)
ok 47 - Parent->can('child_i_method_1')
ok 48 - delegate doesn't override existing method
1..48
ok
t/020_attributes/012_misc_attribute_tests.t ....................
1..43
ok 1 - ... the foo has docs
ok 2 - ... got the foo docs
ok 3 - The object isa Test::For::Lazy::TypeConstraint
ok 4 - ... this does not work
ok 5 - ... this does work
ok 6 - The object isa Test::Arrayref::Attributes
ok 7 - Test::Arrayref::Attributes->can(...)
ok 8 - The object isa Test::Arrayref::RoleAttributes
ok 9 - Test::Arrayref::RoleAttributes->can(...)
ok 10 - ... default must return a value which passes the type constraint
ok 11 - setter took string
ok 12 - this is a *not* a string
ok 13 - ... dies without overloading the string
ok 14 - ... this doesnt trip overload to break anymore
ok 15 - ... this works fine though
ok 16 - foo is required
ok 17 - foo has builder
ok 18 - .. and it's named build_foo
ok 19 - foo builder works
ok 20 - ... no builder, wtf
ok 21 - foo is lazy
ok 22 - foo is lazy_build
ok 23 - foo has clearer
ok 24 - .. and it's named clear_foo
ok 25 - foo has builder
ok 26 - .. and it's named build_foo
ok 27 - foo has predicate
ok 28 - .. and it's named has_foo
ok 29 - _foo is lazy
ok 30 - lazy_build attributes are no longer automatically required
ok 31 - _foo is lazy_build
ok 32 - _foo has clearer
ok 33 - .. and it's named _clear_foo
ok 34 - _foo has builder
ok 35 - .. and it's named _build_foo
ok 36 - _foo has predicate
ok 37 - .. and it's named _has_foo
ok 38 - noo foo value yet
ok 39 - noo _foo value yet
ok 40 - foo builder works
ok 41 - foo builder works too
ok 42 - Correct error when a builder method is not present
ok 43 - has throws error with odd number of attribute options
ok
t/020_attributes/013_attr_dereference_test.t ...................
ok 1 - ... successfully created attr
ok 2 - The object isa Customer
ok 3 - The object isa Firm
ok 4 - Firm->can('customers')
ok 5 - ... got the right dereferenced value
ok 6 - The object isa Firm
ok 7 - Firm->can('customers')
ok 8 - ... got the right dereferenced value
ok 9 - ... its auto-de-ref-ing, not auto-en-ref-ing
ok 10 - ... set the results of bar correctly
ok 11 - ... auto-dereffed correctly
1..11
ok
t/020_attributes/014_misc_attribute_coerce_lazy.t ..............
ok 1 - The object isa Request
ok 2 - ... this coerces and passes the type constraint even with lazy
1..2
ok
t/020_attributes/015_attribute_traits.t ........................
ok 1 - The object isa My::Class
ok 2 - ... got the right value for bar
ok 3 - ... got the right value for gorch
ok 4 - My::Class->can('baz')
ok 5 - ... got the right value for baz
ok 6 - The object does My::Attribute::Trait
ok 7 - ... got the applied traits
ok 8 - ... got the applied traits
ok 9 - attr initialized
ok 10 - ... gorch doesnt do the trait
ok 11 - ... no traits applied
ok 12 - ... no traits applied
1..12
ok
t/020_attributes/016_attribute_traits_registered.t .............
1..23
ok 1 - The object isa My::Class
ok 2 - ... got the right value for bar
ok 3 - My::Class->can('baz')
ok 4 - ... got the right value for baz
ok 5 - The object does My::Attribute::Trait
ok 6 - attr initialized
ok 7 - does_role ignores aliases for sanity
not ok 8 - attr->does uses aliases # TODO aliased name is not supported
# Failed (TODO) test 'attr->does uses aliases'
# at t/020_attributes/016_attribute_traits_registered.t line 94.
ok 9 - does_role returns false for nonexistent roles
ok 10 - attr->does returns false for nonexistent roles
ok 11 - ... got the right value for bar
ok 12 - My::Derived::Class->can('baz')
ok 13 - ... got the right value for baz
ok 14 - The object does My::Attribute::Trait
ok 15 - attr initialized
ok 16 - The object does My::Other::Attribute::Trait
ok 17 - attr initialized
ok 18 - does_role ignores aliases for sanity
not ok 19 - attr->does uses aliases # TODO aliased name is not supported
# Failed (TODO) test 'attr->does uses aliases'
# at t/020_attributes/016_attribute_traits_registered.t line 118.
ok 20 - does_role returns false for nonexistent roles
ok 21 - attr->does returns false for nonexistent roles
ok 22 - My::Derived::Class->can('additional_method')
ok 23 - ... got the right value for additional_method
ok
t/020_attributes/017_attribute_traits_n_meta.t .................
ok 1 - The object isa My::Class
ok 2 - ... got the right value for bar
ok 3 - My::Class->can('baz')
ok 4 - ... got the right value for baz
ok 5 - The object isa My::Meta::Attribute::DefaultReadOnly
ok 6 - The object does My::Attribute::Trait
ok 7 - ... got the right metaclass customization
1..7
ok
t/020_attributes/018_no_init_arg.t .............................
ok 1 - ... created the attr okay
ok 2 - The object isa Foo
ok 3 - field is not set via init arg
ok 4 - field is set via setter
1..4
ok
t/020_attributes/020_trigger_and_coerce.t ......................
ok 1 - ... trigger is being called
ok 2 - The object isa Fake::DateTime
ok 3 - The object isa Fake::DateTime
ok 4 - The object isa Mortgage
ok 5 - The object isa Fake::DateTime
ok 6 - ... Mortgage is now immutable
ok 7 - ... trigger is being called
ok 8 - The object isa Fake::DateTime
ok 9 - The object isa Fake::DateTime
ok 10 - The object isa Mortgage
ok 11 - The object isa Fake::DateTime
1..11
ok
t/020_attributes/022_illegal_options_for_inheritance.t .........
ok 1 - can override is
ok 2 - can't override reader
ok 3 - can override unspecified things
ok 4 - can't override clearer
ok 5 - can override unspecified things
ok 6 - can use illegal options
ok 7 - can't override illegal attribute
ok 8 - can add illegal option if superclass doesn't set it
ok 9 - ... added my_illegal_option as illegal option for inheritance
1..9
ok
t/020_attributes/024_attribute_traits_parameterized.t ..........
ok 1 - the aliased method is in the attribute
ok 2 - the method was not installed under the other class' alias
ok 3 - the aliased method is in the attribute
ok 4 - the method was not installed under the other class' alias
ok 5 - the method was not installed under the original name when that was excluded
1..5
ok
t/020_attributes/025_chained_coercion.t ........................
ok 1 - The object isa Foo
ok 2 - The object isa Bar
ok 3 - The object isa Baz
ok 4 - ... this all worked fine
1..4
ok
t/020_attributes/026_attribute_without_any_methods.t ...........
ok 1 - correct error message
ok 2 - add attribute with no methods and is => "bare"
1..2
ok
t/020_attributes/027_accessor_override_method.t ................
not ok 1 - reader overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'reader overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 27.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined method \(get_a\) with an accessor)
# as expected
not ok 2 - writer overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'writer overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 29.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined method \(set_b\) with an accessor)
# as expected
not ok 3 - predicate overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'predicate overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 31.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined method \(has_c\) with an accessor)
# as expected
not ok 4 - clearer overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'clearer overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 33.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined method \(clear_d\) with an accessor)
# as expected
not ok 5 - accessor overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'accessor overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 35.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined method \(e\) with an accessor)
# as expected
not ok 6 - function overriding gives proper warning # TODO Mouse is not yet completed
# Failed (TODO) test 'function overriding gives proper warning'
# at t/020_attributes/027_accessor_override_method.t line 38.
# STDERR:
#
# doesn't match:
# (?^:^You are overwriting a locally defined function \(has\) with an accessor)
# as expected
1..6
ok
t/020_attributes/029_accessor_context.t ........................
ok 1 - class definition
ok 2 - uninitialized scalar attribute/rw in scalar context
ok 3 - uninitialized scalar attribute/rw in list context
ok 4 - uninitialized scalar attribute/ro in scalar context
ok 5 - uninitialized scalar attribute/ro in list context
ok 6 - uninitialized ArrayRef attribute/rw in scalar context
ok 7 - uninitialized ArrayRef attribute/rw in list context
ok 8 - uninitialized ArrayRef attribute/ro in scalar context
ok 9 - uninitialized ArrayRef attribute/ro in list context
ok 10 - uninitialized HashRef attribute/rw in scalar context
ok 11 - uninitialized HashRef attribute/rw in list context
ok 12 - uninitialized HashRef attribute/ro in scalar context
ok 13 - uninitialized HashRef attribute/ro in list context
ok 14 - testing
1..14
ok
t/020_attributes/030_non_alpha_attr_names.t ....................
ok 1 - Foo has 'type' attribute
ok 2 - Foo has '@type' attribute
ok 3 - Foo has 'has spaces' attribute
ok 4 - 'type' attribute default is 1
ok 5 - '@type' attribute default is 1
ok 6 - 'has spaces' attribute default is 42
ok 7 - The object isa Foo
ok 8 - reader for '@type'
ok 9 - reader for 'has spaces'
ok 10 - writer for '@type' worked
ok 11 - Foo has 'type' attribute
ok 12 - Foo has '@type' attribute
ok 13 - Foo has 'has spaces' attribute
ok 14 - 'type' attribute default is 1
ok 15 - '@type' attribute default is 1
ok 16 - 'has spaces' attribute default is 42
ok 17 - The object isa Foo
ok 18 - reader for '@type'
ok 19 - reader for 'has spaces'
ok 20 - writer for '@type' worked
1..20
ok
t/020_attributes/031_delegation_and_modifiers.t ................
ok 1 - The object isa Foo::Extended
ok 2 - The object isa Foo
ok 3 - ... the test value has not been changed
ok 4 - ... got the right delegated method
ok 5 - ... the test value has now been changed
1..5
ok
t/020_attributes/032_delegation_arg_aliasing.t .................
ok 1 - direct aliasing works
ok 2 - delegated aliasing works
ok 3 - delegated aliasing with currying works
1..3
ok
t/020_attributes/034_numeric_defaults.t ........................
ok 1 - it's an int
ok 2 - not a string
ok 3 - it's an int
ok 4 - not a string
ok 5 - it's an int
ok 6 - not a string
ok 7 - it's an int
ok 8 - not a string
ok 9 - it's an int
ok 10 - not a string
ok 11 - it's an int
ok 12 - not a string
ok 13 - it's an int
ok 14 - not a string
ok 15 - it's an int
ok 16 - not a string
ok 17 - it's an int
ok 18 - not a string
ok 19 - it's an int
ok 20 - not a string
ok 21 - it's an int
ok 22 - not a string
ok 23 - it's an int
ok 24 - not a string
ok 25 - it's a num
ok 26 - not a string
ok 27 - it's a num
ok 28 - not a string
ok 29 - it's a num
ok 30 - not a string
ok 31 - it's a num
ok 32 - not a string
ok 33 - it's a num
ok 34 - not a string
ok 35 - it's a num
ok 36 - not a string
ok 37 - it's a num
ok 38 - not a string
ok 39 - it's a num
ok 40 - not a string
ok 41 - it's a num
ok 42 - not a string
ok 43 - it's a num
ok 44 - not a string
ok 45 - it's a num
ok 46 - not a string
ok 47 - it's a num
ok 48 - not a string
1..48
ok
t/020_attributes/035_default_undef.t ...........................
ok 1
ok 2
ok 3
ok 4
1..4
ok
t/020_attributes/036_clone_weak.t ..............................
ok 1
ok 2 - The object isa Foo
ok 3
ok 4
ok 5 - The object isa Mouse::Meta::Class::__ANON__::1
ok 6 - has a metaclass
ok 7 - The object isa Mouse::Meta::Class::__ANON__::1
ok 8 - has a metaclass
ok 9 - still has a metaclass
1..9
ok
t/030_roles/001_meta_role.t ....................................
1..26
ok 1 - The object isa Mouse::Meta::Role
ok 2 - ... got the right name of FooRole
ok 3 - ... got the right version of FooRole
ok 4 - ... FooRole has the foo method
ok 5 - ... FooRole got the foo method
ok 6 - The object isa Mouse::Meta::Role::Method
ok 7 - ... got the right method list
ok 8 - ... got the right attribute list
ok 9 - ... FooRole does not have the bar attribute
ok 10 - ... added the bar attribute okay
ok 11 - ... got the right attribute list
ok 12 - ... FooRole does have the bar attribute
ok 13 - ... got the correct description of the bar attribute
ok 14 - ... added the baz attribute okay
ok 15 - ... got the right attribute list
ok 16 - ... FooRole does have the baz attribute
ok 17 - ... got the correct description of the baz attribute
ok 18 - ... removed the bar attribute okay
ok 19 - ... got the right attribute list
ok 20 - ... FooRole does not have the bar attribute
ok 21 - ... FooRole does still have the baz attribute
ok 22 - ... no boo:before modifier
ok 23 - ... added a method modifier okay
ok 24 - ... now we have a boo:before modifier
ok 25 - ... got the right method back
ok 26 - ... got the right list of before method modifiers
ok
t/030_roles/002_role.t .........................................
1..40
ok 1 - ... extends() is not supported
ok 2 - ... augment() is not supported
ok 3 - ... inner() is not supported
ok 4 - The object isa Mouse::Meta::Role
ok 5 - ... got the right name of FooRole
ok 6 - ... got the right version of FooRole
ok 7 - ... FooRole has the foo method
ok 8 - ... FooRole got the foo method
ok 9 - The object isa Mouse::Meta::Role::Method
ok 10 - ... FooRole has the boo method
ok 11 - ... FooRole got the boo method
ok 12 - The object isa Mouse::Meta::Role::Method
ok 13 - ... got the right method list
ok 14 - locally defined methods are still there
ok 15 - sugar was unimported
ok 16 - ... got the right attribute list
ok 17 - ... FooRole does have the bar attribute
ok 18 - bar attribute is rw
ok 19 - bar attribute isa Foo
not ok 20 - bar's definition context is a hash # TODO definition_context is not yet implemented
# Failed (TODO) test 'bar's definition context is a hash'
# at t/030_roles/002_role.t line 97.
# got: ''
# expected: 'HASH'
not ok 21 - bar was defined in FooRole # TODO definition_context is not yet implemented
# Failed (TODO) test 'bar was defined in FooRole'
# at t/030_roles/002_role.t line 99.
# got: undef
# expected: 'FooRole'
ok 22 - ... FooRole does have the baz attribute
ok 23 - baz attribute is ro
not ok 24 - bar's definition context is a hash # TODO definition_context is not yet implemented
# Failed (TODO) test 'bar's definition context is a hash'
# at t/030_roles/002_role.t line 111.
# got: ''
# expected: 'HASH'
not ok 25 - baz was defined in FooRole # TODO definition_context is not yet implemented
# Failed (TODO) test 'baz was defined in FooRole'
# at t/030_roles/002_role.t line 113.
# got: undef
# expected: 'FooRole'
ok 26 - ... now we have a boo:before modifier
ok 27 - ... got the right method back
ok 28 - ... got the right list of before method modifiers
ok 29 - ... now we have a boo:after modifier
ok 30 - ... got the right method back
ok 31 - ... got the right method back
ok 32 - ... got the right list of after method modifiers
ok 33 - ... now we have a boo:around modifier
ok 34 - ... got the right method back
ok 35 - ... got the right list of around method modifiers
ok 36 - ... now we have a bling:override modifier
ok 37 - ... got the right method back
ok 38 - ... now we have a fling:override modifier
ok 39 - ... got the right method back
ok 40 - ... got the right list of override method modifiers
ok
t/030_roles/003_apply_role.t ...................................
ok 1 - The object isa Mouse::Meta::Class
ok 2 - The object isa Mouse::Meta::Class
ok 3 - ... does_role requires a role name
ok 4 - ... apply_role requires a role
ok 5 - ... apply_role requires a role
ok 6 - ... the FooClass->meta does_role FooRole
ok 7 - ... the FooClass->meta !does_role OtherRole
ok 8 - ... the FooBarClass->meta does_role FooRole
ok 9 - ... the FooBarClass->meta does_role BarRole
ok 10 - ... the FooBarClass->meta !does_role OtherRole
ok 11 - ... FooClass has the method bar
ok 12 - ... FooBarClass has the method bar
ok 13 - ... FooClass has the method baz
ok 14 - ... FooBarClass has the method baz
ok 15 - ... FooClass has the method foo
ok 16 - ... FooBarClass has the method foo
ok 17 - ... FooClass has the method boo
ok 18 - ... FooBarClass has the method boo
ok 19 - ... FooClass has the method blau
ok 20 - ... FooBarClass has the method blau
ok 21 - ... FooClass has the method goo
ok 22 - ... FooBarClass has the method goo
ok 23 - ... FooClass lacks the method woot
ok 24 - ... FooBarClass has the method woot
ok 25 - ... FooClass has the attribute bar
ok 26 - ... FooBarClass has the attribute bar
ok 27 - ... FooClass has the attribute baz
ok 28 - ... FooBarClass has the attribute baz
ok 29 - FooClass->can('does')
ok 30 - ... the FooClass does FooRole
ok 31 - ... the FooClass does not do BarRole
ok 32 - ... the FooClass does not do OtherRole
ok 33 - FooBarClass->can('does')
ok 34 - ... the FooClass does FooRole
ok 35 - ... the FooBarClass does FooBarRole
ok 36 - ... the FooBarClass does not do OtherRole
ok 37 - The object isa FooClass
ok 38 - The object isa FooBarClass
ok 39 - ... got the right value of goo
ok 40 - ... got the right value of goo
ok 41 - ... got the right value from ->boo
ok 42 - ... got the right value from ->boo (double wrapped)
ok 43 - ... got the right value from ->blau
ok 44 - ... got the right value from ->blau
ok 45 - FooClass->can('does')
ok 46 - ... an instance of FooClass does FooRole
ok 47 - ... and instance of FooClass does not do OtherRole
ok 48 - FooBarClass->can('does')
ok 49 - ... an instance of FooBarClass does FooRole
ok 50 - ... an instance of FooBarClass does BarRole
ok 51 - ... and instance of FooBarClass does not do OtherRole
ok 52 - FooClass->can('bar')
ok 53 - FooClass->can('baz')
ok 54 - FooClass->can('foo')
ok 55 - FooClass->can('boo')
ok 56 - FooClass->can('goo')
ok 57 - FooClass->can('blau')
ok 58 - ... got the right value of foo
ok 59 - ... $foo->baz is undefined
ok 60 - ... $foo->bar is undefined
ok 61 - ... baz is a read-only accessor
ok 62 - ... bar is a read-write accessor with a type constraint
ok 63 - The object isa FooClass
ok 64 - ... bar is a read-write accessor with a type constraint
ok 65 - ... got the right value for bar now
ok 66 - FooBarClass->can('does')
ok 67 - ... an instance of FooClass does FooRole
ok 68 - ... and instance of FooClass does not do OtherRole
ok 69 - FooBarClass->can('does')
ok 70 - ... an instance of FooBarClass does FooRole
ok 71 - ... an instance of FooBarClass does BarRole
ok 72 - ... and instance of FooBarClass does not do OtherRole
ok 73 - FooBarClass->can('bar')
ok 74 - FooBarClass->can('baz')
ok 75 - FooBarClass->can('foo')
ok 76 - FooBarClass->can('boo')
ok 77 - FooBarClass->can('goo')
ok 78 - FooBarClass->can('blau')
ok 79 - ... got the right value of foo
ok 80 - ... $foo->baz is undefined
ok 81 - ... $foo->bar is undefined
ok 82 - ... baz is a read-only accessor
ok 83 - ... bar is a read-write accessor with a type constraint
ok 84 - The object isa FooClass
ok 85 - ... bar is a read-write accessor with a type constraint
ok 86 - ... got the right value for bar now
1..86
ok
t/030_roles/004_role_composition_errors.t ......................
ok 1 - ... the Foo::Role has a required method (foo)
ok 2 - ... no foo method implemented by Foo::Class
ok 3 - ... cannot consume a class, it must be a role
ok 4 - ... has a foo method implemented by Bar::Class
ok 5 - ... has a foo method implemented by Bar::Role
ok 6 - ... the Bar::Role has not inherited the required method from Foo::Role
ok 7 - ... no foo method implemented by Baz::Role
ok 8 - ... the Baz::Role has inherited the required method from Foo::Role
ok 9 - ... no foo method implemented by Baz::Class2
ok 10 - ... has a foo method implemented by Baz::Class2
ok 11 - exception mentions all the missing required methods at once
ok 12 - exception mentions all the missing required methods at once, but not the one that exists
ok 13 - exception mentions all the missing methods at once, but not the accessors
ok 14 - exception mentions all the require methods that are accessors at once, as well as missing methods, but not the one that exists
1..14
ok
t/030_roles/005_role_conflict_detection.t ......................
ok 1 - ... our mutually recursive roles combine okay
ok 2 - ... our mutually recursive roles combine okay (no matter what order)
ok 3 - The object isa My::Test1
ok 4 - ... $test1 does Role::Foo
ok 5 - ... $test1 does Role::Bar
ok 6 - My::Test1->can('foo')
ok 7 - My::Test1->can('bar')
ok 8 - ... $test1->foo worked
ok 9 - ... $test1->bar worked
ok 10 - The object isa My::Test2
ok 11 - ... $test2 does Role::Foo
ok 12 - ... $test2 does Role::Bar
ok 13 - My::Test2->can('foo')
ok 14 - My::Test2->can('bar')
ok 15 - ... $test2->foo worked
ok 16 - ... $test2->bar worked
ok 17 - ... it still has the bar method
ok 18 - ... it still has the required foo method
ok 19 - ... it still has the foo method
ok 20 - ... it still has the required bar method
ok 21 - ... role methods conflict and method was required
ok 22 - ... role methods didnt conflict when manually combined
ok 23 - ... role methods didnt conflict when manually combined (in opposite order)
ok 24 - ... role methods didnt conflict when manually resolved
ok 25 - ... we didnt get any methods in the conflict
ok 26 - ... we did get the method when manually dealt with
ok 27 - ... we did get the method when manually dealt with
ok 28 - ... we did get the method when manually dealt with
ok 29 - ... our class does() the correct roles
ok 30 - ... our class does() the correct roles
ok 31 - ... our class does() the correct roles
ok 32 - ... our class does() the correct roles
ok 33 - ... our class does() the correct roles
ok 34 - ... our class does() the correct roles
ok 35 - ... our class does() the correct roles
ok 36 - ... our class does() the correct roles
ok 37 - ... and we got the first method that was added
ok 38 - ... and we got the first method that was added
ok 39 - ... and we got the local method
ok 40 - ... still got the bling method in Role::Bling::Bling
ok 41 - ... our role correctly does() the other role
ok 42 - ... dont have the bling method in Role::Bling::Bling::Bling
ok 43 - ... still got the bling method in Role::Bling::Bling::Bling
ok 44 - ... role attrs conflict and method was required
ok 45 - ... role attrs didnt conflict when manually combined
ok 46 - ... role attrs didnt conflict when manually combined
ok 47 - ... role attrs conflict and cannot be manually disambiguted
ok 48 - ... we didnt get any attributes in the conflict
ok 49 - ... we did get an attributes when manually composed
ok 50 - ... we did get an attributes when manually composed
ok 51 - ... we did still have an attribute ghost (conflict does not mess with class)
ok 52 - ... our class does() the correct roles
ok 53 - ... our class does() the correct roles
ok 54 - ... our class does() the correct roles
ok 55 - ... our class does() the correct roles
ok 56 - ... our class does() the correct roles
ok 57 - ... our class does() the correct roles
ok 58 - ... our class does() the correct roles
ok 59 - ... our class does() the correct roles
ok 60 - My::Test8->can('ghost')
ok 61 - My::Test9->can('ghost')
ok 62 - My::Test10->can('ghost')
ok 63 - ... got the expected default attr value
ok 64 - ... got the expected default attr value
ok 65 - ... got the expected default attr value
ok 66 - ... composed the role with override okay
ok 67 - ... composed the role with override okay
ok 68 - ... cannot compose it because we have no superclass
ok 69 - ... cannot compose it because we have no superclass
ok 70 - ... the twist method has been added
ok 71 - ... the twist method has been added
ok 72 - ... the twist method has not been added
ok 73 - ... the twist method has not been added
ok 74 - ... our class does() the correct roles
ok 75 - ... our class does() the correct roles
ok 76 - ... our class does() the correct roles
ok 77 - ... our class does() the correct roles
ok 78 - ... our class does() the correct roles
ok 79 - ... our class does() the correct roles
ok 80 - ... our class does() the correct roles
ok 81 - ... got the right method return
ok 82 - ... got the right method return
ok 83 - ... no twist method here at all
ok 84 - ... got the right method return (from superclass)
ok 85 - ... could not compose roles here, it dies
ok 86 - ... the twist method has not been added
ok 87 - ... the twist method returns the right value
ok 88
1..88
ok
t/030_roles/008_role_conflict_edge_cases.t .....................
1..32
ok 1 - ... roles composed okay (no conflicts)
ok 2 - ... have the method foo as expected
ok 3 - ... have the method foo as expected
ok 4 - ... have the method foo as expected
ok 5 - ... have the method foo as expected
ok 6 - ... got the right value from method
ok 7 - ... roles composed okay (no conflicts)
ok 8 - ... have the method foo as expected
ok 9 - ... have the method foo as expected
ok 10 - ... have the method foo as expected
ok 11 - ... have the method foo as expected
not ok 12 - The object isa Mouse::Meta::Method::Overridden # TODO Not a Mouse::Meta::Method::Overriden
# Failed (TODO) test 'The object isa Mouse::Meta::Method::Overridden'
# at t/030_roles/008_role_conflict_edge_cases.t line 97.
# The object isn't a 'Mouse::Meta::Method::Overridden' it's a 'Mouse::Meta::Method'
ok 13 - ... have the method foo as expected
not ok 14 - The object isa Class::MOP::Method # TODO Not a Class::MOP::Method
# Failed (TODO) test 'The object isa Class::MOP::Method'
# at t/030_roles/008_role_conflict_edge_cases.t line 102.
# The object isn't a 'Class::MOP::Method' it's a 'Mouse::Meta::Method'
ok 15 - ... got the right value from method
ok 16 - ... got the right value from method
ok 17 - ... roles composed okay (no conflicts)
ok 18 - ... have the method foo as expected
ok 19 - ... have the method foo as expected
ok 20 - ... have the method foo as expected
ok 21 - ... have the method foo as expected
not ok 22 - The object isa Class::MOP::Method::Wrapped # TODO Not a Class::MOP::Method::Wrapped
# Failed (TODO) test 'The object isa Class::MOP::Method::Wrapped'
# at t/030_roles/008_role_conflict_edge_cases.t line 155.
# The object isn't a 'Class::MOP::Method::Wrapped' it's a 'Mouse::Meta::Method'
ok 23 - ... have the method foo as expected
not ok 24 - The object isa Class::MOP::Method # TODO Not a Class::MOP::Method
# Failed (TODO) test 'The object isa Class::MOP::Method'
# at t/030_roles/008_role_conflict_edge_cases.t line 160.
# The object isn't a 'Class::MOP::Method' it's a 'Mouse::Meta::Method'
ok 25 - ... got the right value from method
ok 26 - ... got the right value from method
ok 27 - ... roles composed okay (no conflicts)
ok 28 - ... have the attribute foo as expected
ok 29 - ... have the attribute foo as expected
ok 30 - ... have the attribute foo as expected
ok 31 - ... have the attribute foo as expected
ok 32 - ... got the right value from method
ok
t/030_roles/009_more_role_edge_cases.t .........................
ok 1 - ... role was composed as expected
ok 2 - does SubAA
ok 3 - does RootA
ok 4 - The object isa SubAB
ok 5 - SubAB->can('bar')
ok 6 - ... got thr right bar rv
ok 7 - SubAB->can('foo')
ok 8 - ... called foo successfully
ok 9 - ... got the right foo rv
ok 10 - ... composed the role successfully
ok 11 - BB does SubBA
ok 12 - BB does RootB
ok 13 - The object isa SubBB
ok 14 - SubBB->can('foo')
ok 15 - ... called foo successfully
ok 16 - foo rv
ok 17 - after hook called
ok 18 - ... called foo successfully (again)
ok 19 - after hook called (again)
ok 20 - ... this has the foo method
ok 21 - ... cannot compose an override over a local method
ok 22 - simple composition without abstract
ok 23 - simple composition with abstract
ok 24 - SimpleClassWithSome does Abstract
ok 25 - SimpleClassWithSome does ConcreteA
ok 26 - SimpleClassWithSome does ConcreteB
ok 27 - SimpleClassWithSome->can('method')
ok 28 - SimpleClassWithSome->can('other')
ok 29 - SimpleClassWithSome->can('another')
ok 30 - provided by abstract
ok 31 - provided by concrete a
ok 32 - provided by concrete b
ok 33 - SimpleClassWithAll does Abstract
ok 34 - SimpleClassWithAll does ConcreteA
ok 35 - SimpleClassWithAll does ConcreteB
ok 36 - SimpleClassWithAll->can('method')
ok 37 - SimpleClassWithAll->can('other')
ok 38 - SimpleClassWithAll->can('another')
ok 39 - provided by abstract
ok 40 - provided by concrete a
ok 41 - provided by concrete b
ok 42 - composition without abstract
ok 43 - composition with abstract
ok 44 - can compose ConcreteA and ConcreteC together
ok 45 - ClassWithSome does Abstract
ok 46 - ClassWithSome does ConcreteA
ok 47 - ClassWithSome does ConcreteB
ok 48 - ClassWithSome does ConcreteC
ok 49 - ClassWithSome->can('method')
ok 50 - ClassWithSome->can('other')
ok 51 - ClassWithSome->can('another')
ok 52 - provided by abstract
ok 53 - provided by concrete c + a
ok 54 - provided by concrete b
ok 55 - ClassWithAll does Abstract
ok 56 - ClassWithAll does ConcreteA
ok 57 - ClassWithAll does ConcreteB
ok 58 - ClassWithAll does ConcreteC
ok 59 - ClassWithAll->can('method')
ok 60 - ClassWithAll->can('other')
ok 61 - ClassWithAll->can('another')
ok 62 - provided by abstract
ok 63 - provided by concrete c + a
ok 64 - provided by concrete b
ok 65 - ClassWithEverything does Abstract
ok 66 - ClassWithEverything does ConcreteA
ok 67 - ClassWithEverything does ConcreteB
ok 68 - ClassWithEverything does ConcreteC
ok 69 - ClassWithEverything->can('method')
ok 70 - ClassWithEverything->can('other')
ok 71 - ClassWithEverything->can('another')
ok 72 - provided by abstract
ok 73 - provided by concrete c + a
ok 74 - provided by concrete b
1..74
ok
t/030_roles/010_run_time_role_composition.t ....................
ok 1 - The object isa My::Class
ok 2 - The object isa My::Class
ok 3 - ... the role is not composed yet
ok 4 - ... we do not do any roles yet
ok 5 - ... we now do the Bark role
ok 6 - ... the class does not do the Bark role
ok 7 - The object isa My::Class
ok 8 - ... but it is no longer blessed into My::Class
ok 9 - ... the role is not composed at the class level
ok 10 - ... the role is now composed at the object level
ok 11 - ... got the right return value for the newly composed method
ok 12 - ... we do not do any roles yet
ok 13 - ... we now do the Bark role
ok 14 - ... they share the same anon-class/role thing
ok 15 - ... the original method responds as expected
ok 16 - ... we do not do the Sleeper role
ok 17 - ... we still do the Bark role
ok 18 - ... we now do the Sleeper role too
ok 19 - ... the class does not do the Sleeper role
ok 20 - ... they no longer share the same anon-class/role thing
ok 21 - The object isa My::Class
ok 22 - ... the original method still responds as expected
ok 23 - ... got the right return value for the newly composed method
ok 24 - ... got the right return value for the newly composed method
ok 25 - ... we do not do any roles yet
ok 26 - ... we now do the Bark role
ok 27 - ... they share the same anon-class/role thing again
1..27
ok
t/030_roles/013_method_aliasing_in_composition.t ...............
1..46
ok 1 - ... this succeeds
ok 2 - ... this succeeds
ok 3 - we have a foo method
ok 4 - we have a baz method
ok 5 - we have a bar method
ok 6 - we have a role_bar method
ok 7 - ... this succeeds
ok 8 - ... cannot alias to a name that exists
ok 9 - we have a foo method
ok 10 - we have a baz method
ok 11 - we have a role_bar method
not ok 12 - ... and the &bar method is required # TODO auto requires resolution is not supported
# Failed (TODO) test '... and the &bar method is required'
# at t/030_roles/013_method_aliasing_in_composition.t line 63.
not ok 13 - ... and the &role_bar method is not required # TODO auto requires resolution is not supported
# Failed (TODO) test '... and the &role_bar method is not required'
# at t/030_roles/013_method_aliasing_in_composition.t line 64.
ok 14 - ... this succeeds
ok 15 - we have a foo method
ok 16 - we have a baz method
ok 17 - we have a role_bar method
ok 18 - ... and the &bar method is not required
ok 19 - ... composed our roles correctly
ok 20 - ... composed our roles correctly
ok 21 - The object isa My::Foo::Class
ok 22 - My::Foo::Class->can('foo')
ok 23 - My::Foo::Class->can('foo_foo')
ok 24 - My::Foo::Class->can('bar_foo')
ok 25 - ... got the right method
ok 26 - ... got the right method
ok 27 - ... got the right method
ok 28 - ... composed our roles correctly
ok 29 - we have a foo method
ok 30 - we have a foo_foo method
ok 31 - we have a bar_foo method
ok 32 - ... and the &foo method is not required
not ok 33 - ... composed our roles correctly # TODO not supported
# Failed (TODO) test '... composed our roles correctly'
# at t/030_roles/013_method_aliasing_in_composition.t line 149.
ok 34 - we dont have a foo_foo method
not ok 35 - ... and the &foo method is required # TODO auto requires resolution is not supported
# Failed (TODO) test '... and the &foo method is required'
# at t/030_roles/013_method_aliasing_in_composition.t line 155.
ok 36 - ... composed our roles correctly
ok 37 - we have a foo method
ok 38 - .. and the aliased foo_foo method
ok 39 - Compose Role::Foo into Role::Bar with alias and exclude
ok 40 - has x1 method
ok 41 - has y1 method
ok 42 - has foo_x1 method
ok 43 - Compose Role::Foo into Role::Baz with alias and exclude
ok 44 - has x1 method
ok 45 - has foo_x1 method
ok 46 - Role::Baz has no y1 method
ok
t/030_roles/014_more_alias_and_exclude.t .......................
ok 1 - ... everything works out all right
ok 2 - The object isa My::Class
ok 3 - ... got the right method
ok 4 - ... got the right method
ok 5 - ... got the right method
ok 6 - ... got the right method
ok 7 - ... got the right method
ok 8 - ... got the right method
ok 9 - ... got the right method
1..9
ok
t/030_roles/015_runtime_roles_and_attrs.t ......................
ok 1 - The object isa Foo
ok 2 - ... the role is not composed yet
ok 3 - ditto
ok 4 - ... we do not do any roles yet
ok 5 - ... and setting the accessor fails (not a Dog yet)
ok 6 - ... we now do the Bark role
ok 7 - ... the role is now composed at the object level
ok 8 - it has fur
ok 9 - ... got the right return value for the newly composed method
ok 10 - ... and setting the accessor is okay
ok 11 - role attr initialized
1..11
ok
t/030_roles/016_runtime_roles_and_nonmoose.t ...................
ok 1 - The object isa Bar
ok 2 - The object isa Foo
ok 3 - ... the role is not composed yet
ok 4 - ... and setting the accessor fails (not a Dog yet)
ok 5 - ... the role is now composed at the object level
ok 6 - ... got the right return value for the newly composed method
ok 7 - ... and setting the accessor is okay
1..7
ok
t/030_roles/017_extending_role_attrs.t .........................
1..27
ok 1 - ... extended the attribute successfully
ok 2 - The object isa Foo
ok 3 - ... got the extended attribute
ok 4 - ... narrowed the role's type constraint successfully
ok 5 - The object isa Bar
ok 6 - ... got the extended attribute
ok 7 - ... can change the attribute's value to an Int
ok 8
ok 9 - ... still has the old Int value
ok 10 - ... narrowed the role's type constraint successfully
ok 11 - The object isa Baz
ok 12 - ... got the extended attribute
ok 13 - ... can change the attribute's value to a ClassName
ok 14
ok 15 - ... still has the old ClassName value
ok 16 - ... narrowed the role's type constraint successfully
ok 17 - The object isa Quux
ok 18 - ... got the extended attribute
ok 19 - ... can change the attribute's value to an Int
ok 20 - ... can change the attribute's value to an ArrayRef
ok 21
ok 22 - ... still has the old ArrayRef value
ok 23
ok 24 - ... still has the old ArrayRef value
ok 25 - can get less specific in the subclass
ok 26 - or change the type completely
ok 27 - or add new types to the union
ok
t/030_roles/018_runtime_roles_w_params.t .......................
1..21
ok 1 - The object isa Foo
ok 2 - ... got the expect value
ok 3 - ... no baz method though
ok 4 - ... this works
ok 5 - ... got the expect value
ok 6 - ... we have baz method now
ok 7 - ... got the expect value
ok 8 - The object isa Foo
ok 9 - ... got the expect value
ok 10 - ... no baz method though
ok 11 - ... this works
ok 12 - ... got the expect value
ok 13 - ... we have baz method now
not ok 14 - ... got the expect value # TODO rebless_params is not implemented
# Failed (TODO) test '... got the expect value'
# at t/030_roles/018_runtime_roles_w_params.t line 55.
# got: 'BAZ'
# expected: 'FOO-BAZ'
ok 15 - The object isa Foo
ok 16 - ... got the expect value
ok 17 - ... no baz method though
ok 18 - ... this works
not ok 19 - ... got the expect value # TODO rebless params is not implemented
# Failed (TODO) test '... got the expect value'
# at t/030_roles/018_runtime_roles_w_params.t line 73.
# got: 'BAR'
# expected: 'FOO-BAR'
ok 20 - ... we have baz method now
not ok 21 - ... got the expect value # TODO rebless params is not implemented
# Failed (TODO) test '... got the expect value'
# at t/030_roles/018_runtime_roles_w_params.t line 78.
# got: 'BAZ'
# expected: 'FOO-BAZ'
ok
t/030_roles/019_build.t ........................................
1..8
ok 1
ok 2
ok 3 - no calls to BUILD yet
ok 4
ok 5
ok 6 - no calls to BUILD yet
ok 7
ok 8
ok
t/030_roles/020_role_composite.t ...............................
ok 1 - The object isa Mouse::Meta::Role::Composite
not ok 2 - ... got the composite role name # TODO M::M::R::Compisite name
# Failed (TODO) test '... got the composite role name'
# at t/030_roles/020_role_composite.t line 39.
# got: 'Mouse::Meta::Role::Composite::__ANON__::1'
# expected: 'Role::Foo|Role::Bar|Role::Baz'
ok 3 - ... got the right roles
ok 4 - ... our composite does the role Role::Foo
ok 5 - ... our composite does the role Role::Bar
ok 6 - ... our composite does the role Role::Baz
not ok 7 - ... this composed okay # TODO cannot apply a composite role directly
# Failed (TODO) test '... this composed okay'
# at t/030_roles/020_role_composite.t line 56.
ok 8 - The object isa Mouse::Meta::Role::Composite
not ok 9 - ... got the composite role name # TODO name
# Failed (TODO) test '... got the composite role name'
# at t/030_roles/020_role_composite.t line 69.
# got: 'Mouse::Meta::Role::Composite::__ANON__::3'
# expected: 'Role::Foo|Role::Bar|Role::Baz|Role::Gorch'
ok 10 - ... got the right roles
ok 11 - ... our composite does the role Role::Foo
ok 12 - ... our composite does the role Role::Bar
ok 13 - ... our composite does the role Role::Baz
ok 14 - ... our composite does the role Role::Gorch
1..14
ok
t/030_roles/031_roles_applied_in_create.t ......................
1..1
ok 1 - Create a new class with several roles
ok
t/030_roles/033_role_exclusion_and_alias_bug.t .................
1..17
ok 1 - The object isa My::Class
ok 2 - The object does My::Role
ok 3 - My::Class->can('baz')
ok 4 - My::Class->can('gorch')
ok 5 - ... cant call method foo
ok 6 - ... cant call method bar
ok 7 - ... got the right value
ok 8 - ... got the right value
ok 9 - The object isa My::Class::Again
ok 10 - The object does My::Role::Again
ok 11 - The object does My::Role
ok 12 - My::Class::Again->can('baz')
ok 13 - My::Class::Again->can('gorch')
ok 14 - ... cant call method foo
ok 15 - ... cant call method bar
ok 16 - ... got the right value
ok 17 - ... got the right value
ok
t/030_roles/034_create_role.t ..................................
1..4
ok 1 - attribute, accessor was consumed
ok 2 - accessor was consumed
ok 3 - method was consumed
ok 4 - the role is not anonymous
ok
t/030_roles/035_anonymous_roles.t ..............................
ok 1 - attribute, accessor was consumed
ok 2 - accessor was consumed
ok 3 - method was consumed
ok 4 -
ok 5 - the role knows it's anonymous
ok 6 - creating an anonymous role satisifes is_class_loaded
ok 7 - creating an anonymous role satisifes class_of
1..7
ok
t/030_roles/036_free_anonymous_roles.t .........................
1..4
ok 1 - we still have the role metaclass because the anonymous class that consumed it is still alive
ok 2 - we have not blown away the role's symbol table
ok 3 - the role metaclass is freed after its last reference (from a consuming anonymous class) is freed
ok 4 - we blew away the role's symbol table entries
ok
t/030_roles/037_create_role_subclass.t .........................
1..2
ok 1 - default value for the serial attribute
ok 2 - parameter value for the serial attribute
ok
t/030_roles/041_empty_method_modifiers_meta_bug.t ..............
1..6
ok 1 - get_before_method_modifiers for no method mods does not die
ok 2 - is an empty list
ok 3 - get_around_method_modifiers for no method mods does not die
ok 4 - is an empty list
ok 5 - get_after_method_modifiers for no method mods does not die
ok 6 - is an empty list
ok
t/030_roles/042_compose_overloading.t ..........................
1..1
ok 1 - overloading can be composed
ok
t/040_type_constraints/002_util_type_constraints_export.t ......
ok 1 - ... successfully exported &type to Foo package
ok 2 - ... successfully exported &subtype to Foo package
ok 3 - ... Ref worked correctly
ok 4 - ... ArrayRef worked correctly
1..4
ok
t/040_type_constraints/003_util_std_type_constraints.t .........
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - ... Any accepts anything
ok 3 - ... Any accepts anything
ok 4 - ... Any accepts anything
ok 5 - ... Any accepts anything
ok 6 - ... Any accepts anything
ok 7 - ... Any accepts anything
ok 8 - ... Any accepts anything
ok 9 - ... Any accepts anything
ok 10 - ... Any accepts anything
ok 11 - ... Any accepts anything
ok 12 - ... Any accepts anything
ok 13 - ... Any accepts anything
ok 14 - ... Any accepts anything
ok 15 - ... Any accepts anything
ok 16 - ... Item is the base type, so accepts anything
ok 17 - ... Item is the base type, so accepts anything
ok 18 - ... Item is the base type, so accepts anything
ok 19 - ... Item is the base type, so accepts anything
ok 20 - ... Item is the base type, so accepts anything
ok 21 - ... Item is the base type, so accepts anything
ok 22 - ... Item is the base type, so accepts anything
ok 23 - ... Item is the base type, so accepts anything
ok 24 - ... Item is the base type, so accepts anything
ok 25 - ... Item is the base type, so accepts anything
ok 26 - ... Item is the base type, so accepts anything
ok 27 - ... Item is the base type, so accepts anything
ok 28 - ... Item is the base type, so accepts anything
ok 29 - ... Item is the base type, so accepts anything
ok 30 - ... Defined accepts anything which is defined
ok 31 - ... Defined accepts anything which is defined
ok 32 - ... Defined accepts anything which is defined
ok 33 - ... Defined accepts anything which is defined
ok 34 - ... Defined accepts anything which is defined
ok 35 - ... Defined accepts anything which is defined
ok 36 - ... Defined accepts anything which is defined
ok 37 - ... Defined accepts anything which is defined
ok 38 - ... Defined accepts anything which is defined
ok 39 - ... Defined accepts anything which is defined
ok 40 - ... Defined accepts anything which is defined
ok 41 - ... Defined accepts anything which is defined
ok 42 - ... Defined accepts anything which is defined
ok 43 - ... Defined accepts anything which is defined
ok 44 - ... Undef accepts anything which is not defined
ok 45 - ... Undef accepts anything which is not defined
ok 46 - ... Undef accepts anything which is not defined
ok 47 - ... Undef accepts anything which is not defined
ok 48 - ... Undef accepts anything which is not defined
ok 49 - ... Undef accepts anything which is not defined
ok 50 - ... Undef accepts anything which is not defined
ok 51 - ... Undef accepts anything which is not defined
ok 52 - ... Undef accepts anything which is not defined
ok 53 - ... Undef accepts anything which is not defined
ok 54 - ... Undef accepts anything which is not defined
ok 55 - ... Undef accepts anything which is not defined
ok 56 - ... Undef accepts anything which is not defined
ok 57 - ... Undef accepts anything which is not defined
ok 58 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 59 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 60 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 61 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 62 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 63 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 64 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 65 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 66 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 67 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 68 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 69 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 70 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 71 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 72 - ... Bool rejects anything which is not a 1 or 0 or "" or undef
ok 73 - ... Value accepts anything which is not a Ref
ok 74 - ... Value accepts anything which is not a Ref
ok 75 - ... Value accepts anything which is not a Ref
ok 76 - ... Value accepts anything which is not a Ref
ok 77 - ... Value rejects anything which is not a Value
ok 78 - ... Value rejects anything which is not a Value
ok 79 - ... Value rejects anything which is not a Value
ok 80 - ... Value rejects anything which is not a Value
ok 81 - ... Value accepts anything which is not a Ref
ok 82 - ... Value rejects anything which is not a Value
ok 83 - ... Value rejects anything which is not a Value
ok 84 - ... Value rejects anything which is not a Value
ok 85 - ... Value rejects anything which is not a Value
ok 86 - ... Value rejects anything which is not a Value
ok 87 - ... Ref accepts anything which is not a Value
ok 88 - ... Ref accepts anything which is not a Value
ok 89 - ... Ref accepts anything which is not a Value
ok 90 - ... Ref accepts anything which is not a Value
ok 91 - ... Ref rejects anything which is not a Ref
ok 92 - ... Ref rejects anything which is not a Ref
ok 93 - ... Ref rejects anything which is not a Ref
ok 94 - ... Ref rejects anything which is not a Ref
ok 95 - ... Ref accepts anything which is not a Value
ok 96 - ... Ref rejects anything which is not a Ref
ok 97 - ... Ref rejects anything which is not a Ref
ok 98 - ... Ref rejects anything which is not a Ref
ok 99 - ... Ref rejects anything which is not a Ref
ok 100 - ... Ref rejects anything which is not a Ref
ok 101 - ... Int accepts anything which is an Int
ok 102 - ... Int accepts anything which is an Int
ok 103 - ... Int accepts anything which is not an Int
ok 104 - ... Int accepts anything which is not an Int
ok 105 - ... Int rejects anything which is not an Int
ok 106 - ... Int rejects anything which is not an Int
ok 107 - ... Int rejects anything which is not an Int
ok 108 - ... Int rejects anything which is not an Int
ok 109 - ... Int rejects anything which is not an Int
ok 110 - ... Int rejects anything which is not an Int
ok 111 - ... Int rejects anything which is not an Int
ok 112 - ... Int rejects anything which is not an Int
ok 113 - ... Int rejects anything which is not an Int
ok 114 - ... Int rejects anything which is not an Int
ok 115 - ... Int rejects anything which is not an Int
ok 116 - ... Int rejects anything which is not an Int
ok 117 - ... Num accepts anything which is an Num
ok 118 - ... Num accepts anything which is an Num
ok 119 - ... Num accepts anything which is an Num
ok 120 - ... Num accepts anything which is an Num
ok 121 - ... Num rejects anything which is not a Num
ok 122 - ... Num rejects anything which is not a Num
ok 123 - ... Num rejects anything which is not a Num
ok 124 - ... Num rejects anything which is not a Num
ok 125 - ... Num rejects anything which is not a Num
ok 126 - ... Num rejects anything which is not a Num
ok 127 - ... Num rejects anything which is not a Num
ok 128 - ... Num rejects anything which is not a Num
ok 129 - ... Num rejects anything which is not a Num
ok 130 - ... Num rejects anything which is not a Num
ok 131 - ... Num rejects anything which is not a Num
ok 132 - ... Num rejects anything which is not a Num
ok 133 - ... Str accepts anything which is a Str
ok 134 - ... Str accepts anything which is a Str
ok 135 - ... Str accepts anything which is a Str
ok 136 - ... Str accepts anything which is a Str
ok 137 - ... Str accepts anything which is a Str
ok 138 - ... Str rejects anything which is not a Str
ok 139 - ... Str rejects anything which is not a Str
ok 140 - ... Str rejects anything which is not a Str
ok 141 - ... Str rejects anything which is not a Str
ok 142 - ... Str rejects anything which is not a Str
ok 143 - ... Str rejects anything which is not a Str
ok 144 - ... Str rejects anything which is not a Str
ok 145 - ... Str rejects anything which is not a Str
ok 146 - ... Str rejects anything which is not a Str
ok 147 - ... Str rejects anything which is not a Str
ok 148 - ... ScalarRef rejects anything which is not a ScalarRef
ok 149 - ... ScalarRef rejects anything which is not a ScalarRef
ok 150 - ... ScalarRef rejects anything which is not a ScalarRef
ok 151 - ... ScalarRef rejects anything which is not a ScalarRef
ok 152 - ... ScalarRef rejects anything which is not a ScalarRef
ok 153 - ... ScalarRef rejects anything which is not a ScalarRef
ok 154 - ... ScalarRef rejects anything which is not a ScalarRef
ok 155 - ... ScalarRef accepts anything which is a ScalarRef
ok 156 - ... ScalarRef accepts references to references
ok 157 - ... ScalarRef rejects anything which is not a ScalarRef
ok 158 - ... ScalarRef rejects anything which is not a ScalarRef
ok 159 - ... ScalarRef rejects anything which is not a ScalarRef
ok 160 - ... ScalarRef rejects anything which is not a ScalarRef
ok 161 - ... ScalarRef rejects anything which is not a ScalarRef
ok 162 - ... ScalarRef rejects anything which is not a ScalarRef
ok 163 - ... ArrayRef rejects anything which is not a ArrayRef
ok 164 - ... ArrayRef rejects anything which is not a ArrayRef
ok 165 - ... ArrayRef rejects anything which is not a ArrayRef
ok 166 - ... ArrayRef rejects anything which is not a ArrayRef
ok 167 - ... ArrayRef accepts anything which is a ArrayRef
ok 168 - ... ArrayRef rejects anything which is not a ArrayRef
ok 169 - ... ArrayRef rejects anything which is not a ArrayRef
ok 170 - ... ArrayRef rejects anything which is not a ArrayRef
ok 171 - ... ArrayRef rejects anything which is not a ArrayRef
ok 172 - ... ArrayRef rejects anything which is not a ArrayRef
ok 173 - ... ArrayRef rejects anything which is not a ArrayRef
ok 174 - ... ArrayRef rejects anything which is not a ArrayRef
ok 175 - ... ArrayRef rejects anything which is not a ArrayRef
ok 176 - ... ArrayRef rejects anything which is not a ArrayRef
ok 177 - ... HashRef rejects anything which is not a HashRef
ok 178 - ... HashRef rejects anything which is not a HashRef
ok 179 - ... HashRef rejects anything which is not a HashRef
ok 180 - ... HashRef rejects anything which is not a HashRef
ok 181 - ... HashRef rejects anything which is not a HashRef
ok 182 - ... HashRef accepts anything which is a HashRef
ok 183 - ... HashRef rejects anything which is not a HashRef
ok 184 - ... HashRef rejects anything which is not a HashRef
ok 185 - ... HashRef rejects anything which is not a HashRef
ok 186 - ... HashRef rejects anything which is not a HashRef
ok 187 - ... HashRef rejects anything which is not a HashRef
ok 188 - ... HashRef rejects anything which is not a HashRef
ok 189 - ... HashRef rejects anything which is not a HashRef
ok 190 - ... HashRef rejects anything which is not a HashRef
ok 191 - ... CodeRef rejects anything which is not a CodeRef
ok 192 - ... CodeRef rejects anything which is not a CodeRef
ok 193 - ... CodeRef rejects anything which is not a CodeRef
ok 194 - ... CodeRef rejects anything which is not a CodeRef
ok 195 - ... CodeRef rejects anything which is not a CodeRef
ok 196 - ... CodeRef rejects anything which is not a CodeRef
ok 197 - ... CodeRef accepts anything which is a CodeRef
ok 198 - ... CodeRef rejects anything which is not a CodeRef
ok 199 - ... CodeRef rejects anything which is not a CodeRef
ok 200 - ... CodeRef rejects anything which is not a CodeRef
ok 201 - ... CodeRef rejects anything which is not a CodeRef
ok 202 - ... CodeRef rejects anything which is not a CodeRef
ok 203 - ... CodeRef rejects anything which is not a CodeRef
ok 204 - ... CodeRef rejects anything which is not a CodeRef
ok 205 - ... RegexpRef rejects anything which is not a RegexpRef
ok 206 - ... RegexpRef rejects anything which is not a RegexpRef
ok 207 - ... RegexpRef rejects anything which is not a RegexpRef
ok 208 - ... RegexpRef rejects anything which is not a RegexpRef
ok 209 - ... RegexpRef rejects anything which is not a RegexpRef
ok 210 - ... RegexpRef rejects anything which is not a RegexpRef
ok 211 - ... RegexpRef rejects anything which is not a RegexpRef
ok 212 - ... RegexpRef rejects anything which is not a RegexpRef
ok 213 - ... RegexpRef rejects anything which is not a RegexpRef
ok 214 - ... RegexpRef rejects anything which is not a RegexpRef
ok 215 - ... RegexpRef rejects anything which is not a RegexpRef
ok 216 - ... RegexpRef accepts anything which is a RegexpRef
ok 217 - ... RegexpRef rejects anything which is not a RegexpRef
ok 218 - ... RegexpRef rejects anything which is not a RegexpRef
ok 219 - ... GlobRef rejects anything which is not a GlobRef
ok 220 - ... GlobRef rejects anything which is not a GlobRef
ok 221 - ... GlobRef rejects anything which is not a GlobRef
ok 222 - ... GlobRef rejects anything which is not a GlobRef
ok 223 - ... GlobRef rejects anything which is not a GlobRef
ok 224 - ... GlobRef rejects anything which is not a GlobRef
ok 225 - ... GlobRef rejects anything which is not a GlobRef
ok 226 - ... GlobRef rejects anything which is not a GlobRef
ok 227 - ... GlobRef rejects anything which is not a GlobRef
ok 228 - ... GlobRef accepts anything which is a GlobRef
ok 229 - ... GlobRef accepts anything which is a GlobRef
ok 230 - ... GlobRef rejects anything which is not a GlobRef
ok 231 - ... GlobRef rejects anything which is not a GlobRef
ok 232 - ... GlobRef rejects anything which is not a GlobRef
ok 233 - ... GlobRef rejects anything which is not a GlobRef
ok 234 - ... FileHandle rejects anything which is not a FileHandle
ok 235 - ... FileHandle rejects anything which is not a FileHandle
ok 236 - ... FileHandle rejects anything which is not a FileHandle
ok 237 - ... FileHandle rejects anything which is not a FileHandle
ok 238 - ... FileHandle rejects anything which is not a FileHandle
ok 239 - ... FileHandle rejects anything which is not a FileHandle
ok 240 - ... FileHandle rejects anything which is not a FileHandle
ok 241 - ... FileHandle rejects anything which is not a FileHandle
ok 242 - ... FileHandle rejects anything which is not a FileHandle
ok 243 - ... FileHandle rejects anything which is not a FileHandle
ok 244 - ... FileHandle accepts anything which is a FileHandle
ok 245 - ... FileHandle accepts anything which is a FileHandle
ok 246 - ... FileHandle rejects anything which is not a FileHandle
ok 247 - ... FileHandle rejects anything which is not a FileHandle
ok 248 - ... FileHandle rejects anything which is not a FileHandle
ok 249 - ... Object rejects anything which is not blessed
ok 250 - ... Object rejects anything which is not blessed
ok 251 - ... Object rejects anything which is not blessed
ok 252 - ... Object rejects anything which is not blessed
ok 253 - ... Object rejects anything which is not blessed
ok 254 - ... Object rejects anything which is not blessed
ok 255 - ... Object rejects anything which is not blessed
ok 256 - ... Object rejects anything which is not blessed
ok 257 - ... Object rejects anything which is not blessed
ok 258 - ... Object rejects anything which is not blessed
ok 259 - ... Object rejects anything which is not blessed
ok 260 - ... Object rejects anything which is not blessed
ok 261 - ... Object accepts anything which is blessed
ok 262 - ... Object accepts anything which is blessed
ok 263 - ... ClassName rejects anything which is not a ClassName
ok 264 - ... ClassName rejects anything which is not a ClassName
ok 265 - ... ClassName rejects anything which is not a ClassName
ok 266 - ... ClassName rejects anything which is not a ClassName
ok 267 - ... ClassName rejects anything which is not a ClassName
ok 268 - ... ClassName rejects anything which is not a ClassName
ok 269 - ... ClassName rejects anything which is not a ClassName
ok 270 - ... ClassName rejects anything which is not a ClassName
ok 271 - ... ClassName rejects anything which is not a ClassName
ok 272 - ... ClassName rejects anything which is not a ClassName
ok 273 - ... ClassName rejects anything which is not a ClassName
ok 274 - ... ClassName rejects anything which is not a ClassName
ok 275 - ... ClassName rejects anything which is not a ClassName
ok 276 - ... ClassName rejects anything which is not a ClassName
ok 277 - ... ClassName rejects anything which is not a ClassName
ok 278 - ... ClassName accepts anything which is a ClassName
ok 279 - ... ClassName accepts anything which is a ClassName
ok 280 - ... ClassName accepts anything which is a ClassName
ok 281 - ... RoleName rejects anything which is not a RoleName
ok 282 - ... RoleName rejects anything which is not a RoleName
ok 283 - ... RoleName rejects anything which is not a RoleName
ok 284 - ... RoleName rejects anything which is not a RoleName
ok 285 - ... RoleName rejects anything which is not a RoleName
ok 286 - ... Rolename rejects anything which is not a RoleName
ok 287 - ... Rolename rejects anything which is not a RoleName
ok 288 - ... Rolename rejects anything which is not a RoleName
ok 289 - ... Rolename rejects anything which is not a RoleName
ok 290 - ... Rolename rejects anything which is not a RoleName
ok 291 - ... Rolename rejects anything which is not a RoleName
ok 292 - ... Rolename rejects anything which is not a RoleName
ok 293 - ... Rolename rejects anything which is not a RoleName
ok 294 - ... Rolename rejects anything which is not a RoleName
ok 295 - ... Rolename rejects anything which is not a RoleName
ok 296 - ... Rolename rejects anything which is not a RoleName
ok 297 - ... Rolename rejects anything which is not a RoleName
ok 298 - ... RoleName accepts anything which is a RoleName
ok 299 - ... RoleName accepts anything which is a RoleName
1..299
ok
t/040_type_constraints/004_util_find_type_constraint.t .........
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - ... got the right name for Any
ok 3 - ... got the right name for Item
ok 4 - ... got the right name for Bool
ok 5 - ... got the right name for Undef
ok 6 - ... got the right name for Defined
ok 7 - ... got the right name for Value
ok 8 - ... got the right name for Num
ok 9 - ... got the right name for Int
ok 10 - ... got the right name for Str
ok 11 - ... got the right name for Ref
ok 12 - ... got the right name for ScalarRef
ok 13 - ... got the right name for ArrayRef
ok 14 - ... got the right name for HashRef
ok 15 - ... got the right name for CodeRef
ok 16 - ... got the right name for RegexpRef
ok 17 - ... got the right name for Object
1..17
ok
t/040_type_constraints/005_util_type_coercion.t ................
1..8
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - The object isa HTTPHeader
ok 3 - ... this passed the type test
ok 4 - ... this did not pass the type test
ok 5 - ... this did not pass the type test
ok 6 - coercion of anonymous subtype succeeds
ok 7 - coerce when needed
ok 8 - do not coerce when unneeded
ok
t/040_type_constraints/006_util_type_reloading.t ...............
ok 1 - ... loaded Foo successfully
ok 2 - ... re-loaded Foo successfully
ok 3 - ... loaded Bar successfully
ok 4 - ... re-loaded Bar successfully
1..4
ok
t/040_type_constraints/007_util_more_type_coercion.t ...........
ok 1 - The object isa Engine
ok 2 - ... type was coerced without incident
ok 3 - The object isa HTTPHeader
ok 4 - ... got the right array value of the header
ok 5 - ... no hash value set
ok 6 - ... type was coerced without incident
ok 7 - The object isa HTTPHeader
ok 8 - ... got the right hash value of the header
ok 9 - ... no array value set
ok 10 - ... dies with the wrong type, even after coercion
ok 11 - ... lives with the right type, even after coercion
ok 12 - The object isa Engine
ok 13 - The object isa HTTPHeader
ok 14 - ... got the right array value of the header
ok 15 - ... no hash value set
ok 16 - The object isa Engine
ok 17 - The object isa HTTPHeader
ok 18 - ... got the right hash value of the header
ok 19 - ... no array value set
ok 20 - The object isa Engine
ok 21 - The object isa HTTPHeader
ok 22 - ... no hash value set
ok 23 - ... no array value set
ok 24 - ... dies correctly with bad params
ok 25 - ... dies correctly with bad params
1..25
ok
t/040_type_constraints/009_union_types_and_coercions.t .........
ok 1 - The object isa Email::Mouse
ok 2 - The object isa IO::String
ok 3 - ... got correct empty string
ok 4 - The object isa Email::Mouse
ok 5 - The object isa IO::String
ok 6 - ... got correct string
ok 7 - ... this will coerce correctly
ok 8 - The object isa IO::String
ok 9 - ... got correct string
ok 10 - The object isa Email::Mouse
ok 11 - The object isa IO::String
ok 12 - ... got correct string
ok 13 - ... this will coerce correctly
ok 14 - The object isa IO::String
ok 15 - ... got correct string
ok 16 - The object isa Email::Mouse
ok 17 - The object isa IO::String
ok 18 - ... and it is the one we expected
ok 19 - ... got correct string
ok 20 - ... this will coerce correctly
ok 21 - The object isa IO::String
ok 22 - ... and it is the one we expected
ok 23 - ... got correct string
ok 24 - The object isa Email::Mouse
ok 25 - The object isa IO::File
ok 26 - The object isa Email::Mouse
ok 27 - The object isa IO::File
ok 28 - ... and it is the one we expected
ok 29 - Can pass non-ref value for carray
ok 30 - carray was coerced to an array ref
ok 31 - Cannot pass a hash ref for carray attribute, and hash ref is not coerced to an undef
1..31
ok
t/040_type_constraints/010_misc_type_tests.t ...................
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - ... create bare subtype fine
ok 3 - The object isa Mouse::Meta::TypeConstraint
ok 4 - Created Instance
ok 5 - isa correct type isa Test::Mouse::Meta::TypeConstraint::Union
ok 6 - Got expected stringification result
ok 7 - made a subtype from our type object
ok 8 - made a subtype of our subtype
ok 9 - we can assert_valid that 1 is of type Num
ok 10 - 'foo' is not of type Num
ok 11 - correct error thrown
ok 12 - Foo type is not equal to Bar type
ok 13 - Foo equals Foo
ok 14 - overloading works
ok 15 - type constraint boolean overload works
1..15
ok
t/040_type_constraints/011_container_type_constraint.t .........
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - use Mouse::Meta::TypeConstraint;
ok 3 - The object isa Mouse::Meta::TypeConstraint
ok 4 - The object isa Mouse::Meta::TypeConstraint
ok 5 - ... [ 1, 2, 3, 4 ] passed successfully
ok 6 - ... [qw/foo bar baz/] failed successfully
ok 7 - ... [ 1, 2, 3, qw/foo bar/] failed successfully
ok 8 - ... 1 failed successfully
ok 9 - ... {} failed successfully
ok 10 - ... sub { () } failed successfully
ok 11 - The object isa Mouse::Meta::TypeConstraint
ok 12 - The object isa Mouse::Meta::TypeConstraint
ok 13 - ... { one => 1, two => 2, three => 3 } passed successfully
ok 14 - ... { 1 => one, 2 => two, 3 => three } failed successfully
ok 15 - ... { 1 => one, 2 => two, three => 3 } failed successfully
ok 16 - ... 1 failed successfully
ok 17 - ... [] failed successfully
ok 18 - ... sub { () } failed successfully
ok 19 - The object isa Mouse::Meta::TypeConstraint
ok 20 - The object isa Mouse::Meta::TypeConstraint
ok 21 - ... [[ 1, 2, 3 ], [ 4, 5, 6 ]] passed successfully
ok 22 - ... [[ 1, 2, 3 ], [ qw/foo bar/ ]] failed successfully
ok 23 - The object isa Mouse::Meta::TypeConstraint
ok 24 - The object isa Mouse::Meta::TypeConstraint
1..24
ok
t/040_type_constraints/015_enum.t ..............................
ok 1 - 'a' is a letter
ok 2 - 'b' is a letter
ok 3 - 'c' is a letter
ok 4 - 'd' is a letter
ok 5 - 'e' is a letter
ok 6 - 'f' is a letter
ok 7 - 'g' is a letter
ok 8 - 'h' is a letter
ok 9 - 'i' is a letter
ok 10 - 'j' is a letter
ok 11 - 'k' is a letter
ok 12 - 'l' is a letter
ok 13 - 'm' is a letter
ok 14 - 'n' is a letter
ok 15 - 'o' is a letter
ok 16 - 'p' is a letter
ok 17 - 'q' is a letter
ok 18 - 'r' is a letter
ok 19 - 's' is a letter
ok 20 - 't' is a letter
ok 21 - 'u' is a letter
ok 22 - 'v' is a letter
ok 23 - 'w' is a letter
ok 24 - 'x' is a letter
ok 25 - 'y' is a letter
ok 26 - 'z' is a letter
ok 27 - 'A' is a letter
ok 28 - 'B' is a letter
ok 29 - 'C' is a letter
ok 30 - 'D' is a letter
ok 31 - 'E' is a letter
ok 32 - 'F' is a letter
ok 33 - 'G' is a letter
ok 34 - 'H' is a letter
ok 35 - 'I' is a letter
ok 36 - 'J' is a letter
ok 37 - 'K' is a letter
ok 38 - 'L' is a letter
ok 39 - 'M' is a letter
ok 40 - 'N' is a letter
ok 41 - 'O' is a letter
ok 42 - 'P' is a letter
ok 43 - 'Q' is a letter
ok 44 - 'R' is a letter
ok 45 - 'S' is a letter
ok 46 - 'T' is a letter
ok 47 - 'U' is a letter
ok 48 - 'V' is a letter
ok 49 - 'W' is a letter
ok 50 - 'X' is a letter
ok 51 - 'Y' is a letter
ok 52 - 'Z' is a letter
ok 53 - 'ab' is not a letter
ok 54 - 'abc' is not a letter
ok 55 - 'abcd' is not a letter
ok 56 - '0' is not a letter
ok 57 - '4' is not a letter
ok 58 - '9' is not a letter
ok 59 - '~' is not a letter
ok 60 - '@' is not a letter
ok 61 - '$' is not a letter
ok 62 - '%' is not a letter
ok 63 - 'l33t' is not a letter
ok 64 - 'st3v4n' is not a letter
ok 65 - '3num' is not a letter
ok 66 - 'Perl 5' is a language
ok 67 - 'Perl 6' is a language
ok 68 - 'PASM' is a language
ok 69 - 'PIR' is a language
ok 70 - 'perl 5' is not a language
ok 71 - 'Python' is not a language
ok 72 - 'Ruby' is not a language
ok 73 - 'Perl 666' is not a language
ok 74 - 'PASM++' is not a language
ok 75 - '*' is a metacharacter
ok 76 - '+' is a metacharacter
ok 77 - '?' is a metacharacter
ok 78 - '.' is a metacharacter
ok 79 - '|' is a metacharacter
ok 80 - '(' is a metacharacter
ok 81 - ')' is a metacharacter
ok 82 - '[' is a metacharacter
ok 83 - ']' is a metacharacter
ok 84 - '\' is a metacharacter
ok 85 - '<' is not a metacharacter
ok 86 - '>' is not a metacharacter
ok 87 - '&' is not a metacharacter
ok 88 - '%' is not a metacharacter
ok 89 - '$' is not a metacharacter
ok 90 - '@' is not a metacharacter
ok 91 - '!' is not a metacharacter
ok 92 - '~' is not a metacharacter
ok 93 - '`' is not a metacharacter
ok 94 - '.*' is not a metacharacter
ok 95 - 'fish(sticks)?' is not a metacharacter
ok 96 - 'atreides' is not a metacharacter
ok 97 - '^1?$|^(11+?)\1+$' is not a metacharacter
ok 98 - The object isa Mouse::Meta::TypeConstraint
ok 99 - 'Perl 5' is a language
ok 100 - 'Perl 6' is a language
ok 101 - 'PASM' is a language
ok 102 - 'PIR' is a language
ok 103 - enum not type of Object
ok 104 - enum not type of nonexistant type
1..104
ok
t/040_type_constraints/016_subtyping_parameterized_types.t .....
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - ... created the subtype special okay
ok 3 - The object isa Mouse::Meta::TypeConstraint
ok 4 - ... name is correct
ok 5 - The object isa Mouse::Meta::TypeConstraint
ok 6 - The object isa Mouse::Meta::TypeConstraint
ok 7 - ... parent name is correct
ok 8 - ... validated {one=>1, two=>2} correctly
ok 9 - ... validated it correctly
ok 10 - not a non existant type
ok 11 - not a subtype of a non existant type
ok 12 - ... created the subtype special okay
ok 13 - The object isa Mouse::Meta::TypeConstraint
ok 14 - ... name is correct
ok 15 - The object isa Mouse::Meta::TypeConstraint
ok 16 - The object isa Mouse::Meta::TypeConstraint
ok 17 - ... parent name is correct
ok 18 - ... validated it correctly
ok 19 - ... validated { zero => 10, one => 11, two => 12 } correctly
ok 20 - ... validated it correctly
ok 21
ok 22 - The object isa Mouse::Meta::TypeConstraint
ok 23 - The object isa Mouse::Meta::TypeConstraint
ok 24 - validated
ok 25 - failed
ok 26 - The object isa Mouse::Meta::TypeConstraint
ok 27 - validated
ok 28 - failed
ok 29 - failed
ok 30 - [1,2,3] is okay
ok 31 - ["a","b"] is not
ok 32 - 100 is big enough
ok 33 - 5 is big enough
ok 34 - [15,20,25] is a bunch of big ints
ok 35 - [15,5,25] is NOT a bunch of big ints
ok 36 - Failed to parameterize with a bad type parameter
1..36
ok
t/040_type_constraints/017_subtyping_union_types.t .............
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - ... created the subtype special okay
ok 3 - The object isa Mouse::Meta::TypeConstraint
ok 4 - ... name is correct
ok 5 - The object isa Mouse::Meta::TypeConstraint
ok 6 - The object isa Mouse::Meta::TypeConstraint
ok 7 - ... parent name is correct
ok 8 - ... validated it correctly
ok 9 - ... validated it correctly
ok 10 - ... validated it correctly
ok 11 - ... created the subtype special okay
ok 12 - The object isa Mouse::Meta::TypeConstraint
ok 13 - ... name is correct
ok 14 - The object isa Mouse::Meta::TypeConstraint
ok 15 - The object isa Mouse::Meta::TypeConstraint
ok 16 - ... parent name is correct
ok 17 - ... validated it correctly
ok 18 - ... validated it correctly
ok 19 - ... validated it correctly
ok 20 - ... validated it correctly
ok 21 - ... validated it correctly
1..21
ok
t/040_type_constraints/018_custom_parameterized_types.t ........
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - use Mouse::Meta::TypeConstraint;
ok 3 - ... created the subtype special okay
ok 4 - ... created the subtype special okay
ok 5 - ... created the subtype special okay
ok 6 - The object isa Mouse::Meta::TypeConstraint
ok 7 - ... name is correct
ok 8 - The object isa Mouse::Meta::TypeConstraint
ok 9 - ... parent name is correct
ok 10 - ... validated it correctly
ok 11 - ... validated it correctly
not ok 12 - equals to self # TODO Mouse does not support equals()
# Failed (TODO) test 'equals to self'
# at t/040_type_constraints/018_custom_parameterized_types.t line 51.
ok 13 - not equal to parent # TODO Mouse does not support equals()
ok 14 - ... validated it correctly
ok 15 - ... validated it correctly
ok 16 - ... validated it correctly
ok 17 - ... validated it correctly
not ok 18 - equals to self # TODO Mouse does not support equals()
# Failed (TODO) test 'equals to self'
# at t/040_type_constraints/018_custom_parameterized_types.t line 62.
ok 19 - equals to self # TODO Mouse does not support equals()
ok 20 - not equal to unparametrized self # TODO Mouse does not support equals()
not ok 21 - equal to clone # TODO Mouse does not support equals()
# Failed (TODO) test 'equal to clone'
# at t/040_type_constraints/018_custom_parameterized_types.t line 65.
ok 22 - not equal to different parameter # TODO Mouse does not support equals()
ok 23 - ... validated it correctly
ok 24 - ... validated it correctly
ok 25 - ... validated it correctly
ok 26 - ... validated it correctly
ok 27 - non-containers cannot be parameterized
ok 28 - non-containers cannot be parameterized
1..28
ok
t/040_type_constraints/021_maybe_type_constraint.t .............
ok 1 - The object isa Mouse::Meta::TypeConstraint
ok 2 - The object isa Mouse::Meta::TypeConstraint
not ok 3 - equals self # TODO not yet
# Failed (TODO) test 'equals self'
# at t/040_type_constraints/021_maybe_type_constraint.t line 18.
ok 4 - not equal to parent
ok 5 - not equal to Maybe
not ok 6 - parent is Maybe # TODO not yet
# Failed (TODO) test 'parent is Maybe'
# at t/040_type_constraints/021_maybe_type_constraint.t line 22.
not ok 7 - equal to clone # TODO not yet
# Failed (TODO) test 'equal to clone'
# at t/040_type_constraints/021_maybe_type_constraint.t line 24.
ok 8 - not equal to clone with diff param
ok 9 - not equal to declarative version of diff param
ok 10 - ... checked type correctly (pass)
ok 11 - ... checked type correctly (pass)
ok 12 - ... checked type correctly (fail)
ok 13 - ... checked type correctly (fail)
ok 14 - ... Bar->new isa Bar
ok 15 - ... undef isnta Bar
ok 16 - ... Bar->new isa maybe(Bar)
ok 17 - ... undef isa maybe(Bar)
ok 18 - ... 1 isnta maybe(Bar)
ok 19 - ... it worked!
ok 20 - ... it worked!
ok 21 - ... failed the type check
ok 22 - ... failed the type check
ok 23 - Create good test object
ok 24 - made TC Maybe[Int]
ok 25 - passed (1)
ok 26 - assigned (1)
not ok 27 - passed () # TODO considered miss design
# Failed (TODO) test 'passed ()'
# at t/040_type_constraints/021_maybe_type_constraint.t line 110.
ok 28 - assigned ()
ok 29 - passed (0)
ok 30 - assigned (0)
ok 31 - passed (undef)
ok 32 - assigned (undef)
ok 33 - failed ("")
ok 34 - failed assigned ("")
ok 35 - failed ("a")
ok 36 - failed assigned ("a")
1..36
ok
t/040_type_constraints/022_custom_type_errors.t ................
ok 1 - ... no errors thrown, value is good
ok 2 - ... no errors thrown, value is good
ok 3 - gave custom supertype error message on new
ok 4 - gave custom subtype error message on new
ok 5 - ... no errors thrown, value is good
ok 6 - gave custom supertype error message on set to 0
ok 7 - gave custom subtype error message on set to 16
ok 8 - ... no errors thrown, value is good
ok 9 - gave custom supertype error message on lazy set to 0
1..9
ok
t/040_type_constraints/023_types_and_undef.t ...................
ok 1 - ... undef is a Undef
ok 2 - ... undef is NOT a Defined
ok 3 - ... undef is NOT an Int
ok 4 - ... undef is NOT a Number
ok 5 - ... undef is NOT a Str
ok 6 - ... undef is NOT a String
ok 7 - ... 5 is a NOT a Undef
ok 8 - ... 5 is a Defined
ok 9 - ... 5 is an Int
ok 10 - ... 5 is a Number
ok 11 - ... 5 is a Str
ok 12 - ... 5 is NOT a String
ok 13 - ... 0.5 is a NOT a Undef
ok 14 - ... 0.5 is a Defined
ok 15 - ... 0.5 is NOT an Int
ok 16 - ... 0.5 is a Number
ok 17 - ... 0.5 is a Str
ok 18 - ... 0.5 is NOT a String
ok 19 - ... "Foo" is NOT a Undef
ok 20 - ... "Foo" is a Defined
ok 21 - ... "Foo" is NOT an Int
ok 22 - ... "Foo" is NOT a Number
ok 23 - ... "Foo" is a Str
ok 24 - ... "Foo" is a String
ok 25 - ... undef is a Foo->Undef
ok 26 - ... undef is NOT a Foo->Defined
ok 27 - ... undef is NOT a Foo->Int
ok 28 - ... undef is NOT a Foo->Number
ok 29 - ... undef is NOT a Foo->Str
ok 30 - ... undef is NOT a Foo->String
ok 31 - ... 5 is NOT a Foo->Undef
ok 32 - ... 5 is a Foo->Defined
ok 33 - ... 5 is a Foo->Int
ok 34 - ... 5 is a Foo->Number
ok 35 - ... 5 is a Foo->Str
ok 36 - ... 5 is NOT a Foo->String
ok 37 - ... 0.5 is NOT a Foo->Undef
ok 38 - ... 0.5 is a Foo->Defined
ok 39 - ... 0.5 is NOT a Foo->Int
ok 40 - ... 0.5 is a Foo->Number
ok 41 - ... 0.5 is a Foo->Str
ok 42 - ... 0.5 is NOT a Foo->String
ok 43 - ... "Foo" is NOT a Foo->Undef
ok 44 - ... "Foo" is a Foo->Defined
ok 45 - ... "Foo" is NOT a Foo->Int
ok 46 - ... "Foo" is NOT a Foo->Number
ok 47 - ... "Foo" is a Foo->Str
ok 48 - ... "Foo" is a Foo->String
ok 49 - ... undef is a Foo->Undef
ok 50 - ... undef is NOT a Foo->Defined
ok 51 - ... undef is NOT a Foo->Int
ok 52 - ... undef is NOT a Foo->Number
ok 53 - ... undef is NOT a Foo->Str
ok 54 - ... undef is NOT a Foo->String
1..54
ok
t/040_type_constraints/025_type_coersion_on_lazy_attributes.t ..
ok 1
ok 2
1..2
ok
t/040_type_constraints/027_parameterize_from.t .................
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - Got expected type instance isa Mouse::Meta::TypeConstraint
ok 3 - Create Dummy object for testing
ok 4 - isa correct type isa Test::Mouse::Meta::TypeConstraint
ok 5 - No problem setting parameterizable
ok 6 - Got expected values
ok 7 - No problem setting parameterized
ok 8 - Got expected values
ok 9 - parameterized throws expected error
ok 10 - No problem setting from_parameterizable
ok 11 - Got expected values
ok 12 - from_parameterizable throws expected error
1..12
ok
t/040_type_constraints/029_define_type_twice_throws.t ..........
ok 1 - use Mouse::Util::TypeConstraints;
ok 2 - Trying to create same type twice throws
1..2
ok
t/040_type_constraints/031_subtype_auto_vivify_parent.t ........
ok 1 - made a FooWithSize constraint
ok 2 - type has a parent type
ok 3 - parent type is Foo
ok 4 - parent type constraint is a class type isa Mouse::Meta::TypeConstraint
1..4
ok
t/040_type_constraints/032_throw_error.t .......................
not ok 1 - can throw a proper error without Mouse being loaded by the caller # TODO Mouse is not yet completed
# Failed (TODO) test 'can throw a proper error without Mouse being loaded by the caller'
# at t/040_type_constraints/032_throw_error.t line 15.
# 'Undefined subroutine &Mouse::Util::TypeConstraints::create_type_constraint_union called at t/040_type_constraints/032_throw_error.t line 13.
# '
# doesn't match '(?^:You\ must\ pass\ in\ at\ least\ 2\ type\ names\ to\ make\ a\ union)'
1..1
ok
t/040_type_constraints/034_duck_types.t ........................
ok 1 - the Duck lives okay
ok 2 - the Swan doesn't quack
ok 3 - but a Swan can honk
ok 4 - the RubberDuck lives okay
ok 5 - but a Swan can honk
1..5
ok
t/050_metaclasses/001_custom_attr_meta_with_roles.t ............
ok 1 - The object isa My::Class
ok 2 - ... got the attribute
ok 3 - The object isa My::Custom::Meta::Attr
1..3
ok
t/050_metaclasses/002_custom_attr_meta_as_role.t ...............
ok 1 - creating custom attribute "metarole" is okay
ok 2 - custom attribute metaclass extending role is okay
1..2
ok
t/050_metaclasses/004_moose_for_meta.t .........................
ok 1 - The object isa My::Meta::Class
ok 2 - The object isa Mouse::Meta::Class
ok 3 - The object isa Mouse::Meta::Class
ok 4 - ... got the default superclasses
ok 5 - The object isa My::Meta::Attribute::DefaultReadOnly
ok 6 - The object isa Mouse::Meta::Attribute
ok 7 - The object isa Mouse::Meta::Attribute
ok 8 - ... the attribute has a reader (as expected)
ok 9 - ... the attribute does not have a writer (as expected)
ok 10 - ... the attribute does not have an accessor (as expected)
ok 11 - The object isa My::Meta::Attribute::DefaultReadOnly
ok 12 - The object isa Mouse::Meta::Attribute
ok 13 - The object isa Mouse::Meta::Attribute
ok 14 - ... the attribute does not have a reader (as expected)
ok 15 - ... the attribute does not have a writer (as expected)
ok 16 - ... the attribute does have an accessor (as expected)
1..16
ok
t/050_metaclasses/011_init_meta.t ..............................
1..4
ok 1 - ... Foo isa Mouse::Object
ok 2 - The object isa Mouse::Meta::Class
ok 3 - The object isa Mouse::Meta::Class
ok 4 - ... our metas are the same
ok
t/050_metaclasses/013_metaclass_traits.t .......................
ok 1 - Mouse::Meta::Class::__ANON__::1->can('simple')
ok 2 - Foo->meta()->simple() returns expected value
ok 3 - Mouse::Meta::Class::__ANON__::2->can('simple')
ok 4 - Foo->meta()->simple() returns expected value
ok 5 - Mouse::Meta::Class::__ANON__::2->can('simple')
ok 6 - Bar->meta()->simple() returns expected value
ok 7 - Mouse::Meta::Class::__ANON__::2->can('attr')
ok 8 - Bar->meta()->attr() returns expected value
ok 9 - Mouse::Meta::Class::__ANON__::3->can('simple')
ok 10 - Baz->meta()->simple() returns expected value
ok 11 - Mouse::Meta::Class::__ANON__::3->can('attr')
ok 12 - Baz->meta()->attr() returns expected value
ok 13 - Mouse::Meta::Class::__ANON__::3->can('simple2')
ok 14 - Baz->meta()->simple2() returns expected value
ok 15 - Mouse::Meta::Class::__ANON__::3->can('attr2')
ok 16 - Baz->meta()->attr2() returns expected value
ok 17 - Quux has size attribute
ok 18 - size attribute does not have a writer
ok 19 - RanOutOfNames->meta() has whatever method
ok 20 - Mouse::Meta::Class::__ANON__::7->can('simple')
ok 21 - Role::Foo->meta()->simple() returns expected value
ok 22 - cannot provide -traits to an exporting module that does not init_meta
ok 23 - ... and error provides a useful explanation
ok 24 - Mouse::Meta::Class::__ANON__::10->can('simple')
ok 25 - Foo::Subclass->meta()->simple() returns expected value
ok 26 - Foo::Subclass->meta()->simple2() returns expected value
ok 27 - Mouse::Meta::Class::__ANON__::10->can('attr2')
ok 28 - Foo::Subclass->meta()->attr2() returns expected value
ok 29 - Can get value
ok 30 - Can create instance and access attributes
ok 31 - Can get value
ok 32 - Can create instance and access attributes
1..32
ok
t/050_metaclasses/017_use_base_of_moose.t ......................
ok 1 - correct metaclass name
ok 2 - constructor works
ok 3 - getter inherited properly
ok 4 - setter inherited properly
1..4
ok
t/050_metaclasses/020_metaclass_parameterized_traits.t .........
ok 1 - parameterized trait applied
ok 2 - the method was not installed under the other class' alias
ok 3 - parameterized trait applied
ok 4 - the method was not installed under the other class' alias
ok 5 - the method was not installed under the original name when that was excluded
1..5
ok
t/050_metaclasses/021_export_with_prototype.t ..................
not ok 1 - With_caller prototype code gets called from MyMouseX # TODO Mouse does not support with_meta option in the exporter
# Failed (TODO) test 'With_caller prototype code gets called from MyMouseX'
# at t/050_metaclasses/021_export_with_prototype.t line 14.
# got: 'Test::Exception::LessClever'
# expected: 'MyExporter'
# Test unexpectedly died: 'Can't call method "with_prototype" without a package or object reference at t/050_metaclasses/021_export_with_prototype.t line 12.' at t/050_metaclasses/021_export_with_prototype.t line 16.
not ok 2 - check function with prototype # TODO Mouse does not support with_meta option in the exporter
# Failed (TODO) test 'check function with prototype'
# at t/050_metaclasses/021_export_with_prototype.t line 16.
ok 3 - as_is_prototype received a coderef isa CODE
ok 4 - As-is prototype code gets called from MyMouseX
1..4
ok
t/050_metaclasses/041_mnmcim.t .................................
ok 1 - Mouse class => use base => Mouse Class, then Mouse->init_meta on middle class ok
1..1
ok
t/050_metaclasses/041_moose_nonmoose_chain_init_meta.t .........
1..1
ok 1 - Mouse class => use base => Mouse Class, then Mouse->init_meta on middle class ok
ok
t/050_metaclasses/051_metarole_on_anon.t .......................
ok 1 - anon class has a metaclass
ok 2 - cached anon class still has a metaclass after \$anon_class goes out of scope
ok 3 - cached anon class still has a metaclass applying a metarole
1..3
ok
t/050_metaclasses/052_new_object_BUILD.t .......................
ok 1 - BUILD called from ->new
ok 2 - BUILD called from ->meta->new_object
1..2
ok
t/050_metaclasses/053_immutable_metaclass_compat_bug.t .........
ok 1
ok 2
1..2
ok
t/050_metaclasses/054_metaclass_compat_no_fixing_bug.t .........
ok 1 - doesn't try to fix if nothing is needed
1..1
ok
t/100_bugs/001_subtype_quote_bug.t .............................
ok 1 - use Mouse;
1..1
ok
t/100_bugs/002_subtype_conflict_bug.t ..........................
ok 1 - use MyMouseA;
ok 2 - use MyMouseB;
1..2
ok
t/100_bugs/003_Moose_Object_error.t ............................
1..1
ok 1 - use MyMouseObject;
ok
t/100_bugs/003_Mouse_Object_error.t ............................
ok 1 - use MyMouseObject;
1..1
ok
t/100_bugs/004_subclass_use_base_bug.t .........................
ok 1 - The object isa Bar
ok 2 - The object isa Foo
1..2
ok
t/100_bugs/005_inline_reader_bug.t .............................
ok 1 - ... this didnt die
1..1
ok
t/100_bugs/007_reader_precedence_bug.t .........................
ok 1 - reader => "get_foo" has correct presedence
ok 2 - Foo->can('get_foo')
ok 3 - Reader works as expected
1..3
ok
t/100_bugs/009_augment_recursion_bug.t .........................
ok 1 - The object isa Baz
ok 2 - The object isa Foo
ok 3 - ... got the right value for 1 augmented subclass calling non-augmented subclass
1..3
ok
t/100_bugs/010_immutable_n_default_x2.t ........................
ok 1 - foo default was only called once during constructor
ok 2 - bar default was only called once when lazy attribute is accessed
1..2
ok
t/100_bugs/011_DEMOLISH_eats_exceptions.t ......................
ok 1 - ... Baz plain
ok 2 - ... the object is undef
ok 3 - ... Baz empty
ok 4 - ... the object is undef
ok 5 - ... Baz undef
ok 6 - ... the object is undef
ok 7 - ... Baz undef param
ok 8 - ... the object is undef
ok 9 - ... Baz root path forbidden
ok 10 - ... the object is undef
ok 11 - ... Baz non existing path
ok 12 - ... the object is undef
ok 13 - ... Baz no error
ok 14 - The object isa Baz
ok 15 - The object isa Mouse::Object
ok 16 - ... Baz got the right value
ok 17 - ... Qee plain
ok 18 - ... the object is undef
ok 19 - ... Qee empty
ok 20 - ... the object is undef
ok 21 - ... Qee undef
ok 22 - ... the object is undef
ok 23 - ... Qee undef param
ok 24 - ... the object is undef
ok 25 - ... Qee root path forbidden
ok 26 - ... the object is undef
ok 27 - ... Qee non existing path
ok 28 - ... the object is undef
ok 29 - ... Qee no error
ok 30 - The object isa Qee
ok 31 - The object isa Mouse::Object
ok 32 - ... Qee got the right value
ok 33 - ... Foo plain
ok 34 - ... the object is undef
ok 35 - ... Foo empty
ok 36 - ... the object is undef
ok 37 - ... Foo undef
ok 38 - ... the object is undef
ok 39 - ... Foo undef param
ok 40 - ... the object is undef
ok 41 - ... Foo root path forbidden
ok 42 - ... the object is undef
ok 43 - ... Foo non existing path
ok 44 - ... the object is undef
ok 45 - ... Foo no error
ok 46 - The object isa Foo
ok 47 - The object isa Mouse::Object
ok 48 - ... Foo got the right value
ok 49 - ... Qee plain
ok 50 - ... the object is undef
ok 51 - ... Qee empty
ok 52 - ... the object is undef
ok 53 - ... Qee undef
ok 54 - ... the object is undef
ok 55 - ... Qee undef param
ok 56 - ... the object is undef
ok 57 - ... Qee root path forbidden
ok 58 - ... the object is undef
ok 59 - ... Qee non existing path
ok 60 - ... the object is undef
ok 61 - ... Qee no error
ok 62 - The object isa Qee
ok 63 - The object isa Mouse::Object
ok 64 - ... Qee got the right value
ok 65 - ... Baz plain
ok 66 - ... the object is undef
ok 67 - ... Baz empty
ok 68 - ... the object is undef
ok 69 - ... Baz undef
ok 70 - ... the object is undef
ok 71 - ... Baz undef param
ok 72 - ... the object is undef
ok 73 - ... Baz root path forbidden
ok 74 - ... the object is undef
ok 75 - ... Baz non existing path
ok 76 - ... the object is undef
ok 77 - ... Baz no error
ok 78 - The object isa Baz
ok 79 - The object isa Mouse::Object
ok 80 - ... Baz got the right value
ok 81 - ... Foo plain
ok 82 - ... the object is undef
ok 83 - ... Foo empty
ok 84 - ... the object is undef
ok 85 - ... Foo undef
ok 86 - ... the object is undef
ok 87 - ... Foo undef param
ok 88 - ... the object is undef
ok 89 - ... Foo root path forbidden
ok 90 - ... the object is undef
ok 91 - ... Foo non existing path
ok 92 - ... the object is undef
ok 93 - ... Foo no error
ok 94 - The object isa Foo
ok 95 - The object isa Mouse::Object
ok 96 - ... Foo got the right value
ok 97 - ... Foo plain
ok 98 - ... the object is undef
ok 99 - ... Foo empty
ok 100 - ... the object is undef
ok 101 - ... Foo undef
ok 102 - ... the object is undef
ok 103 - ... Foo undef param
ok 104 - ... the object is undef
ok 105 - ... Foo root path forbidden
ok 106 - ... the object is undef
ok 107 - ... Foo non existing path
ok 108 - ... the object is undef
ok 109 - ... Foo no error
ok 110 - The object isa Foo
ok 111 - The object isa Mouse::Object
ok 112 - ... Foo got the right value
ok 113 - ... Baz plain
ok 114 - ... the object is undef
ok 115 - ... Baz empty
ok 116 - ... the object is undef
ok 117 - ... Baz undef
ok 118 - ... the object is undef
ok 119 - ... Baz undef param
ok 120 - ... the object is undef
ok 121 - ... Baz root path forbidden
ok 122 - ... the object is undef
ok 123 - ... Baz non existing path
ok 124 - ... the object is undef
ok 125 - ... Baz no error
ok 126 - The object isa Baz
ok 127 - The object isa Mouse::Object
ok 128 - ... Baz got the right value
ok 129 - ... Qee plain
ok 130 - ... the object is undef
ok 131 - ... Qee empty
ok 132 - ... the object is undef
ok 133 - ... Qee undef
ok 134 - ... the object is undef
ok 135 - ... Qee undef param
ok 136 - ... the object is undef
ok 137 - ... Qee root path forbidden
ok 138 - ... the object is undef
ok 139 - ... Qee non existing path
ok 140 - ... the object is undef
ok 141 - ... Qee no error
ok 142 - The object isa Qee
ok 143 - The object isa Mouse::Object
ok 144 - ... Qee got the right value
1..144
ok
t/100_bugs/012_DEMOLISH_eats_mini.t ............................
ok 1 - ... Foo plain
ok 2 - ... the object is undef
ok 3 - ... Bar plain
ok 4 - ... the object is undef
ok 5 - $@ is still 42 after object is demolished without dying
ok 6 - $? is still 84 after object is demolished without dying
ok 7 - $@ is still 0 after object is demolished without dying
ok 8 - $@ is still 42 after object is demolished without dying
ok 9 - $? is still 84 after object is demolished without dying
ok 10 - $@ is still 0 after object is demolished without dying
1..10
ok
t/100_bugs/013_lazybuild_required_undef.t ......................
ok 1 - NonLazyBuild: Undef default
ok 2 - NonLazyBuild: Undef explicit
ok 3 - LazyBuild: Undef default/lazy_build
ok 4 - LazyBuild: Undef explicit
1..4
ok
t/100_bugs/016_inheriting_from_roles.t .........................
ok 1 - ... this croaks correctly
1..1
ok
t/100_bugs/017_type_constraint_messages.t ......................
ok 1 - ... got the right error message
ok 2 - ... got the right error message
ok 3 - ... got the right error message
1..3
ok
t/100_bugs/019_moose_octal_defaults.t ..........................
ok 1 - quoted 019600 default works
ok 2 - value is still the same
ok 3 - 017600 octal default works
ok 4 - value is still the same
ok 5 - 017600 octal default works
ok 6 - value is still the same
ok 7 - 017600 octal default works
ok 8 - value is still the same
ok 9 - 017600 octal default works
ok 10 - value is still the same
1..10
ok
t/100_bugs/020_super_recursion.t ...............................
ok 1
ok 2
ok 3
1..3
ok
t/100_bugs/022_role_caller.t ...................................
not ok 1 - method from role has correct name in caller() # TODO Role composition does not clone methods yet
# Failed (TODO) test 'method from role has correct name in caller()'
# at t/100_bugs/022_role_caller.t line 21.
# got: 'MyRole::foo'
# expected: 'MyClass1::foo'
not ok 2 - method from role has correct name in caller() # TODO Role composition does not clone methods yet
# Failed (TODO) test 'method from role has correct name in caller()'
# at t/100_bugs/022_role_caller.t line 23.
# got: 'MyRole::foo'
# expected: 'MyClass2::foo'
ok 3 - role method is not confused with other class
ok 4 - role method is not confused with other class
1..4
ok
t/100_bugs/025_universal_methods_wrappable.t ...................
ok 1 - applied role
ok 2 - The object isa Bar
1..2
ok
t/100_bugs/026_create_anon_recursion.t .........................
ok 1 - Class is created successfully
1..1
ok
t/100_bugs/027_constructor_object_overload.t ...................
ok 1 - call constructor on object reference with overloading
1..1
ok
t/100_bugs/029_instance_application_role_args.t ................
ok 1
ok 2
1..2
ok
t/100_bugs/030_coerce_without_coercion.t .......................
ok 1 - Setting coerce => 1 without a coercion on the type does not cause an error in the constructor
ok 2 - Setting coerce => 1 without a coercion on the type does not cause an error when setting the attribut
ok 3 - Attempting to provide an invalid value to the constructor for this attr still fails
ok 4 - Attempting to provide an invalid value to the accessor for this attr still fails
ok 5 - Setting coerce => 1 without a coercion on the type does not cause an error in the constructor
ok 6 - Setting coerce => 1 without a coercion on the type does not cause an error when setting the attribut
ok 7 - Attempting to provide an invalid value to the constructor for this attr still fails
ok 8 - Attempting to provide an invalid value to the accessor for this attr still fails
1..8
ok
t/200_examples/001_example.t ...................................
1..20
ok 1 - The object isa Constraint::NoMoreThan
ok 2 - ... Constraint::NoMoreThan does Constraint
ok 3 - ... validated correctly
ok 4 - ... validation failed correctly
ok 5 - The object isa Constraint::AtLeast
ok 6 - ... Constraint::AtLeast does Constraint
ok 7 - ... validated correctly
ok 8 - ... validation failed correctly
ok 9 - The object isa Constraint::LengthNoMoreThan
ok 10 - The object isa Constraint::NoMoreThan
ok 11 - ... Constraint::LengthNoMoreThan does Constraint
ok 12 - ... Constraint::LengthNoMoreThan does Constraint::OnLength
ok 13 - ... validated correctly
ok 14 - ... validation failed correctly
ok 15 - The object isa Constraint::LengthAtLeast
ok 16 - The object isa Constraint::AtLeast
ok 17 - ... Constraint::LengthAtLeast does Constraint
ok 18 - ... Constraint::LengthAtLeast does Constraint::OnLength
ok 19 - ... validated correctly
ok 20 - ... validation failed correctly
ok
t/200_examples/003_example.t ...................................
1..30
ok 1 - ... successfully composed roles together
ok 2 - ... successfully composed roles together
ok 3 - The object isa My::List1
ok 4 - ... $coll does List
ok 5 - ... $coll does List::Immutable
ok 6 - ... we have an empty collection
ok 7 - ... we have a length of 1 for the collection
ok 8 - The object isa My::List2
ok 9 - ... $coll does List
ok 10 - ... $coll does List::Immutable
ok 11 - ... we have an empty collection
ok 12 - ... we have a length of 1 for the collection
ok 13 - The object isa My::List1
ok 14 - ... $coll does List
ok 15 - ... $coll does List::Immutable
ok 16 - ... we do not have an empty collection
ok 17 - ... we have a length of 10 for the collection
ok 18 - ... got the right printed value
ok 19 - The object isa My::List1
ok 20 - ... original is still the same
ok 21 - ... new collection is changed
ok 22 - The object isa My::List2
ok 23 - ... $coll does List
ok 24 - ... $coll does List::Immutable
ok 25 - ... we do not have an empty collection
ok 26 - ... we have a length of 10 for the collection
ok 27 - ... got the right printed value
ok 28 - The object isa My::List2
ok 29 - ... original is still the same
ok 30 - ... new collection is changed
ok
t/200_examples/004_example_w_DCS.t .............................
1..9
ok 1 - ... construction succeeded
ok 2 - The object isa Foo
ok 3 - ... got our value correctly
ok 4 - ... got our value correctly
ok 5 - ... validation failed correctly
ok 6 - ... validation failed correctly
ok 7 - ... validation failed correctly
ok 8 - ... validation failed correctly
ok 9 - ... validation failed correctly
ok
t/200_examples/005_example_w_TestDeep.t ........................
1..5
ok 1 - ... construction succeeded
ok 2 - The object isa Foo
ok 3 - ... got our value correctly
ok 4 - ... validation failed correctly
ok 5 - ... validation failed correctly
ok
t/200_examples/0071_Child_Parent_attr_inherit_imm.t ............
1..23
ok 1 - The object isa Parent
ok 2 - ... the parent has the last name we expected
ok 3 - ... parent and child have the same last name (Smith)
ok 4 - ... parent and child have the same last name (Smith)
ok 5 - ... parent and child have the same last name (Smith)
ok 6 - ... parent and child have the same last name (Smith)
ok 7 - ... the parent has the new last name
ok 8 - ... parent and child have the same last name (Jones)
ok 9 - ... parent and child have the same last name (Jones)
ok 10 - ... parent and child have the same last name (Jones)
ok 11 - ... parent and child have the same last name (Jones)
ok 12 - The object isa Parent
ok 13 - ... parent and child have the same last name (Jones)
ok 14 - ... parent and child have the same last name (Jones)
ok 15 - ... parent and child have the same last name (Jones)
ok 16 - ... the orphan child does not have the same last name anymore (Brown)
ok 17 - ... parent2 and orphan child have the same last name (Brown)
ok 18 - ... the parent has the new last name (again)
ok 19 - ... parent and child have the same last name (Miller)
ok 20 - ... parent and child have the same last name (Miller)
ok 21 - ... parent and child have the same last name (Miller)
ok 22 - ... the orphan child is not affected by changes in the parent anymore
ok 23 - ... parent2 and orphan child have the same last name (Brown)
ok
t/200_examples/007_Child_Parent_attr_inherit.t .................
1..23
ok 1 - The object isa Parent
ok 2 - ... the parent has the last name we expected
ok 3 - ... parent and child have the same last name (Smith)
ok 4 - ... parent and child have the same last name (Smith)
ok 5 - ... parent and child have the same last name (Smith)
ok 6 - ... parent and child have the same last name (Smith)
ok 7 - ... the parent has the new last name
ok 8 - ... parent and child have the same last name (Jones)
ok 9 - ... parent and child have the same last name (Jones)
ok 10 - ... parent and child have the same last name (Jones)
ok 11 - ... parent and child have the same last name (Jones)
ok 12 - The object isa Parent
ok 13 - ... parent and child have the same last name (Jones)
ok 14 - ... parent and child have the same last name (Jones)
ok 15 - ... parent and child have the same last name (Jones)
ok 16 - ... the orphan child does not have the same last name anymore (Brown)
ok 17 - ... parent2 and orphan child have the same last name (Brown)
ok 18 - ... the parent has the new last name (again)
ok 19 - ... parent and child have the same last name (Miller)
ok 20 - ... parent and child have the same last name (Miller)
ok 21 - ... parent and child have the same last name (Miller)
ok 22 - ... the orphan child is not affected by changes in the parent anymore
ok 23 - ... parent2 and orphan child have the same last name (Brown)
ok
t/200_examples/008_record_set_iterator.t .......................
1..8
ok 1 - The object isa RecordSet
ok 2 - The object isa RecordSetIterator
ok 3 - ... got the right first name
ok 4 - ... got the right last name
ok 5 - ... got the right first name
ok 6 - ... got the right last name
ok 7 - ... got the right first name
ok 8 - ... got the right last name
ok
t/300_immutable/001_immutable_moose.t ..........................
ok 1 - lazy_build works
ok 2 - correct value for 'foos' before inlining constructor
ok 3 - correct value for 'bars' before inlining constructor
ok 4 - correct value for 'bazes' before inlining constructor
ok 5 - Foo is imutable
ok 6 - ->identifier on metaclass lives
ok 7 - Inlined constructor works with lazy_build
ok 8 - correct value for 'foos' after inlining constructor
ok 9 - correct value for 'bars' after inlining constructor
ok 10 - correct value for 'bazes' after inlining constructor
ok 11 - Foo is mutable
ok 12 - Immutable meta with single BUILD
ok 13 - Immutable meta with multiple BUILDs
1..13
ok
t/300_immutable/002_apply_roles_to_immutable.t .................
ok 1 - The object isa Foo
ok 2 - ... got the right value
ok 3 - ... successfully applied the role to immutable instance
ok 4 - ... got the right value
1..4
ok
t/300_immutable/003_immutable_meta_class.t .....................
ok 1 - ... can make a meta class immutable
1..1
ok
t/300_immutable/004_inlined_constructors_n_types.t .............
ok 1 - Type coercion works as expected on default (mutable)
ok 2 - Type coercion works as expected on builder (mutable)
ok 3 - ... this passes the constuctor correctly (mutable)
ok 4 - ... the constructor doesn't care about 'zot' (mutable)
ok 5 - ... this fails the constuctor correctly (mutable)
ok 6 - Type coercion works as expected on default (immutable)
ok 7 - Type coercion works as expected on builder (immutable)
ok 8 - ... this passes the constuctor correctly (immutable)
ok 9 - ... the constructor doesn't care about 'zot' (immutable)
ok 10 - ... this fails the constuctor correctly (immutable)
1..10
ok
t/300_immutable/005_multiple_demolish_inline.t .................
ok 1 - Bar->new()
ok 2 - Bar->meta->make_immutable
ok 3 - Bar has a DESTROY method in the Bar class (not inherited)
ok 4 - Foo->meta->make_immutable
ok 5 - Foo has a DESTROY method in the Bar class (not inherited)
1..5
ok
t/300_immutable/007_immutable_trigger_from_constructor.t .......
ok 1 - trigger from immutable constructor
ok 2 - trigger from immutable constructor
ok 3 - ... no triggers called
1..3
ok
t/300_immutable/008_immutable_constructor_error.t ..............
ok 1 - Non-ref provided to immutable constructor gives useful error message
ok 2 - Scalar ref provided to immutable constructor gives useful error message
ok 3 - undef provided to immutable constructor gives useful error message
1..3
ok
t/300_immutable/009_buildargs.t ................................
ok 1 - no args
ok 2 - normal args
ok 3 - single arg
ok 4 - ... got the right bar
ok 5 - ... got the right bar
ok 6 - ... got the right bar
ok 7 - ... got the right bar
ok 8 - no args
ok 9 - normal args
ok 10 - single arg
ok 11 - ... got the right bar
ok 12 - ... got the right bar
ok 13 - ... got the right bar
ok 14 - ... got the right bar
1..14
ok
t/300_immutable/012_default_values.t ...........................
ok 1 - no errors making a package immutable when it has default values that could break quoting
ok 2 - default value for foo attr
ok 3 - default value for bar attr
ok 4 - default value for baz attr
ok 5 - default value for buz attr
ok 6 - default value for faz attr
ok 7 - no errors making a package immutable when it has lazy default values that could break quoting
ok 8 - default value for foo attr
ok 9 - default value for bar attr
ok 10 - default value for baz attr
ok 11 - default value for buz attr
ok 12 - default value for faz attr
1..12
ok
t/300_immutable/013_immutable_roundtrip.t ......................
ok 1 - no warning that Bar may not have an inlined constructor
1..1
ok
t/300_immutable/014_immutable_metaclass_with_traits.t ..........
ok 1 - class_of and ->meta are the same on Foo
ok 2 - class_of and ->meta are the same on Foo's metaclass
ok 3 - The object isa Mouse::Meta::Class
ok 4 - The object isa Mouse::Meta::Class
ok 5 - class is mutable
ok 6 - metaclass is mutable
ok 7 - does the trait
ok 8 - class_of and ->meta are the same on Foo (immutable)
ok 9 - The object isa Mouse::Meta::Class
ok 10 - class is immutable
not ok 11 - metaclass is immutable (immutable class) # TODO Mouse dos not support $meta->meta->is_immutable
# Failed (TODO) test 'metaclass is immutable (immutable class)'
# at t/300_immutable/014_immutable_metaclass_with_traits.t line 35.
ok 12 - class_of and ->meta are the same on Foo's metaclass (immutable)
ok 13 - The object isa Mouse::Meta::Class
ok 14 - still does the trait after immutable
1..14
ok
t/300_immutable/016_inline_fallbacks.t .........................
ok 1 - got right value for foo
ok 2 - got right value for bar
ok 3 - got right value for foo
ok 4 - got right value for baz
ok 5 - DEMOLISH in subclass was called
ok 6 - DEMOLISH in subclass was called
1..6
ok
t/300_immutable/101-immutable-default.t ........................
1..5
ok 1 - Immutable meta with single BUILD
ok 2 - The object isa Foo
ok 3 - str default
ok 4 - int default
ok 5 - code default
ok
t/400_mouse_util/001_moose_util.t ..............................
ok 1 - use Mouse::Util;
1..1
ok
t/400_mouse_util/002_moose_util_does_role.t ....................
ok 1 - use Mouse::Util;
ok 2 - ... Bar does Foo
ok 3 - ... Baz doesnt do Foo
ok 4 - ... $bar does Foo
ok 5 - ... $baz doesnt do Foo
ok 6 - ... undef doesnt do Foo
ok 7 - ... 1 doesnt do Foo
ok 8 - ... Quux doesnt do Foo (does not die tho)
1..8
ok
t/400_mouse_util/007_apply_roles.t .............................
ok 1 - Class::A does Role::Foo
ok 2 - Class::A does Role::Bar
ok 3 - Class::A does Role::Baz
ok 4 - Class::B does Role::Foo (applied with meta role object)
ok 5 - Class::B does Role::Bar (applied with meta role object)
ok 6 - Class::B does Role::Baz (applied with meta role object)
ok 7 - Class::C does Role::Foo
ok 8 - Class::D does Role::Foo (applied with meta role object)
ok 9 - Class::E does Role::Foo (mix of names and meta role object)
ok 10 - Class::E does Role::Bar (mix of names and meta role object)
1..10
ok
t/500_test_moose/001_test_moose.t ..............................
ok 1 - use Test::Mouse;
1..1
ok
t/500_test_moose/002_test_moose_does_ok.t ......................
ok 1 - use Test::Mouse;
ok 2 - does_ok
1..2
ok
t/500_test_moose/003_test_moose_has_attribute_ok.t .............
ok 1 - use Test::Mouse;
ok 2 - has_attribute_ok
1..2
ok
t/500_test_moose/004_test_moose_meta_ok.t ......................
ok 1 - use Test::Mouse;
ok 2 - meta_ok
1..2
ok
t/500_test_moose/005_with_immutable.t ..........................
ok 1 - use Test::Mouse;
ok 2 - with_immutable failure
ok 3 - one of our tests failed
ok 4 - with_immutable success
ok 5 - all tests succeeded
1..5
ok
t/800_with_external/001-pod-coverage-moose.t ...................
1..1
ok 1
ok
t/800_with_external/002-externals.t ............................ skipped: for release testing
t/810_with_moose/201-squirrel.t ................................
1..12
ok 1 - The object isa Foo
ok 2 - The object isa Mouse::Object
ok 3 - accessor
ok 4 - The object isa Bar
ok 5 - The object isa Moose::Object
ok 6 - accessor
ok 7 - Mouse::has was unimported
ok 8 - Moose::has was unimported
ok 9
ok 10 - Squirrel is consistent if Moose was loaded between imports
ok 11
ok 12
ok
t/810_with_moose/202-squirrel-role.t ...........................
1..6
ok 1 - Mouse::Role::has was unimported
ok 2 - Moose::Role::has was unimported
ok 3 - The object isa Mouse::Meta::Role
ok 4 - The object isa Mouse::Meta::Role
ok 5 - The object isa Moose::Meta::Role
ok 6 - The object isa Moose::Meta::Role
ok
t/810_with_moose/500_moose_extends_mouse.t ..................... skipped: [TODO] a Moose class cannot extends a Mouse class
t/810_with_moose/501_moose_coerce_mouse.t ...................... skipped: [TODO] a Mouse class cannot extends a Moose class
t/900_mouse_bugs/001_immutable_types.t .........................
1..4
ok 1 - The object isa C
ok 2 - The object isa C
D, E, F
ok 3 - mutable BUILD invocation order correct
D, E, F
ok 4 - immutable BUILD invocation order still correct
ok
t/900_mouse_bugs/002_does_role_should_search_parent.t ..........
1..2
ok 1
ok 2
ok
t/900_mouse_bugs/003_RT50421.t .................................
1..3
# Running under perl version 5.016000 for darwin
# Current time local: Sat Jan 12 03:03:49 2013
# Current time GMT: Sat Jan 12 11:03:49 2013
# Using Test.pm version 1.25
ok 1
ok 2
ok 3
ok
t/900_mouse_bugs/004_RT54203.t .................................
1..4
ok 1 - file($0)->stringify
ok 2 - $self->path(file($0)->stringify)
ok 3 - my $path3 = $self->path(file($0)->stringify)
ok 4
ok
t/900_mouse_bugs/005_large_int.t ...............................
1..24
ok 1 - Mouse groked the Int 4294967296
ok 2 - Mouse groked the Num 4294967296
ok 3 - Mouse does not regard 4294967296.5 as Int
ok 4 - Mouse regards 4294967296.5 as Num
ok 5 - Mouse groked the Int 4294967296
ok 6 - Mouse groked the Num 4294967296
ok 7 - Mouse does not regard -4294967295.5 as Int
ok 8 - Mouse regards -4294967295.5 as Num
ok 9 - Mouse groked the Int 1099511627776
ok 10 - Mouse groked the Num 1099511627776
ok 11 - Mouse does not regard 1099511627776.5 as Int
ok 12 - Mouse regards 1099511627776.5 as Num
ok 13 - Mouse groked the Int 1099511627776
ok 14 - Mouse groked the Num 1099511627776
ok 15 - Mouse does not regard -1099511627775.5 as Int
ok 16 - Mouse regards -1099511627775.5 as Num
ok 17 - Mouse groked the Int 70368744177664
ok 18 - Mouse groked the Num 70368744177664
ok 19 - Mouse does not regard 70368744177664.5 as Int
ok 20 - Mouse regards 70368744177664.5 as Num
ok 21 - Mouse groked the Int 70368744177664
ok 22 - Mouse groked the Num 70368744177664
ok 23 - Mouse does not regard -70368744177663.5 as Int
ok 24 - Mouse regards -70368744177663.5 as Num
ok
t/900_mouse_bugs/006_RT69939.t .................................
1..9
# do {}
ok 1 - The object isa Foo
ok 2
ok 3
# $@=Died at (eval 11) line 1.
# BEGIN failed--compilation aborted at (eval 11) line 1.
# eval {}
ok 4 - The object isa Foo
ok 5
ok 6
# $@=Died at (eval 17) line 1.
# BEGIN failed--compilation aborted at (eval 17) line 1.
# eval ""
ok 7 - The object isa Foo
ok 8
ok 9
# $@=Died at (eval 24) line 1.
# BEGIN failed--compilation aborted at (eval 24) line 1.
ok
t/900_mouse_bugs/007_RT56523.t .................................
ok 1
ok 2
ok 3
1..3
ok
t/900_mouse_bugs/008_RT56837.t .................................
1..2
ok 1 - The role was successfully composed at the object level
ok 2 - ... attribute with init_arg was re-initialized correctly
ok
t/900_mouse_bugs/009_RT57144.t .................................
ok 1
1..1
ok
t/900_mouse_bugs/010_use_mouse_before_tb2.t ....................
1..1
ok 1 - loads Test::More after loading Mouse
ok
t/900_mouse_bugs/011_RT61852.t .................................
ok 1
ok 2
1..2
ok
t/900_mouse_bugs/012_RT61906.t .................................
ok 1 - MouseObj->can('only_accessor_accessor')
ok 2 - MouseObj->can('accesor_and_writer_accessor')
ok 3 - MouseObj->can('accesor_and_writer_writer')
ok 4 - MouseObj->can('not_with_is_accessor')
1..4
ok
t/900_mouse_bugs/013_RT73592_tied_.t ...........................
1..2
ok 1 - coercion does not interfere with $_
ok 2 - type constraint messages do not interfere with $_
ok
t/900_mouse_bugs/014_autoload.t ................................
ok 1
1..1
ok
t/900_mouse_bugs/RT75093.t .....................................
ok 1 - no warnings about weak refs
1..1
ok
t/990_deprecated/001-export_to_level.t .........................
1..3
ok 1 - export_to_level (DEPRECATED)
ok 2 - export (DEPRECATED)
ok 3 - export (DEPRECATED)
ok
All tests successful.
Test Summary Report
-------------------
t/040_type_constraints/018_custom_parameterized_types.t (Wstat: 0 Tests: 28 Failed: 0)
TODO passed: 13, 19-20, 22
Files=288, Tests=6174, 25 wallclock secs ( 1.63 usr 0.93 sys + 19.23 cusr 2.81 csys = 24.60 CPU)
Result: PASS
GFUJI/Mouse-1.04.tar.gz
make test TEST_VERBOSE=1 -- OK
Goro Fuji <gfuji@cpan.org>
Moose minus the antlers
>>> (cd /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML && tar cvf - Mouse-1.04.ppd blib) | gzip -c >/Users/fly1600/var/REPO/G/GF/GFUJI/Mouse-1.04.tar.gz
Mouse-1.04.ppd
blib/
blib/arch/
blib/arch/auto/
blib/arch/auto/Mouse/
blib/arch/auto/Mouse/Mouse.bs
blib/arch/auto/Mouse/Mouse.bundle
blib/lib/
blib/lib/Mouse/
blib/lib/Mouse/Exporter.pm
blib/lib/Mouse/Meta/
blib/lib/Mouse/Meta/Attribute.pm
blib/lib/Mouse/Meta/Class.pm
blib/lib/Mouse/Meta/Method/
blib/lib/Mouse/Meta/Method/Accessor.pm
blib/lib/Mouse/Meta/Method/Constructor.pm
blib/lib/Mouse/Meta/Method/Delegation.pm
blib/lib/Mouse/Meta/Method/Destructor.pm
blib/lib/Mouse/Meta/Method.pm
blib/lib/Mouse/Meta/Module.pm
blib/lib/Mouse/Meta/Role/
blib/lib/Mouse/Meta/Role/Application.pm
blib/lib/Mouse/Meta/Role/Composite.pm
blib/lib/Mouse/Meta/Role/Method.pm
blib/lib/Mouse/Meta/Role.pm
blib/lib/Mouse/Meta/TypeConstraint.pm
blib/lib/Mouse/Object.pm
blib/lib/Mouse/PurePerl.pm
blib/lib/Mouse/Role.pm
blib/lib/Mouse/Spec.pm
blib/lib/Mouse/Tiny.pm
blib/lib/Mouse/Tiny.pod
blib/lib/Mouse/TypeRegistry.pm
blib/lib/Mouse/Util/
blib/lib/Mouse/Util/MetaRole.pm
blib/lib/Mouse/Util/TypeConstraints.pm
blib/lib/Mouse/Util.pm
blib/lib/Mouse/XS.pod
blib/lib/Mouse.pm
blib/lib/ouse.pm
blib/lib/Squirrel/
blib/lib/Squirrel/Role.pm
blib/lib/Squirrel.pm
blib/lib/Test/
blib/lib/Test/Mouse.pm
blib/man3/
blib/man3/Mouse.3
blib/man3/Mouse::Exporter.3
blib/man3/Mouse::Meta::Attribute.3
blib/man3/Mouse::Meta::Class.3
blib/man3/Mouse::Meta::Method.3
blib/man3/Mouse::Meta::Method::Accessor.3
blib/man3/Mouse::Meta::Method::Constructor.3
blib/man3/Mouse::Meta::Method::Delegation.3
blib/man3/Mouse::Meta::Method::Destructor.3
blib/man3/Mouse::Meta::Module.3
blib/man3/Mouse::Meta::Role.3
blib/man3/Mouse::Meta::Role::Application.3
blib/man3/Mouse::Meta::Role::Composite.3
blib/man3/Mouse::Meta::Role::Method.3
blib/man3/Mouse::Meta::TypeConstraint.3
blib/man3/Mouse::Object.3
blib/man3/Mouse::PurePerl.3
blib/man3/Mouse::Role.3
blib/man3/Mouse::Spec.3
blib/man3/Mouse::Tiny.3
blib/man3/Mouse::TypeRegistry.3
blib/man3/Mouse::Util.3
blib/man3/Mouse::Util::MetaRole.3
blib/man3/Mouse::Util::TypeConstraints.3
blib/man3/Mouse::XS.3
blib/man3/ouse.3
blib/man3/Squirrel.3
blib/man3/Squirrel::Role.3
blib/man3/Test::Mouse.3
>>> mv /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/Mouse-1.04.ppd /Users/fly1600/var/REPO/G/GF/GFUJI
Can't log to '/Users/fly1600/var/tmp/Library/Logs/ppm4.log': No such file or directory at /Users/fly1600/lib/ActivePerl/PPM/Logger.pm line 95.
[InstallArea.pm:339] Created /Users/fly1600/var/megalib/etc/ppm-megalib-dirty
[InstallArea.pm:362] Installing Mouse with id 438
[InstallArea.pm:369] Copy /tmp/ppm-Ju2zRu/Mouse-1.04/blib/arch --> /Users/fly1600/var/megalib
[InstallArea.pm:497] /Users/fly1600/var/megalib/auto/Mouse/Mouse.bs already present
[InstallArea.pm:548] /Users/fly1600/var/megalib/auto/Mouse/Mouse.bundle written
[InstallArea.pm:369] Copy /tmp/ppm-Ju2zRu/Mouse-1.04/blib/html --> /Users/fly1600/var/megalib/html
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Exporter.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Attribute.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Class.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Accessor.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Constructor.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Delegation.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Destructor.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Module.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Application.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Composite.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Method.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/TypeConstraint.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Object.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/PurePerl.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Role.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Spec.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Tiny.html written
[InstallArea.pm:497] /Users/fly1600/var/megalib/html/site/lib/Mouse/TypeRegistry.html already present
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Util/MetaRole.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Util/TypeConstraints.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/Util.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse/XS.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Mouse.html written
[InstallArea.pm:497] /Users/fly1600/var/megalib/html/site/lib/Squirrel/Role.html already present
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Squirrel.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/Test/Mouse.html written
[InstallArea.pm:548] /Users/fly1600/var/megalib/html/site/lib/ouse.html written
[InstallArea.pm:369] Copy /tmp/ppm-Ju2zRu/Mouse-1.04/blib/lib --> /Users/fly1600/var/megalib
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Exporter.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Attribute.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Class.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Method/Accessor.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Method/Constructor.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Method/Delegation.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Method/Destructor.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Method.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Module.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Role/Application.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Role/Composite.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Role/Method.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/Role.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Meta/TypeConstraint.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Object.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/PurePerl.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Role.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Spec.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Tiny.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Tiny.pod written
[InstallArea.pm:497] /Users/fly1600/var/megalib/Mouse/TypeRegistry.pm already present
[InstallArea.pm:497] /Users/fly1600/var/megalib/Mouse/Util/MetaRole.pm already present
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Util/TypeConstraints.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/Util.pm written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse/XS.pod written
[InstallArea.pm:548] /Users/fly1600/var/megalib/Mouse.pm written
[InstallArea.pm:497] /Users/fly1600/var/megalib/Squirrel/Role.pm already present
[InstallArea.pm:497] /Users/fly1600/var/megalib/Squirrel.pm already present
[InstallArea.pm:497] /Users/fly1600/var/megalib/Test/Mouse.pm already present
[InstallArea.pm:497] /Users/fly1600/var/megalib/ouse.pm already present
[InstallArea.pm:418] Commit install
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/auto/Mouse/Mouse.bundle.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Exporter.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Attribute.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Class.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Accessor.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Constructor.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Delegation.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method/Destructor.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Method.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Module.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Application.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Composite.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role/Method.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/Role.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Meta/TypeConstraint.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Object.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/PurePerl.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Role.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Spec.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Tiny.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Util/MetaRole.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Util/TypeConstraints.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/Util.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse/XS.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Mouse.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Squirrel.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/Test/Mouse.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/html/site/lib/ouse.html.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Exporter.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Attribute.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Class.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Method/Accessor.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Method/Constructor.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Method/Delegation.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Method/Destructor.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Method.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Module.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Role/Application.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Role/Composite.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Role/Method.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/Role.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Meta/TypeConstraint.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Object.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/PurePerl.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Role.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Spec.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Tiny.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Tiny.pod.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Util/TypeConstraints.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/Util.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse/XS.pod.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/Mouse.pm.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/auto/Mouse/.packlist.ppmbak
[InstallArea.pm:454] unlink /Users/fly1600/var/megalib/etc/ppm-megalib-dirty
Running Build for D/DW/DWHEELER/App-Sqitch-0.952.tar.gz
Prepending /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/arch /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/lib to PERL5LIB for 'get'
Has already been unwrapped into directory /Users/fly1600/var/cpan/build/App-Sqitch-0.952-vHDmC9
Prepending /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/arch /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/lib to PERL5LIB for 'make'
CPAN.pm: Going to build D/DW/DWHEELER/App-Sqitch-0.952.tar.gz
>>> ./Build
Building App-Sqitch
DWHEELER/App-Sqitch-0.952.tar.gz
./Build -- OK
Prepending /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/arch /Users/fly1600/var/cpan/build/Mouse-1.04-ytnyML/blib/lib to PERL5LIB for 'test'
Running Build test
>>> ./Build test verbose=1
/Users/fly1600/ap1600/bin/perl-dynamic -i.bak -pe s{my \$SYSTEM_DIR = undef}{my \$SYSTEM_DIR = q{/Users/fly1600/ap1600/etc/sqitch}} blib/lib/App/Sqitch/Config.pm
t/add.t ............
1..91
ok 1 - Load a sqitch sqitch object
ok 2 - add command isa App::Sqitch::Command::add
ok 3 - App::Sqitch::Command::add->can(...)
ok 4 - Options should be set up
ok 5 - Should have default configuration with no config or opts
ok 6 - Should have get requires and conflicts options
ok 7 - Should set up template directory option
ok 8 - Should die if --template-directory does not exist
ok 9 - Missing directory ident should be "add"
ok 10 - Missing directory error message should be correct
ok 11 - Should die if --template-directory does is not a dir
ok 12 - In alid directory ident should be "add"
ok 13 - Invalid directory error message should be correct
ok 14 - Should have get template options
ok 15 - Variables should by default not be loaded from config
ok 16 - --set should be merged with config variables
ok 17 - --set should be override config variables
ok 18 - Requires should be an arrayref
ok 19 - Conflicts should be an arrayref
ok 20 - Notes should be an arrayref
ok 21 - Varibles should be a hashref
ok 22 - Default dir should be undef
ok 23 - with_deploy should be true by default
ok 24 - Should die on deploy_template
ok 25 - Should be an "add" exception
ok 26 - Should get deploy_template failure note
ok 27 - with_revert should be true by default
ok 28 - Should die on revert_template
ok 29 - Should be an "add" exception
ok 30 - Should get revert_template failure note
ok 31 - with_verify should be true by default
ok 32 - Should die on verify_template
ok 33 - Should be an "add" exception
ok 34 - Should get verify_template failure note
ok 35 - Create add with template_directory
ok 36 - Should find deploy in templates directory
ok 37 - Should find revert in templates directory
ok 38 - Should find verify in templates directory
ok 39 - _find should work with template_directory
ok 40 - Create add with no template directory
ok 41 - _find should work with user_dir from Config
ok 42 - Should die trying to find template
ok 43 - Should be an "add" exception
ok 44 - Should get unfound verify template note
ok 45 - _find should work with system_dir from Config
ok 46 - _slurp() should load a reference to file contents
ok 47 - sql/sqitch_change_test.sql does not exist
ok 48 - Write out a script
ok 49 - sql/sqitch_change_test.sql exists
ok 50 - The template should have been evaluated
ok 51 - Info should show $out created
ok 52 - Create add cmd with requires and conflicts
ok 53 - Write out a script with requires and conflicts
ok 54 - Info should show $out created
ok 55 - The template should have been evaluated with requires and conflicts
ok 56 - Create another add with template_directory
ok 57 - Should not have "widgets_table" in plan
ok 58 - dir sql/deploy does not exist
ok 59 - dir sql/revert does not exist
ok 60 - dir sql/verify does not exist
ok 61 - Add change "widgets_table"
ok 62 - Added change isa App::Sqitch::Plan::Change
ok 63 - Change name should be set
ok 64 - It should have no requires
ok 65 - It should have no conflicts
ok 66 - It should have prompted for a note
ok 67 - sql/deploy/widgets_table.sql exists
ok 68 - sql/revert/widgets_table.sql exists
ok 69 - sql/verify/widgets_table.sql exists
ok 70 - Deploy script should look right
ok 71 - Revert script should look right
ok 72 - Verify script should look right
ok 73 - Info should have reported file creation
ok 74 - Added change in reloaded plan isa App::Sqitch::Plan::Change
ok 75 - Create another add with template_directory and no verify script
ok 76 - sql/deploy/foo_table.sql exists
ok 77 - sql/revert/foo_table.sql does not exist
ok 78 - sql/ferify/foo_table.sql does not exist
ok 79 - Should not have "foo_table" in plan
ok 80 - Add change "foo_table"
ok 81 - sql/deploy/foo_table.sql exists
ok 82 - sql/revert/foo_table.sql exists
ok 83 - sql/ferify/foo_table.sql does not exist
ok 84 - "foo_table" change isa App::Sqitch::Plan::Change
ok 85 - It should have prompted for a note
ok 86 - Change name should be set to "foo_table"
ok 87 - It should have requires
ok 88 - It should have conflicts
ok 89 - It should have a comment
ok 90 - Info should report skipping file and include dependencies
ok 91 - no warnings
ok
t/base.t ...........
1..156
ok 1 - use App::Sqitch;
ok 2 - App::Sqitch->can(...)
ok 3 - A new object isa App::Sqitch
ok 4 - db_client should be undef
ok 5 - db_username should be undef
ok 6 - db_name should be undef
ok 7 - db_host should be undef
ok 8 - db_port should be undef
ok 9 - Default plan file should be $top_dir/sqitch.plan
ok 10 - verbosity should be 1
ok 11 - Default extension should be sql
ok 12 - Default top_dir should be .
ok 13 - Default deploy_dir should be ./sql/deploy
ok 14 - Default revert_dir should be ./sql/revert
ok 15 - Default verify_dir should be ./sql/verify
ok 16 - The object isa App::Sqitch::Plan
ok 17 - Default user_name should be set from system
ok 18 - Default user_email should be set from system
ok 19 - Should get exception for no _engine
ok 20 - No _engine error ident should be "core"
ok 21 - No _engine error message should be correct
ok 22 - Should get exception for no engine
ok 23 - No engine error ident should be "core"
ok 24 - No engine error message should be correct
ok 25 - Should get error for unknown engine
ok 26 - Unknown engine error ident should be "core"
ok 27 - Unknown No engine error message should be correct
ok 28 - Engine "pg" should be valid
ok 29 - Engine "sqlite" should be valid
ok 30 - Should get error for user name containing "<"
ok 31 - Invalid user name error ident should be "user"
ok 32 - Invalid user name error message should be correct
ok 33 - Should get error for user name starting with "["
ok 34 - Second Invalid user name error ident should be "user"
ok 35 - Second Invalid user name error message should be correct
ok 36 - Should get error for user email containing ">"
ok 37 - Invalid user email error ident should be "user"
ok 38 - Invalid user email error message should be correct
ok 39 - Should get 0 from go()
ok 40 - Command isa App::Sqitch::Command::help
ok 41 - Extra args should be passed to execute
ok 42 - The object isa App::Sqitch
ok 43 - Engine should be set by option
ok 44 - ddl should be set by config
ok 45 - Get the Sqitch config
ok 46 - Should have local config overriding user
ok 47 - Should fall back on user config
ok 48 - Should have read user name from configuration
ok 49 - Should have read user email from configuration
ok 50 - Go should return 2 on Sqitch exception
ok 51 - The error should have been vented
ok 52 - The stack trace should have been sent to trace
ok 53 - Go should return exitval on another exception
ok 54 - Both the message and the trace should have been vented
ok 55 - Nothing should have been traced
ok 56 - Go should return 2 on a third Sqitch exception
ok 57 - Should have one thing vented
ok 58 - And it should include our message
ok 59 - editor should use use parameter
ok 60 - editor should use $EDITOR
ok 61 - editor should prefer $SQITCH_EDITOR
ok 62 - editor fall back on vi when not Windows
ok 63 - editor fall back on notepad on Windows
ok 64 - trace should work
ok 65 - Should get no trace output for verbosity 2
ok 66 - trace_literal should work
ok 67 - Should get no trace_literal output for verbosity 2
ok 68 - debug should work
ok 69 - Should get no debug output for verbosity 1
ok 70 - debug_literal should work
ok 71 - Should get no debug_literal output for verbosity 1
ok 72 - info should work
ok 73 - Should get no info output for verbosity 0
ok 74 - info_literal should work
ok 75 - Should get no info_literal output for verbosity 0
ok 76 - comment should work
ok 77 - comment should work with verbosity 0
ok 78 - comment_literal should work
ok 79 - comment_literal should work with verbosity 0
ok 80 - emit should work
ok 81 - emit should work even with verbosity 0
ok 82 - emit_literal should work
ok 83 - emit_literal should work even with verbosity 0
ok 84 - warn should work
ok 85 - warn_literal should work
ok 86 - vent should work
ok 87 - vent_literal should work
ok 88 - App::Sqitch->can('run')
ok 89 - Should get success back from run echo
ok 90 - The echo script should have run
ok 91 - Nothing should have gone to STDERR
ok 92 - run die should, well, die
ok 93 - The die script should have its STDOUT ummolested
ok 94 - The die script should have its STDERR unmolested
ok 95 - App::Sqitch->can('capture')
ok 96 - The echo script output should have been returned
ok 97 - Should get an error if the command errors out
ok 98 - The die script STDERR should have passed through
ok 99 - App::Sqitch->can('probe')
ok 100 - Should have just chomped first line of output
ok 101 - App::Sqitch->can('spool')
ok 102 - Spool to read.pl
ok 103 - Data should have been sent to STDOUT by read.pl
ok 104 - Should get error when die.pl dies
ok 105 - Error ident should be "io"
ok 106 - The error message should be one of the I/O messages
ok 107 - The die script STDERR should have passed through
ok 108 - Should get an error for a bad command
ok 109 - Error ident should be "io"
ok 110 - Error message should be about inability to exec
ok 111 - Should get error for no prompt message
ok 112 - No prompt ident should be "DEV"
ok 113 - No prompt error message should be correct
ok 114 - Prompt should return input
ok 115 - Prompt should prompt
ok 116 - Prompt with default should return input
ok 117 - Prompt should prompt with default
ok 118 - Prompt with undef default should return input
ok 119 - Prompt should prompt with bracket for undef default
ok 120 - Prompt should return default for undef input
ok 121 - Prompt should show default when undef input
ok 122 - Prompt should return input for empty input
ok 123 - Prompt should show default when empty input
ok 124 - Should get error when uattended and no default
ok 125 - Unattended error ident should be "io"
ok 126 - Unattended error message should be correct
ok 127 - Prompt should return input
ok 128 - Prompt should show default as selected when unattended
ok 129 - Should get error for no ask_y_n message
ok 130 - No ask_y_n ident should be "DEV"
ok 131 - No ask_y_n error message should be correct
ok 132 - Should get error for invalid ask_y_n default
ok 133 - Invalid ask_y_n default ident should be "DEV"
ok 134 - Invalid ask_y_n default error message should be correct
ok 135 - ask_y_n should return true for "y" input
ok 136 - ask_y_n() should prompt
ok 137 - ask_y_n should return false for "no" input
ok 138 - ask_y_n() should prompt for no
ok 139 - ask_y_n should return false for "Nein"
ok 140 - ask_y_n() should prompt for no
ok 141 - ask_y_n should return true for "Yep"
ok 142 - ask_y_n() should prompt for yes
ok 143 - ask_y_n should return true default "y"
ok 144 - ask_y_n() should prompt and show default "y"
ok 145 - ask_y_n should return false default "n"
ok 146 - ask_y_n() should prompt and show default "n"
ok 147 - Should get error for bad answers
ok 148 - Bad answers ident should be "IO"
ok 149 - Bad answers message should be correct
ok 150 - _readline should work
ok 151 - _readline should return undef when unattended
ok 152 - Localied string should be valid UTF-8
ok 153 - Localied string should be decoded
ok 154 - Localied string should be valid UTF-8
ok 155 - Localied string should be decoded
ok 156 - no warnings
ok
t/blank.t ..........
1..34
ok 1 - require App::Sqitch::Plan::Blank;
ok 2 - App::Sqitch::Plan::Blank->can(...)
ok 3 - The object isa App::Sqitch::Plan::Blank
ok 4 - The object isa App::Sqitch::Plan::Line
ok 5 - Name should format as ""
ok 6 - should stringify to ""
ok 7 - Create tag with more stuff
ok 8 - It should stringify correctly
ok 9 - Create a blank with newlines and backslashes in the note
ok 10 - The newlines and backslashe should not be escaped
ok 11 - The newlines and backslahs should be escaped by format_note
ok 12 - Create a blank with escapes
ok 13 - Note shoud be unescaped
ok 14 - Should trim Leading newlines from note
ok 15 - Should trim Leading line feeds from note
ok 16 - Should trim Trailing newlines from note
ok 17 - Should trim trailing line feeds from note
ok 18 - Should trim Leading and trailing vertical space from note
ok 19 - Should trim Laeading and trailing newlines but not spaces from note
ok 20 - Should have localized not prompt
ok 21 - First arg to run() should be editor
ok 22 - Temp file should exist
ok 23 - Temp file contents should include prompt
ok 24 - Should get exception for no note text
ok 25 - No note error ident should be "plan"
ok 26 - No note error message should be correct
ok 27 - Exit val should be 1
ok 28 - First arg to run() should be editor
ok 29 - Temp file should exist
ok 30 - Temp file contents should include prompt
ok 31 - Request note
ok 32 - Should have the edited note
ok 33 - The request should not prompt again
ok 34 - no warnings
ok
t/bundle.t .........
1..132
ok 1 - Load a sqitch object
ok 2 - bundle command isa App::Sqitch::Command::bundle
ok 3 - App::Sqitch::Command::bundle->can(...)
ok 4 - Should have dest_dir option
ok 5 - Default dest_dir should be bundle/
ok 6 - Should have dest top dir
ok 7 - Default config should be empty
ok 8 - --dest_dir should be converted to a path object by configure()
ok 9 - --from and --to should be passed through configure
ok 10 - Load a sqitch object with top_dir
ok 11 - bundle.dest_dir config should be converted to a path object by configure()
ok 12 - another bundle command isa App::Sqitch::Command::bundle
ok 13 - dest_dir should be "_build/sql"
ok 14 - Dest top dir should be _build/sql/sql/
ok 15 - Dest deploy dir should be _build/sql/sql/deploy
ok 16 - Dest revert dir should be _build/sql/sql/revert
ok 17 - Dest verify dir should be _build/sql/sql/verify
ok 18 - Load a sqitch object with pg top_dir
ok 19 - pg bundle command isa App::Sqitch::Command::bundle
ok 20 - dest_dir should again be "_build/sql"
ok 21 - Dest deploy dir should be _build/sql/pg/deploy
ok 22 - Dest revert dir should be _build/sql/pg/revert
ok 23 - Dest verify dir should be _build/sql/pg/verify
ok 24 - Path delete.me should not exist
ok 25 - Create delete.me
ok 26 - Path delete.me should now exist
ok 27 - The mkdir info should have been output
ok 28 - Create delete.me again
ok 29 - Path delete.me should still exist
ok 30 - Nothing should have been emitted
ok 31 - Should fail on permission issue
ok 32 - Permission error should have ident "bundle"
ok 33 - The permission error should be formatted properly
ok 34 - File delete.me/deploy/roles.sql should not exist
ok 35 - Copy sql/deploy/roles.sql to delete.me/deploy/roles.sql
ok 36 - File delete.me/deploy/roles.sql should now exist
ok 37 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same
ok 38 - The mkdir and copy info should have been output
ok 39 - Copy sql/deploy/roles.sql to delete.me/deploy/roles.sql again
ok 40 - File delete.me/deploy/roles.sql should still exist
ok 41 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same
ok 42 - Should have debugging output
ok 43 - Copy sql/deploy/roles.sql to old delete.me/deploy/roles.sql
ok 44 - File delete.me/deploy/roles.sql should still be there
ok 45 - delete.me/deploy/roles.sql and sql/deploy/roles.sql contents are the same
ok 46 - Only copy message should again have been emitted
ok 47 - Copy sql/deploy/users.sql to delete.me/deploy/roles.sql
ok 48 - File delete.me/deploy/roles.sql should now exist
ok 49 - delete.me/deploy/roles.sql and sql/deploy/users.sql contents are the same
ok 50 - Again only Copy message should have been emitted
ok 51 - Should get exception when source file does not exist
ok 52 - Nonexistent file error ident should be "bundle"
ok 53 - Nonexistent file error message should be correct
ok 54 - Should get exception when copy returns false
ok 55 - Copy fail ident should be "bundle"
ok 56 - Copy fail error message should be correct
ok 57 - _build/sql/sqitch.conf does not exist
ok 58 - Bundle the config file
ok 59 - _build/sql/sqitch.conf exists
ok 60 - _build/sql/sqitch.conf and sqitch.conf contents are the same
ok 61 - Should have config notice
ok 62 - _build/sql/pg/sqitch.plan does not exist
ok 63 - Bundle the plan file
ok 64 - _build/sql/pg/sqitch.plan exists
ok 65 - _build/sql/pg/sqitch.plan and pg/sqitch.plan contents are the same
ok 66 - Should have plan notice
ok 67 - --from bundle command isa App::Sqitch::Command::bundle
ok 68 - From should be "widgets"
ok 69 - Bundle the plan file with --from
ok 70 - Statement of the bits written should have been emitted
ok 71 - Plan should have written only "widgets"
ok 72 - --to bundle command isa App::Sqitch::Command::bundle
ok 73 - To should be "users"
ok 74 - Bundle the plan file with --to
ok 75 - Statement of the bits written should have been emitted
ok 76 - Plan should have written only "users" and its tags
ok 77 - _build/sql/pg/deploy/users.sql does not exist
ok 78 - _build/sql/pg/revert/users.sql does not exist
ok 79 - _build/sql/pg/deploy/widgets.sql does not exist
ok 80 - _build/sql/pg/revert/widgets.sql does not exist
ok 81 - _build/sql/pg/deploy/func/add_user.sql does not exist
ok 82 - _build/sql/pg/revert/func/add_user.sql does not exist
ok 83 - Load pg sqitch object
ok 84 - another bundle command isa App::Sqitch::Command::bundle
ok 85 - Bundle scripts
ok 86 - _build/sql/pg/deploy/users.sql exists
ok 87 - _build/sql/pg/revert/users.sql exists
ok 88 - _build/sql/pg/deploy/widgets.sql exists
ok 89 - _build/sql/pg/revert/widgets.sql exists
ok 90 - _build/sql/pg/deploy/func/add_user.sql exists
ok 91 - _build/sql/pg/revert/func/add_user.sql exists
ok 92 - Should have change notices
ok 93 - bundle from "widgets" isa App::Sqitch::Command::bundle
ok 94 - Bundle scripts
ok 95 - _build/sql/pg/deploy/users.sql does not exist
ok 96 - _build/sql/pg/revert/users.sql does not exist
ok 97 - _build/sql/pg/deploy/widgets.sql exists
ok 98 - _build/sql/pg/revert/widgets.sql exists
ok 99 - Should have only "widets" in change notices
ok 100 - bundle to "users" isa App::Sqitch::Command::bundle
ok 101 - Bundle scripts
ok 102 - _build/sql/pg/deploy/users.sql exists
ok 103 - _build/sql/pg/revert/users.sql exists
ok 104 - _build/sql/pg/deploy/widgets.sql does not exist
ok 105 - _build/sql/pg/revert/widgets.sql does not exist
ok 106 - Should have only "users" in change notices
ok 107 - Should die on nonexistent from change
ok 108 - Nonexistent from change ident should be "bundle"
ok 109 - Nonexistent from message change should be correct
ok 110 - Should die on nonexistent to change
ok 111 - Nonexistent to change ident should be "bundle"
ok 112 - Nonexistent to message change should be correct
ok 113 - _build/sql/sqitch.conf does not exist
ok 114 - _build/sql/pg/sqitch.plan does not exist
ok 115 - _build/sql/pg/deploy/users.sql does not exist
ok 116 - _build/sql/pg/revert/users.sql does not exist
ok 117 - _build/sql/pg/deploy/widgets.sql does not exist
ok 118 - _build/sql/pg/revert/widgets.sql does not exist
ok 119 - _build/sql/pg/deploy/func/add_user.sql does not exist
ok 120 - _build/sql/pg/revert/func/add_user.sql does not exist
ok 121 - another bundle command isa App::Sqitch::Command::bundle
ok 122 - Execute!
ok 123 - _build/sql/sqitch.conf exists
ok 124 - _build/sql/pg/sqitch.plan exists
ok 125 - _build/sql/pg/deploy/users.sql exists
ok 126 - _build/sql/pg/revert/users.sql exists
ok 127 - _build/sql/pg/deploy/widgets.sql exists
ok 128 - _build/sql/pg/revert/widgets.sql exists
ok 129 - _build/sql/pg/deploy/func/add_user.sql exists
ok 130 - _build/sql/pg/revert/func/add_user.sql exists
ok 131 - Should have all notices
ok 132 - no warnings
ok
t/change.t .........
1..85
ok 1 - require App::Sqitch::Plan::Change;
ok 2 - App::Sqitch::Plan::Change->can(...)
ok 3 - The object isa App::Sqitch::Plan::Change
ok 4 - The object isa App::Sqitch::Plan::Line
ok 5 - It should be a deploy change
ok 6 - It should not be a revert change
ok 7 - And it should say so
ok 8 - Timestamp isa App::Sqitch::DateTime
ok 9 - path_segments should have the file name
ok 10 - The deploy file should be correct
ok 11 - The revert file should be correct
ok 12 - The verify file should be correct
ok 13 - The change should not be reworked
ok 14 - path_segments should not include suffix
ok 15 - Add a rework tag
ok 16 - Reworked tag should be stored
ok 17 - The change should be reworked
ok 18 - path_segments should now include suffix
ok 19 - The change should not be reworked
ok 20 - Add two rework tags
ok 21 - The change should again be reworked
ok 22 - path_segments should now include the correct suffixc
ok 23 - Name should format as "foo"
ok 24 - Name should format with tags as "foo"
ok 25 - Dependencies should format as ""
ok 26 - Name should format with dependencies as "foo"
ok 27 - Name should format op without dependencies as "foo"
ok 28 - Change content should format correctly without dependencies
ok 29 - Planner name shoudld default to user name
ok 30 - Planner email shoudld default to user email
ok 31 - Planner name and email should format properly
ok 32 - should stringify to "foo" + planner
ok 33 - Since tag should be undef
ok 34 - Parent should be undef
ok 35 - Old change info should be correct
ok 36 - Old change ID should be correct
ok 37 - Change info should be correct
ok 38 - Change ID should be correct
ok 39 - Create change with more stuff
ok 40 - It should stringify correctly
ok 41 - It should not be a deploy change
ok 42 - It should be a revert change
ok 43 - It should say so
ok 44 - It should have a since tag
ok 45 - It should have a parent
ok 46 - Old info should not since tag
ok 47 - Info should include parent and dependencies
ok 48 - Should have no tags
ok 49 - Add a tag
ok 50 - Should have the tag
ok 51 - Should format name with tags
ok 52 - Add another tag
ok 53 - Should have both tags
ok 54 - Should format name with both tags
ok 55 - Planner name and email should format properly
ok 56 - Dependencies should format as "[foo bar @baz !dr_evil]"
ok 57 - Name should format with dependencies as "yo/howdy [foo bar @baz !dr_evil]"
ok 58 - Name should format op with dependencies as "yo/howdy [foo bar @baz !dr_evil]"
ok 59 - Change content should format correctly with dependencies
ok 60 - path_segments should include directories
ok 61 - The deploy file should include the suffix
ok 62 - The revert file should include the suffix
ok 63 - The verify file should include the suffix
ok 64 - Create change "baz"
ok 65 - Create change "bar"
ok 66 - Get deploy handle
ok 67 - It should be the deploy file
ok 68 - Get revert handle
ok 69 - It should be the revert file
ok 70 - Get verify handle
ok 71 - It should be the verify file
ok 72 - Create a change with explicit requires and conflicts
ok 73 - requires should be set
ok 74 - conflicts should be set
ok 75 - Dependencies should include requires and conflicts
ok 76 - Should find changes for requires
ok 77 - Should find changes for conflicts
ok 78 - Create change with UTF-8 name
ok 79 - The name should be decoded text in old info
ok 80 - Old change ID should be hashed from encoded UTF-8
ok 81 - The name should be decoded text in info
ok 82 - Change ID should be hashed from encoded UTF-8
ok 83 - note_prompt() should work
ok 84 - note_prompt() should work
ok 85 - no warnings
ok
t/changelist.t .....
1..298
ok 1 - require App::Sqitch::Plan::ChangeList;
ok 2 - Count should be six
ok 3 - Changes should be in order
ok 4 - Items should be the same as changes
ok 5 - Tags should return the one tag
ok 6 - Should have foo at 0
ok 7 - Should have bar at 1
ok 8 - Should have yo1 at 2
ok 9 - Should have baz at 4
ok 10 - Should have yo2 at 5
ok 11 - Should not find "non"
ok 12 - Should not find "@non"
ok 13 - Should find foo at 0
ok 14 - Should find foo by ID at 0
ok 15 - Should find foo by old ID at 0
ok 16 - Should find bar at 1
ok 17 - Should find bar^ at 0
ok 18 - Should find bar~ at 2
ok 19 - Should find bar~~ at 3
ok 20 - Should not find bar~~~
ok 21 - Should find bar~2 at 3
ok 22 - Should find bar~3 at 4
ok 23 - Should find bar by ID at 1
ok 24 - Should find bar by old ID at 1
ok 25 - Should find @alpha at 2
ok 26 - Should find @alpha^ at 1
ok 27 - Should find @alpha^^ at 1
ok 28 - Should not find @alpha^^^
ok 29 - Should find @alpha by ID at 2
ok 30 - Should find @alpha by old ID at 2
ok 31 - Should find baz at 3
ok 32 - Should find baz by ID at 3
ok 33 - Should find baz by old ID at 3
ok 34 - Should not find baz^^^
ok 35 - Should not find baz^3 at 0
ok 36 - Should not find baz^4
ok 37 - Should find baz by ID^ at 2
ok 38 - Should find baz by old ID^ at 2
ok 39 - Should find @FIRST at 1
ok 40 - Should have no offset for @FIRST
ok 41 - Should find undef for @FIRST^
ok 42 - Offset should not be set
ok 43 - Should find @FIRST~ at 2
ok 44 - Should have offset 1 for @FIRST~
ok 45 - Should find @FIRST~~ at 3
ok 46 - Should have offset 2 for @FIRST~
ok 47 - Should not find @FIRST~~~
ok 48 - Offset should not be set
ok 49 - Should find @FIRST~2 at 3
ok 50 - Should have offset 2 for @FIRST~2
ok 51 - Should find @FIRST~3 at 4
ok 52 - Should have offset 3 for @FIRST~3
ok 53 - Should find @FIRST at 1
ok 54 - Should have no offset for @FIRST
ok 55 - Should find undef for @FIRST^
ok 56 - Offset should not be set
ok 57 - Should find @FIRST~ at 2
ok 58 - Should have offset 1 for @FIRST~
ok 59 - Should find @FIRST~~ at 3
ok 60 - Should have offset 2 for @FIRST~
ok 61 - Should not find @FIRST~~~
ok 62 - Offset should not be set
ok 63 - Should find @FIRST~2 at 3
ok 64 - Should have offset 2 for @FIRST~2
ok 65 - Should find @FIRST~3 at 4
ok 66 - Should have offset 3 for @FIRST~3
ok 67 - Should get bar for @FIRST
ok 68 - Should have no offset for @FIRST
ok 69 - Should get nothing for @FIRST^
ok 70 - Offset should not be set
ok 71 - Should get yo1 for @FIRST~
ok 72 - Should have offset 1 for @FIRST~
ok 73 - Should find bar for @FIRST
ok 74 - Should have no offset for @FIRST
ok 75 - Should find nothing for @FIRST^
ok 76 - Offset should not be set
ok 77 - Should find yo1 for @FIRST~
ok 78 - Should have offset 1 for @FIRST~
ok 79 - Should find @LAST at 2
ok 80 - Should have offset 0 for @LAST
ok 81 - Should find @LAST^ at 1
ok 82 - Should have offset 1 for @LAST^
ok 83 - Should find @LAST^^ at 1
ok 84 - Should have offset 2 for @LAST^^
ok 85 - Should not find @LAST^^^
ok 86 - Offset should not be set
ok 87 - Should find @LAST at 2
ok 88 - Should have offset 0 for @LAST
ok 89 - Should find @LAST^ at 1
ok 90 - Should have offset 1 for @LAST^
ok 91 - Should find @LAST^^ at 1
ok 92 - Should have offset 2 for @LAST^^
ok 93 - Should not find @LAST^^^
ok 94 - Offset should not be set
ok 95 - Should get yo1 for @LAST
ok 96 - Should have offset 0 for @LAST
ok 97 - should get bar for @LAST^
ok 98 - Should have offset 1 for @LAST^
ok 99 - should get nothing for @LAST~
ok 100 - Offset should not be set
ok 101 - Should find yo1 for @LAST
ok 102 - Should have offset 0 for @LAST
ok 103 - should find bar for @LAST^
ok 104 - Should have offset 1 for @LAST^
ok 105 - should find nothing for @LAST~
ok 106 - Offset should not be set
ok 107 - Should get multiple indexes error looking for index of "yo"
ok 108 - Multiple indexes error ident should be "plan"
ok 109 - Multiple indexes message should be correct
ok 110 - Should unknown tag error for invalid tag
ok 111 - Unknown tag error ident should be "plan"
ok 112 - Unknown taf message should be correct
ok 113 - Should get 2 for yo@alpha
ok 114 - Should get 1 for yo@alpha^
ok 115 - Should get 4 for yo@HEAD
ok 116 - Should get 3 for yo@HEAD^
ok 117 - Should get undef for yo@HEAD~
ok 118 - Should get undef for yo@HEAD~~
ok 119 - Should get 0 for foo@alpha
ok 120 - Should get 0 for foo@HEAD
ok 121 - Should get 0 for foo@ROOT
ok 122 - Should get undef for baz@alpha
ok 123 - Should get 3 for baz@HEAD
ok 124 - Should get 4 for @HEAD
ok 125 - Should get 0 for @ROOT
ok 126 - Should get 3 for @HEAD^
ok 127 - Should get undef for @HEAD~
ok 128 - Should get 1 for @ROOT~
ok 129 - Should get undef for @ROOT^
ok 130 - Should get foo for "foo"
ok 131 - Should get bar for "foo~"
ok 132 - Should get foo by ID
ok 133 - Should get foo by old ID
ok 134 - Should get bar for "bar"
ok 135 - Should get foo for "bar^"
ok 136 - Should get yo1 for "bar~"
ok 137 - Should get baz for "bar~~"
ok 138 - Should get yo2 for "bar~3"
ok 139 - Should get bar by ID
ok 140 - Should get bar by old ID
ok 141 - Should get "yo" by the @alpha tag ID
ok 142 - Should get "yo" by the @alpha tag old ID
ok 143 - Should get baz for "baz"
ok 144 - Should get baz by ID
ok 145 - Should get baz by old ID
ok 146 - Should get baz for "@HEAD^"
ok 147 - Should get yo1 for "@HEAD^^"
ok 148 - Should get bar for "@HEAD^3"
ok 149 - Should get foo for "@ROOT"
ok 150 - Should get yo1 for yo@alpha
ok 151 - Should get yo2 for yo@HEAD
ok 152 - Should get foo for foo@alpha
ok 153 - Should get foo for foo@HEAD
ok 154 - Should get undef for baz@alpha
ok 155 - Should get baz for baz@HEAD
ok 156 - Should get yo2 for "yo@HEAD"
ok 157 - Should get foo for "foo@ROOT"
ok 158 - Should find yo1 with "yo"
ok 159 - Should find yo1 with "yo@alpha"
ok 160 - Should find yo2 with yo@HEAD
ok 161 - Should find foo for "foo"
ok 162 - Should find foo for "foo@alpha"
ok 163 - Should find foo for "foo@HEAD"
ok 164 - Should find bar with "yo^"
ok 165 - Should find foo with "yo^^"
ok 166 - Should find foo with "yo^2"
ok 167 - Should find baz with "yo~"
ok 168 - Should find yo2 with "yo~~"
ok 169 - Should find yo2 with "yo~2"
ok 170 - Should find bar with "yo@alpha^"
ok 171 - Should find baz with "yo@alpha^"
ok 172 - Should find baz with yo@HEAD^
ok 173 - Should find baz with @HEAD^
ok 174 - Should find bar with @ROOT~^
ok 175 - Should get multiple indexes error looking for index of "yo"
ok 176 - Multiple indexes error ident should be "plan"
ok 177 - Multiple indexes message should be correct
ok 178 - Should unknown tag error for invalid tag
ok 179 - Unknown tag error ident should be "plan"
ok 180 - Unknown taf message should be correct
ok 181 - Push hi
ok 182 - Count should now be six
ok 183 - Changes should be in order with $hi at the end
ok 184 - Should find "hi" at index 5
ok 185 - Should find "hi" by ID at index 5
ok 186 - Should find "hi" by old ID at index 5
ok 187 - Index of @ROOT should still be 0
ok 188 - Index of @HEAD should now be 5
ok 189 - First index of "non" should be undef
ok 190 - First index of "foo" should be 0
ok 191 - First index of "foo~" should be 1
ok 192 - First index of "foo~~" should be 2
ok 193 - First index of "foo~3" should be 3
ok 194 - Should not find first index of "foo~~~"
ok 195 - First index of "foo" since @ROOT should be undef
ok 196 - First index of "bar" should be 1
ok 197 - First index of "yo" should be 2
ok 198 - First index of "yo" since @ROOT should be 2
ok 199 - First index of "baz" should be 3
ok 200 - First index of "baz^" should be 2
ok 201 - First index of "baz^^" should be 1
ok 202 - First index of "baz^3" should be 0
ok 203 - Should not find first index of "baz^^^"
ok 204 - First index of "yo" since "@alpha" should be 4
ok 205 - First index of "yo" since "baz" should be 4
ok 206 - First index of "yo^" since "baz" should be 4
ok 207 - First index of "yo~" since "baz" should be 5
ok 208 - Should get an exception for an unknown change passed to first_index_of()
ok 209 - Unknown change error ident should be "plan"
ok 210 - Unknown change message should be correct
ok 211 - Push so and fu
ok 212 - Count should now be eight
ok 213 - Index of @ROOT should remain 0
ok 214 - Index of @HEAD should now be 7
ok 215 - Changes should be in order with $so and $fu at the end
ok 216 - Index beta
ok 217 - Should find @beta at index 4
ok 218 - Should find yo2 via @beta
ok 219 - Should find yo2 via @beta ID
ok 220 - Should find yo2 via @beta old ID
ok 221 - Tags should return both tags
ok 222 - Should get 2 for last tagged index
ok 223 - Should find "yo" as last tagged
ok 224 - Should get 8 for count
ok 225 - Should find fu as last change
ok 226 - Should find last tagged index at 0
ok 227 - Should find last tagged at 0
ok 228 - Should get count 1
ok 229 - Should find last change at 0
ok 230 - Should find last tagged index at 1
ok 231 - Should find last tagged at 1
ok 232 - Should get count 2
ok 233 - Should find last change at 1
ok 234 - Should find last tagged index at 3
ok 235 - Should find last tagged at 3
ok 236 - Should get count 4
ok 237 - Should find last change at 3
ok 238 - Should find last tagged index at 4
ok 239 - Should find last tagged at 4
ok 240 - Should get count 5
ok 241 - Should find last change at 4
ok 242 - Should not find tag index in 0 changes
ok 243 - Should not find tag in 0 changes
ok 244 - Should find no change in empty plan
ok 245 - Should not find tag index in 2 changes
ok 246 - Should not find tag in 2 changes
ok 247 - Should not find tag index in 4 changes
ok 248 - Should not find tag in 4 changes
ok 249 - The object isa App::Sqitch::Plan::ChangeList
ok 250 - Should not find index of "foo" in empty list
ok 251 - Should not find first index of "foo" in empty list
ok 252 - Should get undef for "foo" in empty list
ok 253 - Should find undef for "foo" in empty list
ok 254 - Should not find index of "bar" in empty list
ok 255 - Should not find first index of "bar" in empty list
ok 256 - Should get undef for "bar" in empty list
ok 257 - Should find undef for "bar" in empty list
ok 258 - Should not find index of "HEAD" in empty list
ok 259 - Should not find first index of "HEAD" in empty list
ok 260 - Should get undef for "HEAD" in empty list
ok 261 - Should find undef for "HEAD" in empty list
ok 262 - Should not find index of "@HEAD" in empty list
ok 263 - Should not find first index of "@HEAD" in empty list
ok 264 - Should get undef for "@HEAD" in empty list
ok 265 - Should find undef for "@HEAD" in empty list
ok 266 - Should not find index of "ROOT" in empty list
ok 267 - Should not find first index of "ROOT" in empty list
ok 268 - Should get undef for "ROOT" in empty list
ok 269 - Should find undef for "ROOT" in empty list
ok 270 - Should not find index of "@ROOT" in empty list
ok 271 - Should not find first index of "@ROOT" in empty list
ok 272 - Should get undef for "@ROOT" in empty list
ok 273 - Should find undef for "@ROOT" in empty list
ok 274 - Should not find index of "alpha" in empty list
ok 275 - Should not find first index of "alpha" in empty list
ok 276 - Should get undef for "alpha" in empty list
ok 277 - Should find undef for "alpha" in empty list
ok 278 - Should not find index of "@alpha" in empty list
ok 279 - Should not find first index of "@alpha" in empty list
ok 280 - Should get undef for "@alpha" in empty list
ok 281 - Should find undef for "@alpha" in empty list
ok 282 - Should not find index of "FIRST" in empty list
ok 283 - Should not find first index of "FIRST" in empty list
ok 284 - Should get undef for "FIRST" in empty list
ok 285 - Should find undef for "FIRST" in empty list
ok 286 - Should not find index of "@FIRST" in empty list
ok 287 - Should not find first index of "@FIRST" in empty list
ok 288 - Should get undef for "@FIRST" in empty list
ok 289 - Should find undef for "@FIRST" in empty list
ok 290 - Should not find index of "LAST" in empty list
ok 291 - Should not find first index of "LAST" in empty list
ok 292 - Should get undef for "LAST" in empty list
ok 293 - Should find undef for "LAST" in empty list
ok 294 - Should not find index of "@LAST" in empty list
ok 295 - Should not find first index of "@LAST" in empty list
ok 296 - Should get undef for "@LAST" in empty list
ok 297 - Should find undef for "@LAST" in empty list
ok 298 - no warnings
ok
t/command.t ........
1..96
ok 1 - use App::Sqitch::Command;
ok 2 - App::Sqitch::Command->can(...)
ok 3 - Load a sqitch sqitch object
ok 4 - Should get an exception for missing sqitch param
ok 5 - Should get an exception for array sqitch param
ok 6 - Should get an exception for string sqitch param
ok 7 - The object isa App::Sqitch::Command
ok 8 - Should get empty hash for no config or options
ok 9 - Should get config with no options
ok 10 - Options should override config
ok 11 - Options keys should have dashes changed to underscores
ok 12 - Load a "whu" command
ok 13 - The object isa App::Sqitch::Command::whu
ok 14 - The sqitch attribute should be set
ok 15 - Load a "whu" command with "foo" config
ok 16 - The "foo" attribute should be set
ok 17 - Should exit
ok 18 - Invalid command error ident should be "config"
ok 19 - Should get proper mesage for invalid command
ok 20 - Should have exitval of 1
ok 21 - No command should yield usage
ok 22 - No args should be passed to usage
ok 23 - Should die on bad command module
ok 24 - Load a "whu" command with "--feathers" optin
ok 25 - The "feathers" attribute should be set
ok 26 - Load an "add" command
ok 27 - It isa App::Sqitch::Command::add
ok 28 - command() should return hyphenated name
ok 29 - App::Sqitch::Command->can('execute')
ok 30 - Create a App::Sqitch::Command object
ok 31 - Base class command should be ""
ok 32 - Base object command should be ""
ok 33 - Should get an error calling execute on command base class
ok 34 - Execute exception ident should be "DEV"
ok 35 - The execute() error message should be correct
ok 36 - Create a subclass command object
ok 37 - Subclass oject command should be "whu"
ok 38 - Subclass class command should be "whu"
ok 39 - Should get an error for un-overridden execute() method
ok 40 - Un-overidden execute() exception ident should be "DEV"
ok 41 - The unoverridden execute() error message should be correct
ok 42 - App::Sqitch::Command->can(...)
ok 43 - Create a App::Sqitch::Command object again
ok 44 - Base _parse_opts should return an empty hash
ok 45 - Create a subclass command object again
ok 46 - Subclass should return an empty hash for no args
ok 47 - Subclass should use options spec
ok 48 - Subclass should parse options spec
ok 49 - Args array should be cleared of options
ok 50 - Should get warning for unknown option
ok 51 - Should call _pod2usage on options parse failure
ok 52 - Good command object isa App::Sqitch::Command::good
ok 53 - Should get warning for unknown option when there are no options
ok 54 - Should call _pod2usage on no options parse failure
ok 55 - Call _pod2usage on base object
ok 56 - Default params should be passed to Pod::Usage
ok 57 - Call _pod2usage on "whu" command object
ok 58 - Default params should be passed to Pod::Usage
ok 59 - Config command object isa App::Sqitch::Command::config
ok 60 - Call _pod2usage on "config" command object
ok 61 - Should find sqitch-config docs to pass to Pod::Usage
ok 62 - Good command object isa App::Sqitch::Command::good
ok 63 - Call _pod2usage on "good" command object
ok 64 - Should find App::Sqitch::Command::good docs to pass to Pod::Usage
ok 65 - App::Sqitch::Command::good->can('usage')
ok 66 - Should find App::Sqitch::Command::good docs to pass to Pod::Usage
ok 67 - App::Sqitch::Command->can('verbosity')
ok 68 - Verbosity should be from sqitch
ok 69 - Verbosity should change with sqitch
ok 70 - trace should work
ok 71 - Should get no trace output for verbosity 2
ok 72 - trace_literal should work
ok 73 - Should get no trace_literal output for verbosity 2
ok 74 - debug should work
ok 75 - Should get no debug output for verbosity 1
ok 76 - debug_literal should work
ok 77 - Should get no debug_literal output for verbosity 1
ok 78 - info should work
ok 79 - Should get no info output for verbosity 0
ok 80 - info_literal should work
ok 81 - Should get no info_literal output for verbosity 0
ok 82 - comment should work
ok 83 - comment should work with verbosity 0
ok 84 - comment_literal should work
ok 85 - comment_literal should work with verbosity 0
ok 86 - emit should work
ok 87 - emit should work even with verbosity 0
ok 88 - emit_literal should work
ok 89 - emit_literal should work even with verbosity 0
ok 90 - warn should work
ok 91 - warn_literal should work
ok 92 - threw Regexp ((?^:EXITED: 2))
ok 93 - usage should work
ok 94 - threw Regexp ((?^:EXITED: 2))
ok 95 - usage should prefer sqitch-$command-usage
ok 96 - no warnings
ok
t/config.t .........
1..344
ok 1 - use App::Sqitch;
ok 2 - Load a sqitch object
ok 3 - Config command isa App::Sqitch::Command::config
ok 4 - Config command isa App::Sqitch::Command
ok 5 - App::Sqitch::Command::config->can(...)
ok 6 - Options should be configured
ok 7 - Construct with user and system
ok 8 - Should get error for multiple config files
ok 9 - Construct with user and local
ok 10 - Should get error for multiple config files
ok 11 - Construct with file and system
ok 12 - Should get another error for multiple config files
ok 13 - Construct with file and user
ok 14 - Should get a third error for multiple config files
ok 15 - Construct with file, system, and user
ok 16 - Should get one last error for multiple config files
ok 17 - Construct with bool and num
ok 18 - Should get error for multiple types
ok 19 - Construct with int and num
ok 20 - Should get another error for multiple types
ok 21 - Construct with int and bool
ok 22 - Should get a third error for multiple types
ok 23 - Construct with int, num, and bool
ok 24 - Should get one last error for multiple types
ok 25 - Construct with get & unset
ok 26 - Should get error for multiple actions
ok 27 - Construct with get & unset & edit
ok 28 - Should get error for multiple actions
ok 29 - Construct with get & unset & edit & list
ok 30 - Should get error for multiple actions
ok 31 - Construct with unset & edit
ok 32 - Should get error for multiple actions
ok 33 - Construct with unset & edit & list
ok 34 - Should get error for multiple actions
ok 35 - Construct with edit & list
ok 36 - Should get error for multiple actions
ok 37 - Construct with edit & add & list
ok 38 - Should get error for multiple actions
ok 39 - Construct with edit & add & list & get_all
ok 40 - Should get error for multiple actions
ok 41 - Construct with edit & add & list & get_regex
ok 42 - Should get error for multiple actions
ok 43 - Construct with edit & add & list & unset_all
ok 44 - Should get error for multiple actions
ok 45 - Construct with edit & add & list & get_all & unset_all
ok 46 - Should get error for multiple actions
ok 47 - Construct with edit & list & remove_section
ok 48 - Should get error for multiple actions
ok 49 - Construct with edit & list & remove_section & rename_section
ok 50 - Should get error for multiple actions
ok 51 - Default context should be local context
ok 52 - Default action should be undef
ok 53 - Default context should be undef
ok 54 - Local context should be local
ok 55 - User context should be user
ok 56 - System context should be system
ok 57 - Create config set command
ok 58 - Execute the set command
ok 59 - The set method should have been called
ok 60 - Execute the get command
ok 61 - The get method should have been called
ok 62 - Create config get-all command
ok 63 - An action with a dash should have triggered a method with an underscore
ok 64 - Create config get command
ok 65 - Get core.engine
ok 66 - Should have emitted the merged core.engine
ok 67 - Get core.pg.host
ok 68 - Should have emitted the merged core.pg.host
ok 69 - Get core.pg.client
ok 70 - Should have emitted the merged core.pg.client
ok 71 - Should get usage for missing get key
ok 72 - And the missing get key should trigger a usage message
ok 73 - Should get usage for invalid get key
ok 74 - And the invalid get key should trigger a usage message
ok 75 - Create config get int command
ok 76 - Get revert.count as int
ok 77 - Should have emitted the revert count
ok 78 - Get revert.revision as int
ok 79 - Should have emitted the revert revision as an int
ok 80 - Get bundle.tags_only as an int should fail
ok 81 - Int cast exception ident should be "config"
ok 82 - Create config get num command
ok 83 - Get revert.count as num
ok 84 - Should have emitted the revert count
ok 85 - Get revert.revision as num
ok 86 - Should have emitted the revert revision as an num
ok 87 - Get bundle.tags_only as an num should fail
ok 88 - Num cast exception ident should be "config"
ok 89 - Create config get bool command
ok 90 - Should get failure for invalid bool int
ok 91 - Bool int cast exception ident should be "config"
ok 92 - Should get failure for invalid bool num
ok 93 - Bool num cast exception ident should be "config"
ok 94 - Get bundle.tags_only as bool
ok 95 - Should have emitted bundle.tags_only as a bool
ok 96 - Create config get bool-or-int command
ok 97 - Get revert.count as bool-or-int
ok 98 - Should have emitted the revert count as an int
ok 99 - Get revert.revision as bool-or-int
ok 100 - Should have emitted the revert revision as an int
ok 101 - Get bundle.tags_only as bool-or-int
ok 102 - Should have emitted bundle.tags_only as a bool
ok 103 - Create system config get command
ok 104 - Get system core.engine
ok 105 - Should have emitted the system core.engine
ok 106 - Get system core.pg.client
ok 107 - Should have emitted the system core.pg.client
ok 108 - Attempt to get core.pg.host should fail
ok 109 - Error ident should be "config"
ok 110 - Error Message should be empty
ok 111 - Error exitval should be 1
ok 112 - Nothing should have been emitted
ok 113 - Create user config get command
ok 114 - Get user core.pg.host
ok 115 - Should have emitted the user core.pg.host
ok 116 - Get user core.pg.client
ok 117 - Should have emitted the user core.pg.client
ok 118 - Create local config get command
ok 119 - Get local core.pg.db_name
ok 120 - Should have emitted the local core.pg.db_name
ok 121 - Get local core.engine
ok 122 - Should have emitted the local core.engine
ok 123 - Create another system config get command
ok 124 - There should be no system config file
ok 125 - Should fail when no system config file
ok 126 - Error ident should be "config"
ok 127 - Error Message should be empty
ok 128 - Error exitval should be 1
ok 129 - Create another user config get command
ok 130 - There should be no user config file
ok 131 - Should fail when no user config file
ok 132 - Error ident should be "config"
ok 133 - Error Message should be empty
ok 134 - Error exitval should be 1
ok 135 - Create another local config get command
ok 136 - There should be no local config file
ok 137 - Should fail when no local config file
ok 138 - Error ident should be "config"
ok 139 - Error Message should be empty
ok 140 - Error exitval should be 1
ok 141 - Create config list command
ok 142 - Execute the list action
ok 143 - Should have emitted the merged config
ok 144 - Create system config list command
ok 145 - List the system config
ok 146 - Should have emitted the system config list
ok 147 - Create user config list command
ok 148 - List the user config
ok 149 - Should only have emitted the user config list
ok 150 - Create local config list command
ok 151 - List the local config
ok 152 - Should only have emitted the local config list
ok 153 - Create system config list command with no file
ok 154 - List the system config
ok 155 - Nothing should have been emitted
ok 156 - Create user config list command with no file
ok 157 - List the user config
ok 158 - Nothing should have been emitted
ok 159 - Create system config set command
ok 160 - Write core.foo
ok 161 - The property should have been written
ok 162 - Write core.engine
ok 163 - Both settings should be saved
ok 164 - Write core.pg.user
ok 165 - Both sections should be saved
ok 166 - Should set usage for missing set key
ok 167 - And the missing set key should trigger a usage message
ok 168 - Should set usage for invalid set key
ok 169 - And the invalid set key should trigger a usage message
ok 170 - Should set usage for missing set value
ok 171 - And the missing set value should trigger a usage message
ok 172 - Create system config add command
ok 173 - Add to core.foo
ok 174 - The value should have been added to the property
ok 175 - Should add usage for missing add key
ok 176 - And the missing add key should trigger a usage message
ok 177 - Should add usage for invalid add key
ok 178 - And the invalid add key should trigger a usage message
ok 179 - Should add usage for missing add value
ok 180 - And the missing add value should trigger a usage message
ok 181 - Create system config add command
ok 182 - Get core.engine with regex
ok 183 - Should have emitted value
ok 184 - Get core.foo with regex
ok 185 - Should have emitted value
ok 186 - Attempt to get core.foo with non-matching regex should fail
ok 187 - Error ident should be "config"
ok 188 - Error Message should be empty
ok 189 - Error exitval should be 1
ok 190 - Nothing should have been emitted
ok 191 - Create system config get_all command
ok 192 - Call get_all on core.engine
ok 193 - The engine should have been emitted
ok 194 - Get all core.engine with regex
ok 195 - Should have emitted value
ok 196 - Call get_all on core.foo
ok 197 - Both foos should have been emitted
ok 198 - Call get_all on core.foo with regex
ok 199 - Both foos should have been emitted
ok 200 - Call get_all on core.foo with limiting regex
ok 201 - Only the one foo should have been emitted
ok 202 - Attempt to get_all core.foo with non-matching regex should fail
ok 203 - Error ident should be "config"
ok 204 - Error Message should be empty
ok 205 - Error exitval should be 1
ok 206 - Nothing should have been emitted
ok 207 - Should get_all usage for missing get_all key
ok 208 - And the missing get_all key should trigger a usage message
ok 209 - Should get_all usage for invalid get_all key
ok 210 - And the invalid get_all key should trigger a usage message
ok 211 - Create config get_all int command
ok 212 - Get revert.count as int
ok 213 - Should have emitted the revert count
ok 214 - Get revert.revision as int
ok 215 - Should have emitted the revert revision as an int
ok 216 - Get bundle.tags_only as an int should fail
ok 217 - Int cast exception ident should be "config"
ok 218 - Create config get_all num command
ok 219 - Get revert.count as num
ok 220 - Should have emitted the revert count
ok 221 - Get revert.revision as num
ok 222 - Should have emitted the revert revision as an num
ok 223 - Get bundle.tags_only as an num should fail
ok 224 - Num cast exception ident should be "config"
ok 225 - Create config get_all bool command
ok 226 - Should get failure for invalid bool int
ok 227 - Bool int cast exception ident should be "config"
ok 228 - Should get failure for invalid bool num
ok 229 - Num int cast exception ident should be "config"
ok 230 - Get bundle.tags_only as bool
ok 231 - Should have emitted bundle.tags_only as a bool
ok 232 - Create config get_all bool-or-int command
ok 233 - Get revert.count as bool-or-int
ok 234 - Should have emitted the revert count as an int
ok 235 - Get revert.revision as bool-or-int
ok 236 - Should have emitted the revert revision as an int
ok 237 - Get bundle.tags_only as bool-or-int
ok 238 - Should have emitted bundle.tags_only as a bool
ok 239 - Create system config get_regex command
ok 240 - Call get_regex on core\..+
ok 241 - Should match all core options
ok 242 - Call get_regex on core\.pg\..+
ok 243 - Should match all core.pg options
ok 244 - Call get_regex on core\.pg\..+ and value regex
ok 245 - Should match all core.pg options that match
ok 246 - Attempt to get_regex core.foo with non-matching regex should fail
ok 247 - Error ident should be "config"
ok 248 - Error Message should be empty
ok 249 - Error exitval should be 1
ok 250 - Nothing should have been emitted
ok 251 - Should get_regex usage for missing get_regex key
ok 252 - And the missing get_regex key should trigger a usage message
ok 253 - Should get_regex usage for invalid get_regex key
ok 254 - And the invalid get_regex key should trigger a usage message
ok 255 - Create config get_regex int command
ok 256 - Get revert.count as int
ok 257 - Should have emitted the revert count
ok 258 - Get revert.revision as int
ok 259 - Should have emitted the revert revision as an int
ok 260 - Get bundle.tags_only as an int should fail
ok 261 - Int cast exception ident should be "config"
ok 262 - Create config get_regex num command
ok 263 - Get revert.count as num
ok 264 - Should have emitted the revert count
ok 265 - Get revert.revision as num
ok 266 - Should have emitted the revert revision as an num
ok 267 - Get bundle.tags_only as an num should fail
ok 268 - Num cast exception ident should be "config"
ok 269 - Create config get_regex bool command
ok 270 - Should get failure for invalid bool int
ok 271 - Bool int cast exception ident should be "config"
ok 272 - Should get failure for invalid bool num
ok 273 - Num int cast exception ident should be "config"
ok 274 - Get bundle.tags_only as bool
ok 275 - Should have emitted bundle.tags_only as a bool
ok 276 - Create config get_regex bool-or-int command
ok 277 - Get revert.count as bool-or-int
ok 278 - Should have emitted the revert count as an int
ok 279 - Get revert.revision as bool-or-int
ok 280 - Should have emitted the revert revision as an int
ok 281 - Get bundle.tags_only as bool-or-int
ok 282 - Should have emitted bundle.tags_only as a bool
ok 283 - Create system config unset command
ok 284 - Unset core.pg.user
ok 285 - core.pg.user should be gone
ok 286 - Unset core.engine
ok 287 - core.engine should have been removed
ok 288 - Should get failure trying to delete multivalue key
ok 289 - Multiple value exception ident should be "config"
ok 290 - And it should have the proper error message
ok 291 - Unset core.foo with a regex
ok 292 - The core.foo "baz" value should have been removed
ok 293 - Should unset usage for missing unset key
ok 294 - And the missing unset key should trigger a usage message
ok 295 - Should unset usage for invalid unset key
ok 296 - And the invalid unset key should trigger a usage message
ok 297 - Create system config unset-all command
ok 298 - Unset-all core.foo
ok 299 - core.foo should have been removed
ok 300 - Unset-all core.foo with regex
ok 301 - core.foo should have one value left
ok 302 - Should unset_all usage for missing unset_all key
ok 303 - And the missing unset_all key should trigger a usage message
ok 304 - Should unset_all usage for invalid unset_all key
ok 305 - And the invalid unset_all key should trigger a usage message
ok 306 - Create system config replace-all command
ok 307 - Replace all core.bar
ok 308 - core.bar should have all its values with one value
ok 309 - Replace all core.bar matching /^ba/
ok 310 - core.foo should have had the matching values replaced
ok 311 - Create system config rename-section command
ok 312 - Rename "core" to "funk"
ok 313 - core.foo should have become funk.foo
ok 314 - Should fail with no new name
ok 315 - Message should be in the usage call
ok 316 - Should fail with bad old name
ok 317 - Message should be in the usage call
ok 318 - Should fail with bad new name
ok 319 - Message should be in the usage call
ok 320 - Should fail with invalid section
ok 321 - Invalid section exception ident should be "config"
ok 322 - Invalid section exception message should be set
ok 323 - Create system config remove-section command
ok 324 - Remove "func" section
ok 325 - The "funk" section should be gone
ok 326 - Should fail with no name
ok 327 - Message should be in the usage call
ok 328 - Should fail with invalid name
ok 329 - Invalid key name exception ident should be "config"
ok 330 - And the invalid key message should be set
ok 331 - Should fail fetching multi-value key
ok 332 - Multi-value key exception ident should be "config"
ok 333 - The multiple value error should be thrown
ok 334 - Should fail setting multi-value key
ok 335 - Mult-valkue key exception ident should be "config"
ok 336 - The multi-value key error should be thrown
ok 337 - Create system config edit command
ok 338 - Execute the edit comand
ok 339 - The editor should have been run
ok 340 - Load a new sqitch object
ok 341 - Create system config set command with subdirectory config file path
ok 342 - Set "my.foo" in subdirectory config file
ok 343 - The file should have been written
ok 344 - no warnings
ok
t/configuration.t ..
1..17
ok 1 - use App::Sqitch::Config;
ok 2 - New config object isa App::Sqitch::Config
ok 3 - confname should be "sqitch.conf"
ok 4 # skip System dir can be modified at build time
ok 5 - Default user directory should be correct
ok 6 - Default global file name should be correct
ok 7 - Should preferably get SQITCH_SYSTEM_CONFIG file from global_file
ok 8 - system_file should alias global_file
ok 9 - Default user file name should be correct
ok 10 - Should preferably get SQITCH_USER_CONFIG file from user_file
ok 11 - Local file should be correct
ok 12 - dir_file should alias local_file
ok 13 - local_file should prefer $SQITCH_CONFIG
ok 14 - And so should dir_file
ok 15 - get_section("core") should work
ok 16 - get_section("core.pg") should work
ok 17 - no warnings
ok
t/datetime.t .......
1..33
ok 1 - require App::Sqitch::DateTime;
ok 2 - Construct a datetime object
ok 3 - as_string_formats should be correct
ok 4 - Date format "full" should yield "Saturday, January 12, 2013 3:04:09 AM America/Vancouver"
ok 5 - Format "full" should be valid
ok 6 - Date format "long" should yield "January 12, 2013 3:04:09 AM PST"
ok 7 - Format "long" should be valid
ok 8 - Date format "medium" should yield "Jan 12, 2013 3:04:09 AM"
ok 9 - Format "medium" should be valid
ok 10 - Date format "short" should yield "1/12/13 3:04 AM"
ok 11 - Format "short" should be valid
ok 12 - Date format "raw" should yield "2013-01-12T11:04:09Z"
ok 13 - Format "raw" should be valid
ok 14 - Date format "" should yield "2013-01-12T11:04:09Z"
ok 15 - Date format "iso" should yield "2013-01-12 03:04:09 -0800"
ok 16 - Format "iso" should be valid
ok 17 - Date format "iso8601" should yield "2013-01-12 03:04:09 -0800"
ok 18 - Format "iso8601" should be valid
ok 19 - Date format "rfc" should yield "Sat, 12 Jan 2013 03:04:09 -0800"
ok 20 - Format "rfc" should be valid
ok 21 - Date format "rfc2822" should yield "Sat, 12 Jan 2013 03:04:09 -0800"
ok 22 - Format "rfc2822" should be valid
ok 23 - Date format "cldr:HH'h' mm'm'" should yield "03h 04m"
ok 24 - Format "cldr:HH'h' mm'm'" should be valid
ok 25 - Date format "strftime:%a at %H:%M:%S" should yield "Sat at 03:04:09"
ok 26 - Format "strftime:%a at %H:%M:%S" should be valid
ok 27 - Should get error for invalid date format
ok 28 - Invalid date format error ident should be "datetime"
ok 29 - Invalid date format error message should be correct
ok 30 - Should get error for invalid as_string format param
ok 31 - Invalid date format error ident should be "datetime"
ok 32 - Invalid date format error message should be correct
ok 33 - no warnings
ok
t/depend.t .........
1..326
ok 1 - require App::Sqitch::Plan::Depend;
ok 2 - Load a sqitch sqitch object
ok 3 - App::Sqitch::Plan::Depend->can(...)
ok 4 - Construct "foo"
ok 5 - Constructed should stringify as "foo"
ok 6 - Constructed should have key name "foo"
ok 7 - Constructed should plan stringify as "foo"
ok 8 - Parse "foo"
ok 9 - Parsed should plan stringify as "foo"
ok 10 - "foo" should be required
ok 11 - "foo" should not be conflicting
ok 12 - "foo" type should be "require"
ok 13 - Should not have got project from "foo"
ok 14 - Should have project "depend" for "foo"
ok 15 - "foo" should not be external
ok 16 - "foo" should be internal
ok 17 - Should not have got ID from "foo"
ok 18 - Construct "bar"
ok 19 - Constructed should stringify as "bar"
ok 20 - Constructed should have key name "bar"
ok 21 - Constructed should plan stringify as "bar"
ok 22 - Parse "bar"
ok 23 - Parsed should plan stringify as "bar"
ok 24 - "bar" should be required
ok 25 - "bar" should not be conflicting
ok 26 - "bar" type should be "require"
ok 27 - Should not have got project from "bar"
ok 28 - Should have project "depend" for "bar"
ok 29 - "bar" should not be external
ok 30 - "bar" should be internal
ok 31 - Should not have got ID from "bar"
ok 32 - Construct "@bar"
ok 33 - Constructed should stringify as "@bar"
ok 34 - Constructed should have key name "@bar"
ok 35 - Constructed should plan stringify as "@bar"
ok 36 - Parse "@bar"
ok 37 - Parsed should plan stringify as "@bar"
ok 38 - "@bar" should be required
ok 39 - "@bar" should not be conflicting
ok 40 - "@bar" type should be "require"
ok 41 - Should not have got project from "@bar"
ok 42 - Should have project "depend" for "@bar"
ok 43 - "@bar" should not be external
ok 44 - "@bar" should be internal
ok 45 - Should not have got ID from "@bar"
ok 46 - Construct "!foo"
ok 47 - Constructed should stringify as "foo"
ok 48 - Constructed should have key name "foo"
ok 49 - Constructed should plan stringify as "!foo"
ok 50 - Parse "!foo"
ok 51 - Parsed should plan stringify as "!foo"
ok 52 - "!foo" should be conflicting
ok 53 - "!foo" should not be required
ok 54 - "!foo" type should be "conflict"
ok 55 - Should not have got project from "!foo"
ok 56 - Should have project "depend" for "!foo"
ok 57 - "!foo" should not be external
ok 58 - "!foo" should be internal
ok 59 - Should not have got ID from "!foo"
ok 60 - Construct "!@bar"
ok 61 - Constructed should stringify as "@bar"
ok 62 - Constructed should have key name "@bar"
ok 63 - Constructed should plan stringify as "!@bar"
ok 64 - Parse "!@bar"
ok 65 - Parsed should plan stringify as "!@bar"
ok 66 - "!@bar" should be conflicting
ok 67 - "!@bar" should not be required
ok 68 - "!@bar" type should be "conflict"
ok 69 - Should not have got project from "!@bar"
ok 70 - Should have project "depend" for "!@bar"
ok 71 - "!@bar" should not be external
ok 72 - "!@bar" should be internal
ok 73 - Should not have got ID from "!@bar"
ok 74 - Construct "foo@bar"
ok 75 - Constructed should stringify as "foo@bar"
ok 76 - Constructed should have key name "foo@bar"
ok 77 - Constructed should plan stringify as "foo@bar"
ok 78 - Parse "foo@bar"
ok 79 - Parsed should plan stringify as "foo@bar"
ok 80 - "foo@bar" should be required
ok 81 - "foo@bar" should not be conflicting
ok 82 - "foo@bar" type should be "require"
ok 83 - Should not have got project from "foo@bar"
ok 84 - Should have project "depend" for "foo@bar"
ok 85 - "foo@bar" should not be external
ok 86 - "foo@bar" should be internal
ok 87 - Should not have got ID from "foo@bar"
ok 88 - Construct "!foo@bar"
ok 89 - Constructed should stringify as "foo@bar"
ok 90 - Constructed should have key name "foo@bar"
ok 91 - Constructed should plan stringify as "!foo@bar"
ok 92 - Parse "!foo@bar"
ok 93 - Parsed should plan stringify as "!foo@bar"
ok 94 - "!foo@bar" should be conflicting
ok 95 - "!foo@bar" should not be required
ok 96 - "!foo@bar" type should be "conflict"
ok 97 - Should not have got project from "!foo@bar"
ok 98 - Should have project "depend" for "!foo@bar"
ok 99 - "!foo@bar" should not be external
ok 100 - "!foo@bar" should be internal
ok 101 - Should not have got ID from "!foo@bar"
ok 102 - Construct "proj:foo"
ok 103 - Constructed should stringify as "proj:foo"
ok 104 - Constructed should have key name "foo"
ok 105 - Constructed should plan stringify as "proj:foo"
ok 106 - Parse "proj:foo"
ok 107 - Parsed should plan stringify as "proj:foo"
ok 108 - "proj:foo" should be required
ok 109 - "proj:foo" should not be conflicting
ok 110 - "proj:foo" type should be "require"
ok 111 - Should have got project from "proj:foo"
ok 112 - Should have project "proj" for "proj:foo"
ok 113 - "proj:foo" should be external
ok 114 - "proj:foo" should not be internal
ok 115 - Should not have got ID from "proj:foo"
ok 116 - Construct "!proj:foo"
ok 117 - Constructed should stringify as "proj:foo"
ok 118 - Constructed should have key name "foo"
ok 119 - Constructed should plan stringify as "!proj:foo"
ok 120 - Parse "!proj:foo"
ok 121 - Parsed should plan stringify as "!proj:foo"
ok 122 - "!proj:foo" should be conflicting
ok 123 - "!proj:foo" should not be required
ok 124 - "!proj:foo" type should be "conflict"
ok 125 - Should have got project from "!proj:foo"
ok 126 - Should have project "proj" for "!proj:foo"
ok 127 - "!proj:foo" should be external
ok 128 - "!proj:foo" should not be internal
ok 129 - Should not have got ID from "!proj:foo"
ok 130 - Construct "proj:@foo"
ok 131 - Constructed should stringify as "proj:@foo"
ok 132 - Constructed should have key name "@foo"
ok 133 - Constructed should plan stringify as "proj:@foo"
ok 134 - Parse "proj:@foo"
ok 135 - Parsed should plan stringify as "proj:@foo"
ok 136 - "proj:@foo" should be required
ok 137 - "proj:@foo" should not be conflicting
ok 138 - "proj:@foo" type should be "require"
ok 139 - Should have got project from "proj:@foo"
ok 140 - Should have project "proj" for "proj:@foo"
ok 141 - "proj:@foo" should be external
ok 142 - "proj:@foo" should not be internal
ok 143 - Should not have got ID from "proj:@foo"
ok 144 - Construct "!proj:@foo"
ok 145 - Constructed should stringify as "proj:@foo"
ok 146 - Constructed should have key name "@foo"
ok 147 - Constructed should plan stringify as "!proj:@foo"
ok 148 - Parse "!proj:@foo"
ok 149 - Parsed should plan stringify as "!proj:@foo"
ok 150 - "!proj:@foo" should be conflicting
ok 151 - "!proj:@foo" should not be required
ok 152 - "!proj:@foo" type should be "conflict"
ok 153 - Should have got project from "!proj:@foo"
ok 154 - Should have project "proj" for "!proj:@foo"
ok 155 - "!proj:@foo" should be external
ok 156 - "!proj:@foo" should not be internal
ok 157 - Should not have got ID from "!proj:@foo"
ok 158 - Construct "proj:foo@bar"
ok 159 - Constructed should stringify as "proj:foo@bar"
ok 160 - Constructed should have key name "foo@bar"
ok 161 - Constructed should plan stringify as "proj:foo@bar"
ok 162 - Parse "proj:foo@bar"
ok 163 - Parsed should plan stringify as "proj:foo@bar"
ok 164 - "proj:foo@bar" should be required
ok 165 - "proj:foo@bar" should not be conflicting
ok 166 - "proj:foo@bar" type should be "require"
ok 167 - Should have got project from "proj:foo@bar"
ok 168 - Should have project "proj" for "proj:foo@bar"
ok 169 - "proj:foo@bar" should be external
ok 170 - "proj:foo@bar" should not be internal
ok 171 - Should not have got ID from "proj:foo@bar"
ok 172 - Construct "!proj:foo@bar"
ok 173 - Constructed should stringify as "proj:foo@bar"
ok 174 - Constructed should have key name "foo@bar"
ok 175 - Constructed should plan stringify as "!proj:foo@bar"
ok 176 - Parse "!proj:foo@bar"
ok 177 - Parsed should plan stringify as "!proj:foo@bar"
ok 178 - "!proj:foo@bar" should be conflicting
ok 179 - "!proj:foo@bar" should not be required
ok 180 - "!proj:foo@bar" type should be "conflict"
ok 181 - Should have got project from "!proj:foo@bar"
ok 182 - Should have project "proj" for "!proj:foo@bar"
ok 183 - "!proj:foo@bar" should be external
ok 184 - "!proj:foo@bar" should not be internal
ok 185 - Should not have got ID from "!proj:foo@bar"
ok 186 - Construct "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 187 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 188 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 189 - Constructed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 190 - Parse "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 191 - Parsed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 192 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should be required
ok 193 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be conflicting
ok 194 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "require"
ok 195 - Should not have got project from "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 196 - Should have undef project for "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 197 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external
ok 198 - "9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal
ok 199 - Should have got ID from "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 200 - Construct "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 201 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 202 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 203 - Constructed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 204 - Parse "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 205 - Parsed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 206 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should be conflicting
ok 207 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be required
ok 208 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "conflict"
ok 209 - Should not have got project from "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 210 - Should have undef project for "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 211 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external
ok 212 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal
ok 213 - Should have got ID from "!9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 214 - Construct "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 215 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 216 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 217 - Constructed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 218 - Parse "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 219 - Parsed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 220 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be required
ok 221 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be conflicting
ok 222 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "require"
ok 223 - Should have got project from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 224 - Should have project "foo" for "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 225 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external
ok 226 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal
ok 227 - Should have got ID from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 228 - Construct "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 229 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 230 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 231 - Constructed should plan stringify as "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 232 - Parse "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 233 - Parsed should plan stringify as "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 234 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be conflicting
ok 235 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be required
ok 236 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" type should be "conflict"
ok 237 - Should have got project from "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 238 - Should have project "foo" for "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 239 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should be external
ok 240 - "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065" should not be internal
ok 241 - Should have got ID from "!foo:9ed961ad7902a67fe0804c8e49e8993719fd5065"
ok 242 - Construct "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 243 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 244 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 245 - Constructed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 246 - Parse "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 247 - Parsed should plan stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 248 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be required
ok 249 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be conflicting
ok 250 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "require"
ok 251 - Should not have got project from "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 252 - Should have project "depend" for "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 253 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be external
ok 254 - "9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be internal
ok 255 - Should not have got ID from "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 256 - Construct "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 257 - Constructed should stringify as "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 258 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 259 - Constructed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 260 - Parse "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 261 - Parsed should plan stringify as "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 262 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be conflicting
ok 263 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be required
ok 264 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "conflict"
ok 265 - Should not have got project from "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 266 - Should have project "depend" for "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 267 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be external
ok 268 - "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be internal
ok 269 - Should not have got ID from "!9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 270 - Construct "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 271 - Constructed should stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 272 - Constructed should have key name "9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 273 - Constructed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 274 - Parse "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 275 - Parsed should plan stringify as "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 276 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be required
ok 277 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be conflicting
ok 278 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" type should be "require"
ok 279 - Should have got project from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 280 - Should have project "foo" for "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 281 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should be external
ok 282 - "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what" should not be internal
ok 283 - Should not have got ID from "foo:9ed961ad7902a67fe0804c8e49e8993719fd5065@what"
ok 284 - Should fail to parse "foo bar"
ok 285 - Should fail to parse "foo+@bar"
ok 286 - Should fail to parse "foo:+bar"
ok 287 - Should fail to parse "foo@bar+"
ok 288 - Should fail to parse "proj:foo@bar+"
ok 289 - Should get exception for no change or tag
ok 290 - No change or tag error ident should be "DEV"
ok 291 - No change or tag error message should be correct
ok 292 - Should get an error for ID + change
ok 293 - ID + change error ident ident should be "DEV"
ok 294 - ID + change error message should be correct
ok 295 - Should get an error for ID + tag
ok 296 - ID + tag error ident ident should be "DEV"
ok 297 - ID + tag error message should be correct
ok 298 - Should get an error for ID + change and tag
ok 299 - ID + change and tag error ident ident should be "DEV"
ok 300 - ID + change and tag error message should be correct
ok 301 - Create "roles" dependency
ok 302 - Should find the "roles" ID in the plan
ok 303 - The "roles" change should not be external
ok 304 - The "roles" change should be internal
ok 305 - Create "elsewhere:roles" dependency
ok 306 - The "elsewhere:roles" id should be undef
ok 307 - The "elsewhere:roles" change should be external
ok 308 - The "elsewhere:roles" change should not be internal
ok 309 - Create depend using external ID
ok 310 - The external ID should be set
ok 311 - The external ID should register as external
ok 312 - The external ID should not register as internal
ok 313 - Create depend using "roles" ID
ok 314 - The "roles" ID should be set
ok 315 - The "roles" ID should not register as external
ok 316 - The "roles" ID should register as internal
ok 317 - Create "nonexistent" dependency
ok 318 - Should get error for nonexistent change
ok 319 - Nonexistent change error ident should be "plan"
ok 320 - Nonexistent change error message should be correct
ok 321 - Create depend without ID
ok 322 - Resolved ID should be undef
ok 323 - Set resolved ID
ok 324 - Resolved ID should be set
ok 325 - Unset resolved ID
ok 326 - Resolved ID should be undef again
ok
t/deploy.t .........
ok 1 - require App::Sqitch::Command::deploy;
ok 2 - The class isa App::Sqitch::Command
ok 3 - App::Sqitch::Command::deploy->can(...)
ok 4 - Options should be correct
ok 5 - Should have default configuration with no config or opts
ok 6 - Should have mode, verify, set, and log-only options
ok 7 - Should have mode and verify configuration
ok 8 - Should have merged variables
ok 9 - The object isa App::Sqitch::Command::deploy
ok 10 - Should pick up variables from configuration
ok 11 - The object isa App::Sqitch::Command::deploy
ok 12 - to_target should be undef
ok 13 - mode should be "all"
ok 14 - Execute to "@alpha"
ok 15 - "@alpha" "all", and 0 should be passed to the engine
ok 16 - Execute
ok 17 - undef, "all", and 0 should be passed to the engine
ok 18 - Object with to, mode, log_only, and variables isa App::Sqitch::Command::deploy
ok 19 - Execute again
ok 20 - Engine should verify
ok 21 - "foo", "tag", and 1 should be passed to the engine
ok 22 - Vars should have been passed through to the engine
ok 23 - "all" should be a valid mode
ok 24 - "tag" should be a valid mode
ok 25 - "change" should be a valid mode
ok 26 - "foo" should not be a valid mode
ok 27 - "bad" should not be a valid mode
ok 28 - "gar" should not be a valid mode
1..28
ok
t/engine.t .........
1..544
ok 1 - use App::Sqitch::Engine;
ok 2 - App::Sqitch::Engine->can(...)
ok 3 - Load a sqitch sqitch object
ok 4 - Should get an exception for missing sqitch param
ok 5 - Should get an exception for array sqitch param
ok 6 - Should get an exception for string sqitch param
ok 7 - The object isa App::Sqitch::Engine
ok 8 - Load a "whu" engine
ok 9 - The object isa App::Sqitch::Engine::whu
ok 10 - The sqitch attribute should be set
ok 11 - Should die on invalid engine
ok 12 - Should get load error message
ok 13 - Should have relevant previoius exception
ok 14 - No engine should die
ok 15 - It should be the expected message
ok 16 - Should die on bad engine module
ok 17 - Should get another load error message
ok 18 - Should have relevant previoius exception from the bad module
ok 19 - App::Sqitch::Engine->can('name')
ok 20 - Create a App::Sqitch::Engine object
ok 21 - Base class name should be ""
ok 22 - Base object name should be ""
ok 23 - Create a subclass name object
ok 24 - Subclass oject name should be "whu"
ok 25 - Subclass class name should be "whu"
ok 26 - App::Sqitch::Engine->can('config_vars')
ok 27 - Should have no config vars in engine base class
ok 28 - App::Sqitch::Engine->can(...)
ok 29 - Should have no variables
ok 30 - Add a variable
ok 31 - Should have the variable
ok 32 - Set more variables
ok 33 - Should have all of the variables
ok 34 - Should again have no variables
ok 35 - Create a App::Sqitch::Engine object again
ok 36 - Should get an unimplemented exception from initialized()
ok 37 - Should get an unimplemented exception from initialize()
ok 38 - Should get an unimplemented exception from register_project()
ok 39 - Should get an unimplemented exception from run_file()
ok 40 - Should get an unimplemented exception from run_handle()
ok 41 - Should get an unimplemented exception from log_deploy_change()
ok 42 - Should get an unimplemented exception from log_fail_change()
ok 43 - Should get an unimplemented exception from log_revert_change()
ok 44 - Should get an unimplemented exception from log_new_tags()
ok 45 - Should get an unimplemented exception from is_deployed_tag()
ok 46 - Should get an unimplemented exception from is_deployed_change()
ok 47 - Should get an unimplemented exception from are_deployed_changes()
ok 48 - Should get an unimplemented exception from change_id_for()
ok 49 - Should get an unimplemented exception from changes_requiring_change()
ok 50 - Should get an unimplemented exception from earliest_change_id()
ok 51 - Should get an unimplemented exception from latest_change_id()
ok 52 - Should get an unimplemented exception from deployed_changes()
ok 53 - Should get an unimplemented exception from deployed_changes_since()
ok 54 - Should get an unimplemented exception from load_change()
ok 55 - Should get an unimplemented exception from name_for_change_id()
ok 56 - Should get an unimplemented exception from current_state()
ok 57 - Should get an unimplemented exception from current_changes()
ok 58 - Should get an unimplemented exception from current_tags()
ok 59 - Should get an unimplemented exception from search_events()
ok 60 - Should get an unimplemented exception from registered_projects()
ok 61 - Should get an unimplemented exception from change_offset_from_id()
ok 62 - App::Sqitch::Engine->can('_load_changes')
ok 63 - Should load changes with no tags
ok 64 - Should load changes with multiple hashes with no tags
ok 65 - Should load changes with tags
ok 66 - Should load changes with tags with leading @
ok 67 - Should load changes with multiple hashes with tags
ok 68 - Should load changes with reworked change
ok 69 - Should load changes with reworked change & multiple tags
ok 70 - Should load changes with doubly reworked change
ok 71 - Create a subclass name object again
ok 72 - App::Sqitch::Engine::whu->can(...)
ok 73 - Deploy a change
ok 74 - deploy_change should have called the proper methods
ok 75 - Output should reflect the deployment
ok 76 - Output should reflect success
ok 77 - Only log a change
ok 78 - log-only deploy_change should not have called run_file
ok 79 - Output should reflect the logging
ok 80 - Output should reflect deploy success
ok 81 - Enable verification
ok 82 - Deploy a change to be verified
ok 83 - deploy_change with verification should run the verify file
ok 84 - Output should reflect the logging
ok 85 - Output should reflect deploy success
ok 86 - Verify and log a change
ok 87 - deploy_change with verification and log-only should not run deploy
ok 88 - Output should reflect the logging
ok 89 - Output should reflect deploy success
ok 90 - Deploy change with error
ok 91 - Error should be from run_file
ok 92 - Should have logged change failure
ok 93 - Output should reflect the deployment, even with failure
ok 94 - Output should reflect deploy failure
ok 95 - Deploy change with failed verification
ok 96 - Error should be from deploy_change
ok 97 - Should have logged verify failure
ok 98 - Output should reflect the deployment, even with verify failure
ok 99 - Output should reflect deploy failure
ok 100 - Verify error should have been vented
ok 101 - Deploy a change with no verify script
ok 102 - deploy_change with no verify file should not run it
ok 103 - Output should reflect the logging
ok 104 - Output should reflect deploy success
ok 105 - A warning about no verify file should have been emitted
ok 106 - Revert a change
ok 107 - revert_change should have called the proper methods
ok 108 - Output should reflect reversion
ok 109 - Output should acknowldge revert success
ok 110 - Revert a change with log-only
ok 111 - Log-only revert_change should not have run the change script
ok 112 - Output should reflect logged reversion
ok 113 - Output should acknowldge revert success
ok 114 - Engine with sqitch with plan file
ok 115 - Should get proper change from latest_change()
ok 116 - Latest change ID should have been called with no arg
ok 117 - Should again get proper change from latest_change()
ok 118 - Latest change ID should have been called with offset arg
ok 119 - Should get proper change from earliest_change()
ok 120 - Earliest change ID should have been called with no arg
ok 121 - Should again get proper change from earliest_change()
ok 122 - Earliest change ID should have been called with offset arg
ok 123 - App::Sqitch::Engine->can('_sync_plan')
ok 124 - Plan should start at position -1
ok 125 - start_at should be undef
ok 126 - Sync the plan
ok 127 - Plan should still be at position -1
ok 128 - start_at should still be undef
ok 129 - Should not have updated IDs
ok 130 - Sync the plan again
ok 131 - Plan should again be at position -1
ok 132 - start_at should again be undef
ok 133 - Still should not have updated IDs
ok 134 - Sync the plan to a tag
ok 135 - Plan should now be at position 1
ok 136 - start_at should now be widgets@beta
ok 137 - Should have updated IDs
ok 138 - App::Sqitch::Engine->can('deploy')
ok 139 - Deploy to @alpha
ok 140 - Plan should be at position 1
ok 141 - Should have deployed through @alpha
ok 142 - Should have called _deploy_all()
ok 143 - Should have seen the output of the deploy to @alpha
ok 144 - Both change names should be output
ok 145 - Log-only deploy in $mode mode to @alpha
ok 146 - Plan should be at position 1
ok 147 - Should have deployed through @alpha without running files
ok 148 - Should have called _deploy_by_change()
ok 149 - Should have seen the output of the deploy to @alpha
ok 150 - Both change names should be output
ok 151 - Log-only deploy in $mode mode to @alpha
ok 152 - Plan should be at position 1
ok 153 - Should have deployed through @alpha without running files
ok 154 - Should have called _deploy_by_tag()
ok 155 - Should have seen the output of the deploy to @alpha
ok 156 - Both change names should be output
ok 157 - Log-only deploy in $mode mode to @alpha
ok 158 - Plan should be at position 1
ok 159 - Should have deployed through @alpha without running files
ok 160 - Should have called _deploy_all()
ok 161 - Should have seen the output of the deploy to @alpha
ok 162 - Both change names should be output
ok 163 - Deploy to @alpha with tag mode
ok 164 - Plan should again be at position 1
ok 165 - Should have deployed through @alpha without initialization
ok 166 - Should have called _deploy_by_tag()
ok 167 - Should have seen the output of the deploy to @alpha
ok 168 - Both change names should be output
ok 169 - Should get an error for an unknown target
ok 170 - The exception should report the unknown target
ok 171 - Only latest_item() should have been called
ok 172 - Deploy to alpha thrice
ok 173 - Only latest_item() should have been called
ok 174 - Should notify user that already at @alpha
ok 175 - Should fail targeting older change
ok 176 - Should be a "deploy" error
ok 177 - It should suggest using "revert"
ok 178 - Should have called latest_item() and latest_tag()
ok 179 - Deploy everything by change
ok 180 - Plan should be at position 3
ok 181 - Should have deployed everything
ok 182 - Should have called _deploy_by_change()
ok 183 - Should have emitted deploy announcement and successes
ok 184 - Should have seen the output of the deploy to the end
ok 185 - Should catch exception for attempt to deploy to up-to-date DB
ok 186 - Should be a "deploy" error
ok 187 - And the message should reflect up-to-dateness
ok 188 - It should have just fetched the latest change ID
ok 189 - Should fail on invalid mode
ok 190 - Should be a "deploy" error
ok 191 - And the message should reflect the unknown mode
ok 192 - It should have check for initialization
ok 193 - Should have announced destination
ok 194 - Engine with sqitch with no file
ok 195 - Should die with no changes
ok 196 - Should have the localized message
ok 197 - It should have checked for the latest item
ok 198 - Deploy changewise to index 1
ok 199 - Should changewise deploy to index 2
ok 200 - Should have seen output of each change
ok 201 - Output should reflect deploy successes
ok 202 - Deploy changewise to index 2
ok 203 - Should changewise deploy to from index 2 to index 3
ok 204 - Should have seen output of changes 2-3
ok 205 - Output should reflect deploy successes
ok 206 - Die in _deploy_by_change
ok 207 - It should have died in run_file
ok 208 - It should have logged the failure
ok 209 - Should have seen output for first change
ok 210 - Output should reflect deploy failure
ok 211 - Deploy tagwise to index 1
ok 212 - Should tagwise deploy to index 1
ok 213 - Should have seen output of each change
ok 214 - Output should reflect deploy successes
ok 215 - Deploy tagwise to index 3
ok 216 - Should tagwise deploy from index 2 to index 3
ok 217 - Should have seen output of changes 3-3
ok 218 - Output should reflect deploy successes
ok 219 - Die in log_deploy_change
ok 220 - Should get final deploy failure message
ok 221 - It should have reverted back to the last deployed tag
ok 222 - Should have seen deploy and revert messages (excluding curry revert)
ok 223 - Output should reflect deploy successes and failure
ok 224 - The original error should have been vented
ok 225 - Die in _deploy_by_tag again
ok 226 - Should again get final deploy failure message
ok 227 - Should have logged back to the beginning
ok 228 - Should have seen deploy and revert messages
ok 229 - Output should reflect deploy successes and failure
ok 230 - Should have one vented message
ok 231 - And it should be the underlying error
ok 232 - And it should had notified that all changes were reverted
ok 233 - Die in _deploy_by_tag yet again
ok 234 - Should die "Deploy failed" again
ok 235 - Should have reverted back to last tag
ok 236 - Should have user change reversion messages
ok 237 - Output should reflect deploy successes and failure
ok 238 - Should see underlying error and reversion message
ok 239 - Die in _deploy_by_tag again
ok 240 - Should once again get final deploy failure message
ok 241 - Should have tried to revert one change
ok 242 - Should have seen revert message
ok 243 - Output should reflect deploy successes and failure
ok 244 - Should get reversion failure message
ok 245 - Deploy all to index 1
ok 246 - Should tagwise deploy to index 1
ok 247 - Should have seen output of each change
ok 248 - Output should reflect deploy successes
ok 249 - Deploy tagwise to index 2
ok 250 - Should tagwise deploy to from index 1 to index 2
ok 251 - Should have seen output of changes 3-4
ok 252 - Output should reflect deploy successe
ok 253 - Die in _deploy_all
ok 254 - Should get final deploy failure message
ok 255 - It should have logged up to the failure
ok 256 - Should have seen deploy and revert messages excluding revert for failed logging
ok 257 - Output should reflect deploy successes and failures
ok 258 - The original error should have been vented
ok 259 - Die in _deploy_all again
ok 260 - Should again get final deploy failure message
ok 261 - Should have reveted all changes and tags
ok 262 - Should see all changes revert
ok 263 - Output should reflect deploy successes and failures
ok 264 - Should notifiy user of error and rollback
ok 265 - Die in _deploy_all on the last change
ok 266 - Should once again get final deploy failure message
ok 267 - Should have deployed to dr_evil and revered down to @alpha
ok 268 - Should see changes revert back to @alpha
ok 269 - Output should reflect deploy successes and failures
ok 270 - Should notifiy user of error and rollback to @alpha
ok 271 - Test is_deployed(tag)
ok 272 - It should have called is_deployed_tag()
ok 273 - Test is_deployed(change)
ok 274 - It should have called is_deployed_change()
ok 275 - App::Sqitch::Engine::whu->can('deploy_change')
ok 276 - Deploy a change
ok 277 - It should have been deployed
ok 278 - Should have shown change name
ok 279 - Output should reflect deploy success
ok 280 - Shuld die on deploy failure
ok 281 - Should be told the deploy failed
ok 282 - It should failed to have been deployed
ok 283 - Should have vented the original error
ok 284 - Should have shown change name
ok 285 - Output should reflect deploy failure
ok 286 - App::Sqitch::Engine::whu->can('revert_change')
ok 287 - Revert the change
ok 288 - It should have been reverted
ok 289 - Should have shown reverted change name
ok 290 - And the revert failure should be "ok"
ok 291 - App::Sqitch::Engine::whu->can('revert')
ok 292 - Should get exception for no changes to revert
ok 293 - Should be a revert exception
ok 294 - Should have notified that there is nothing to revert
ok 295 - Exit val should be 1
ok 296 - It should only have called deployed_changes()
ok 297 - Nothing should have been output
ok 298 - Revert should die on unknown change
ok 299 - Should be another "revert" error
ok 300 - The message should mention it is an unknown target
ok 301 - Should have called change_id_for() with change name
ok 302 - Nothing should have been output
ok 303 - Revert should die on unknown change ID
ok 304 - Should be another "revert" error
ok 305 - The message should mention it is an unknown target
ok 306 - Shoudl have called change_id_for() with change ID
ok 307 - Nothing should have been output
ok 308 - Revert should die on undeployed change
ok 309 - Should be another "revert" error
ok 310 - The message should mention that the target is not deployed
ok 311 - change_id_for
ok 312 - Nothing should have been output
ok 313 - Should get error reverting when no subsequent changes
ok 314 - No subsequent change error ident should be "revert"
ok 315 - No subsequent change error exitval should be 1
ok 316 - No subsequent change error message should be correct
ok 317 - Should have called change_id_for and deployed_changes_since
ok 318 - Should get error for known but undeployed change
ok 319 - No changes error should be "revert"
ok 320 - No changes exitval should be 1
ok 321 - No changes message should be correct
ok 322 - Should have called deployed_changes
ok 323 - Revert all changes
ok 324 - Should have reverted the changes in reverse order
ok 325 - Should have prompted to revert all changes
ok 326 - It should have said it was reverting all changes and listed them
ok 327 - And the revert successes should be emitted
ok 328 - Revert all changes log-only
ok 329 - Log-only Should have reverted the changes in reverse order
ok 330 - Log-only should have prompted to revert all changes
ok 331 - It should have said it was reverting all changes and listed them
ok 332 - And the revert successes should be emitted
ok 333 - Should abort declined revert
ok 334 - Declined revert ident should be "revert"
ok 335 - Should have exited with value 1
ok 336 - Should have exited with proper message
ok 337 - Should have called deployed_changes only
ok 338 - Should have prompt to revert all changes
ok 339 - It should have emitted nothing else
ok 340 - Revert all changes with no prompt
ok 341 - Should have reverted the changes in reverse order
ok 342 - Should have no prompt
ok 343 - It should have said it was reverting all changes and listed them
ok 344 - And the revert successes should be emitted
ok 345 - Revert to @alpha
ok 346 - Should have reverted only changes after @alpha
ok 347 - Should have prompt to revert to target
ok 348 - Output should show what it reverts to
ok 349 - And the revert successes should be emitted
ok 350 - Should abort declined revert to @alpha
ok 351 - Declined revert ident should be "revert"
ok 352 - Should have exited with value 1
ok 353 - Should have exited with proper message
ok 354 - Should have called revert methods
ok 355 - Should have prompt to revert to @alpha
ok 356 - It should have emitted nothing else
ok 357 - Revert to @HEAD^
ok 358 - Should have reverted one changes for @HEAD^
ok 359 - Should have no prompt
ok 360 - Output should show what it reverts to
ok 361 - And the header and "ok" should be emitted
ok 362 - App::Sqitch::Engine->can('change_id_for_depend')
ok 363 - Should get error from change_id_for_depend when change not in plan
ok 364 - Should get ident "plan" from change_id_for_depend
ok 365 - Should have proper message from change_id_for_depend error
ok 366 - Should get error from change_id_for_depend when no ID
ok 367 - Should get ident "engine" when no ID
ok 368 - Should have proper messag from change_id_for_depend error
ok 369 - Get a change id
ok 370 - Should have passed dependency params to change_id_for()
ok 371 - App::Sqitch::Engine->can('find_change')
ok 372 - find_change() should work
ok 373 - Its parameters should have been passed to change_id_for and change_offset_from_id
ok 374 - find_change() should work
ok 375 - Project and offset should have been passed off
ok 376 - App::Sqitch::Engine->can('verify_change')
ok 377 - Verify a change
ok 378 - The change file should have been run
ok 379 - Should have no info output
ok 380 - Verify a change with no verify script.
ok 381 - No abstract methods should be called
ok 382 - Should have no info output
ok 383 - A warning about no verify file should have been emitted
ok 384 - App::Sqitch::Engine::whu->can('check_deploy_dependencies')
ok 385 - All planned changes should be okay
ok 386 - Should have called are_deployed_changes
ok 387 - Dependencies should check out even when within those to be deployed
ok 388 - Resolved ID should be populated
ok 389 - Conflict should throw exception
ok 390 - Should be a "deploy" error
ok 391 - Should have localized message about the local conflict
ok 392 - Conflict should throw exception
ok 393 - Should be a "deploy" error
ok 394 - Should have localized message about conflicts
ok 395 - Should have called change_id_for() twice
ok 396 - Conflicting dependencies should have no resolved IDs
ok 397 - Conflict should throw another exception
ok 398 - Should be a "deploy" error
ok 399 - Should have localized message about all three conflicts
ok 400 - Should have called change_id_for() twice
ok 401 - Conflicting dependencies should have no resolved IDs
ok 402 - Missing dependencies should throw exception
ok 403 - Should be another "deploy" error
ok 404 - Should have localized message missing dependencies
ok 405 - Should have called check_requires
ok 406 - Missing requirements should not have resolved
ok 407 - Missing dependencies should throw exception
ok 408 - Should be another "deploy" error
ok 409 - Should have localized conflicts and required error messages
ok 410 - Should have called check_requires
ok 411 - Missing requirements should not have resolved
ok 412 - App::Sqitch::Engine::whu->can('check_revert_dependencies')
ok 413 - Should get error reverting change another depend on
ok 414 - Dependent error ident should be "revert"
ok 415 - Dependent error message should be correct
ok 416 - It should have check for requiring changes
ok 417 - Should get error reverting change others depend on
ok 418 - Dependent error ident should be "revert"
ok 419 - Dependent error message should be correct
ok 420 - It should have check for requiring changes
ok 421 - Should get error reverting change others depend on
ok 422 - Dependent error ident should be "revert"
ok 423 - Dependent error message should be correct
ok 424 - It should have checked twice for requiring changes
ok 425 - App::Sqitch::Engine::whu->can('_trim_to')
ok 426 - _trim_to should complain about a nonexistent change key
ok 427 - _trim_to nonexistent key error ident should be "foo"
ok 428 - _trim_to nonexistent key error message should be correct
ok 429 - _trim_to should complain about an undeployed change key
ok 430 - _trim_to undeployed change error ident should be "yep"
ok 431 - _trim_to undeployed change error message should be correct
ok 432 - _trim_to should complain about an unplanned change key
ok 433 - _trim_to unplanned change error ident should be "oop"
ok 434 - _trim_to unplanned change error message should be correct
ok 435 - _trim_to should find "roles" at index 0
ok 436 - Changes should be untrimmed
ok 437 - _trim_to should find "widgets" at index 2
ok 438 - First two changes should be shifted off
ok 439 - _trim_to should find "dr_evil" at last index
ok 440 - Changes should be untrimmed
ok 441 - _trim_to should find "tacos" at index 4
ok 442 - Last two changes should be popped off
ok 443 - _trim_to should find "@HEAD" at index 2
ok 444 - First two changes should be shifted off
ok 445 - _trim_to should find "@ROOT" at index 2
ok 446 - All but First three changes should be popped off
ok 447 - App::Sqitch::Engine::whu->can('_verify_changes')
ok 448 - Verify of a single change should return errcount 0
ok 449 - Declared output should list the change
ok 450 - Emitted Output should reflect the verification of the change
ok 451 - Should have no comments
ok 452 - The verify script should have been run
ok 453 - Verify of another single change should return errcount 0
ok 454 - Declared output should list the change
ok 455 - Emitted Output should reflect the verification of the change
ok 456 - Should have no comments
ok 457 - A warning about no verify file should have been emitted
ok 458 - The verify script should not have been run
ok 459 - Verify of two changes should return errcount 0
ok 460 - Declared output should list both changes
ok 461 - Emitted Output should reflect the verification of the changes
ok 462 - Should have no comments
ok 463 - A warning about no verify file should have been emitted
ok 464 - Only one verify script should have been run
ok 465 - Verify of two changes and show pending
ok 466 - Delcared output should list deployed changes
ok 467 - Emitted output should include list of pending changes
ok 468 - Should have no comments
ok 469 - A warning about no verify file should have been emitted
ok 470 - Only one verify script should have been run
ok 471 - Verify of a change not in the plan should return errcount 1
ok 472 - Declared Output should reflect the verification of the change
ok 473 - Emitted Output should reflect the failure of the verify
ok 474 - Should have a comment about the change missing from the plan
ok 475 - No verify script should have been run
ok 476 - Verify of an out-of-order change should return errcount 1
ok 477 - Declared output should reflect the verification of the change
ok 478 - Emitted Output should reflect the failure of the verify
ok 479 - Should have a comment about the out-of-order change
ok 480 - The verify script should have been run
ok 481 - Verify of a change with 2 issues should return 2
ok 482 - Declared output should reflect the verification of the change
ok 483 - Emitted Output should reflect the failure of the verify
ok 484 - Should have comment about the out-of-order change and script failure
ok 485 - No abstract methods should have been called
ok 486 - Verify of 2 changes with 2 issues each should return 4
ok 487 - Declraed output should reflect the verification of both changes
ok 488 - Emitted Output should reflect the failure of both verifies
ok 489 - Should have comment about the out-of-order changes and script failures
ok 490 - No abstract methods should have been called
ok 491 - _verify_changes with two undeployed changes should returne 2
ok 492 - Listed changes should be both deployed and undeployed
ok 493 - Emitted Output should reflect 1 pass
ok 494 - Should have comments for undeployed changes
ok 495 - No abstract methods should have been called
ok 496 - App::Sqitch::Engine::whu->can('verify')
ok 497 - Should get error for no deployed changes
ok 498 - No deployed changes ident should be "verify"
ok 499 - No deployed changes exitval should be 1
ok 500 - No deployed changes message should be correct
ok 501 - Notification of the verify should be emitted
ok 502 - Should get error for no changes
ok 503 - No changes ident should be "verify"
ok 504 - No changes exitval should be 1
ok 505 - No changes message should be correct
ok 506 - Notification of the verify should be emitted
ok 507 - Should get error for no planned changes
ok 508 - No planned changes ident should be "verify"
ok 509 - No planned changes exitval should be 2
ok 510 - No planned changes message should be correct
ok 511 - Notification of the verify should be emitted
ok 512 - Verify one change
ok 513 - Notification of the verify should be emitted
ok 514 - The one change name should be declared
ok 515 - Success should be emitted
ok 516 - Should have no comments
ok 517 - Verify two changes
ok 518 - Notification of the verify should be emitted
ok 519 - The two change names should be declared
ok 520 - Both successes should be emitted
ok 521 - Should have no comments
ok 522 - Should have warning about missing verify script
ok 523 - Verify with a reworked change changes
ok 524 - Notification of the verify should be emitted
ok 525 - The two change names should be emitted
ok 526 - Both successes should be emitted
ok 527 - Should have no comments
ok 528 - Should have no warnings
ok 529 - Verify two specific changes
ok 530 - Notification of the verify should be emitted
ok 531 - The two change names should be emitted
ok 532 - Both successes should be emitted
ok 533 - Should have no comments
ok 534 - Should have warning about missing verify script
ok 535 - Should get failure for failing verify scripts
ok 536 - Failed verify ident should be "verify"
ok 537 - Failed verify exitval should be 2
ok 538 - Faield verify message should be correct
ok 539 - Notification of the verify should be emitted
ok 540 - Both change names should be declared
ok 541 - Output should include the failure report
ok 542 - Should have the errors in comments
ok 543 - Nothing should have been vented
ok 544 - no warnings
ok
t/help.t ...........
1..11
ok 1 - Load a sqitch sqitch object
ok 2 - Load help command isa App::Sqitch::Command::help
ok 3 - Execute help
ok 4 - Should show sqitch app docs
ok 5 - Execute "config" help
ok 6 - Should show "config" command docs
ok 7 - Should get an exception for "nonexistent" help
ok 8 - Exception ident should be "help"
ok 9 - Should get failure message for nonexistent command
ok 10 - Exception exit val should be 1
ok 11 - no warnings
ok
t/init.t ...........
1..158
ok 1 - use App::Sqitch::Command::init;
ok 2 - App::Sqitch::Command::init isa App::Sqitch::Command
ok 3 - New init object isa App::Sqitch::Command::init
ok 4 - App::Sqitch::Command::init->can(...)
ok 5 - Options should be correct
ok 6 - Default config should be empty
ok 7 - Should accept a URI in options
ok 8 - processed uri option isa URI
ok 9 - App::Sqitch::Command::init->can('make_directories')
ok 10 - dir init.mkdir does not exist
ok 11 - dir init.mkdir/deploy does not exist
ok 12 - dir init.mkdir/revert does not exist
ok 13 - dir init.mkdir/verify does not exist
ok 14 - Make the directories
ok 15 - dir init.mkdir exists
ok 16 - dir init.mkdir/deploy exists
ok 17 - dir init.mkdir/revert exists
ok 18 - dir init.mkdir/verify exists
ok 19 - Each should have been sent to info
ok 20 - Make the directories again
ok 21 - Nothing should have been sent to info
ok 22 - Make the directories once more
ok 23 - revert dir exists again
ok 24 - Should have noted creation of revert dir
ok 25 - Should fail on permission issue
ok 26 - Permission error should have ident "init"
ok 27 - The permission error should be formatted properly
ok 28 - App::Sqitch::Command::init->can('write_config')
ok 29 - Another init object
ok 30 - nonexistent.conf does not exist
ok 31 - Write the config
ok 32 - nonexistent.conf exists
ok 33 - The configuration file should have no variables
ok 34 - The creation should be sent to info
ok 35 - All in core section should be commented-out
ok 36 - Another init object
ok 37 - Write the config
ok 38 - nonexistent.conf exists
ok 39 - The configuration should have been written with the one setting
ok 40 - The creation should be sent to info
ok 41 - Other settings should be commented-out
ok 42 - Write the config again
ok 43 - The configuration should be unchanged
ok 44 - Nothing should have been sent to info
ok 45 - Make an init object with user config
ok 46 - nonexistent.conf does not exist
ok 47 - Write the config with a user conf
ok 48 - nonexistent.conf exists
ok 49 - The configuration should just have core.top_dir
ok 50 - The creation should be sent to info again
ok 51 - Other settings should be commented-out
ok 52 - Make an init object with system config
ok 53 - nonexistent.conf does not exist
ok 54 - Write the config with a system conf
ok 55 - nonexistent.conf exists
ok 56 - The configuration should have local and system config
ok 57 - The creation should be sent to info again
ok 58 - Other settings should be commented-out
ok 59 - Create new init with sqitch non-default attributes
ok 60 - Write the config with core attrs
ok 61 - The creation should be sent to info once more
ok 62 - The configuration should have been written with all the core values
ok 63 - Create new init with sqitch with non-default engine attributes
ok 64 - Write the config with engine attrs
ok 65 - The creation should be sent to info yet again
ok 66 - The configuration should have been written with sqlite values
ok 67 - sqitch_prefix should be included in a comment
ok 68 - Create new init with sqitch with default engine attributes
ok 69 - Write the config with engine attrs
ok 70 - The creation should be sent to info again again
ok 71 - The configuration should have been written with only the engine var
ok 72 - Engine section should be present but commented-out
ok 73 - Make an init with sqlite and user config
ok 74 - nonexistent.conf does not exist
ok 75 - Write the config with sqlite config
ok 76 - The creation should be sent to info once more
ok 77 - New config should have been written with sqlite values
ok 78 - Configured client should be included in a comment
ok 79 - Configured sqitch_prefix should be included in a comment
ok 80 - Create new init with sqitch with more non-default engine attributes
ok 81 - Write the config with more engine attrs
ok 82 - The creation should be sent to info one more time
ok 83 - The configuration should have been written with pg values
ok 84 - sqitch_schema should be included in a comment
ok 85 - password should be included in a comment
ok 86 - Create new init with sqitch with default engine attributes
ok 87 - Write the config with engine attrs
ok 88 - The creation should be sent to info again again again
ok 89 - The configuration should have been written with only the engine var
ok 90 - Engine section should be present but commented-out
ok 91 - Make an init with pg and user config
ok 92 - nonexistent.conf does not exist
ok 93 - Write the config with pg config
ok 94 - The pg config creation should be sent to info
ok 95 - The configuration should have been written with pg options
ok 96 - Configured sqitch_schema should be in a comment
ok 97 - password should be included in a comment
ok 98 - Configured username should be in a comment
ok 99 - Configured host should be in a comment
ok 100 - App::Sqitch::Command::init->can('write_plan')
ok 101 - Plan file should not yet exist
ok 102 - Write the plan file
ok 103 - The plan creation should be sent to info
ok 104 - Plan file should now exist
ok 105 - The contents should be correct
ok 106 - Write the plan file again
ok 107 - The file should not be overwritten
ok 108 - Create new init with sqitch with project and URI
ok 109 - Write the plan file again
ok 110 - The plan creation should be sent to info againq
ok 111 - Plan file should again exist
ok 112 - The plan should include the project and uri pragmas
ok 113 - App::Sqitch::Command::init->can('_validate_project')
ok 114 - No project should yield usage
ok 115 - No args should be passed to usage
ok 116 - Should get error for invalid project name "^foo"
ok 117 - Bad project "^foo" ident should be "init"
ok 118 - Bad project "^foo" error message should be correct
ok 119 - Should get error for invalid project name "foo^"
ok 120 - Bad project "foo^" ident should be "init"
ok 121 - Bad project "foo^" error message should be correct
ok 122 - Should get error for invalid project name "foo^6"
ok 123 - Bad project "foo^6" ident should be "init"
ok 124 - Bad project "foo^6" error message should be correct
ok 125 - Should get error for invalid project name "foo^666"
ok 126 - Bad project "foo^666" ident should be "init"
ok 127 - Bad project "foo^666" error message should be correct
ok 128 - Should get error for invalid project name "%hi"
ok 129 - Bad project "%hi" ident should be "init"
ok 130 - Bad project "%hi" error message should be correct
ok 131 - Should get error for invalid project name "hi!"
ok 132 - Bad project "hi!" ident should be "init"
ok 133 - Bad project "hi!" error message should be correct
ok 134 - Should get error for invalid project name "foo@bar"
ok 135 - Bad project "foo@bar" ident should be "init"
ok 136 - Bad project "foo@bar" error message should be correct
ok 137 - Should get error for invalid project name "foo:bar"
ok 138 - Bad project "foo:bar" ident should be "init"
ok 139 - Bad project "foo:bar" error message should be correct
ok 140 - Should get error for invalid project name "+foo"
ok 141 - Bad project "+foo" ident should be "init"
ok 142 - Bad project "+foo" error message should be correct
ok 143 - Should get error for invalid project name "-foo"
ok 144 - Bad project "-foo" ident should be "init"
ok 145 - Bad project "-foo" error message should be correct
ok 146 - Should get error for invalid project name "@foo"
ok 147 - Bad project "@foo" ident should be "init"
ok 148 - Bad project "@foo" error message should be correct
ok 149 - Execute!
ok 150 - dir plan.dir exists
ok 151 - dir plan.dir/deploy exists
ok 152 - dir plan.dir/revert exists
ok 153 - dir plan.dir/verify exists
ok 154 - nonexistent.conf exists
ok 155 - plan.dir/sqitch.plan exists
ok 156 - Should have status messages
ok 157 - The plan should have the --project name
ok 158 - no warnings
ok
t/linelist.t .......
1..22
ok 1 - require App::Sqitch::Plan::LineList;
ok 2 - Count should be six
ok 3 - Lines should be in order
ok 4 - Should have foo at 0
ok 5 - Should have bar at 1
ok 6 - Should have yo1 at 2
ok 7 - Should have @alpha at 3
ok 8 - Should have blank at 4
ok 9 - Should have baz at 5
ok 10 - Should have yo2 at 6
ok 11 - Should not find "non"
ok 12 - Should find foo at 0
ok 13 - Should find bar at 1
ok 14 - Should find yo1 at 2
ok 15 - Should find @alpha at 3
ok 16 - Should find blank at 4
ok 17 - Should find baz at 5
ok 18 - Should find yo2 at 6
ok 19 - Append hi
ok 20 - Count should now be eight
ok 21 - Lines should be in order with $hi at the end
ok 22 - no warnings
ok
t/log.t ............
1..236
ok 1 - require App::Sqitch::Command::log;
ok 2 - Load a sqitch sqitch object
ok 3 - log command isa App::Sqitch::Command::log
ok 4 - App::Sqitch::Command::log->can(...)
ok 5 - Options should be correct
ok 6 - Should get empty hash for no config or options
ok 7 - Should get error for invalid date format in config
ok 8 - Invalid date format error ident should be "datetime"
ok 9 - Invalid date format error message should be correct
ok 10 - Should get error for invalid date format in optsions
ok 11 - Invalid date format error ident should be "log"
ok 12 - Invalid date format error message should be correct
ok 13 - Should get error for invalid format in config
ok 14 - Invalid format error ident should be "log"
ok 15 - Invalid format error message should be correct
ok 16 - Should get error for invalid format in optsions
ok 17 - Invalid format error ident should be "log"
ok 18 - Invalid format error message should be correct
ok 19 - Configuration should respect --no-color, setting "never"
ok 20 - Configuration should respect --no-color even when configure is set
ok 21 - Configuration should respect color option
ok 22 - Colors should be disabled for "never"
ok 23 - Configuration should respect color config
ok 24 - Colors should be disabled for "never"
ok 25 - Configuration should respect color option
ok 26 - Colors should be enabled for "always"
ok 27 - Configuration should respect color config
ok 28 - Colors should be enabled for "always"
ok 29 - Configuration should respect color option
ok 30 - Auto color option should change nothing
ok 31 - Configuration should respect color config
ok 32 - Auto color config should change nothing
ok 33 - Configuration should respect color option
ok 34 - Auto color option should change nothing
ok 35 - Configuration should respect color config
ok 36 - Auto color config should change nothing
ok 37 - Instantiate with format "raw"
ok 38 - Format "raw" should output correctly
ok 39 - Format "raw" should output correctly without tags
ok 40 - Instantiate with format "full"
ok 41 - Format "full" should output correctly
ok 42 - Instantiate with format "full" and date format "rfc"
ok 43 - Format "full" and date format "rfc" should output correctly
ok 44 - Instantiate with format "full" and date format "long"
ok 45 - Format "full" and date format "long" should output correctly
ok 46 - Instantiate with format "full" and date format "medium"
ok 47 - Format "full" and date format "medium" should output correctly
ok 48 - Format "full" should output correctly without tags
ok 49 - Instantiate with format "long"
ok 50 - Format "long" should output correctly
ok 51 - Format "long" should output correctly without tags
ok 52 - Instantiate with format "medium"
ok 53 - Format "medium" should output correctly
ok 54 - Instantiate with format "medium" and date format "rfc"
ok 55 - Format "medium" and date format "rfc" should output correctly
ok 56 - Instantiate with format "medium" and date format "long"
ok 57 - Format "medium" and date format "long" should output correctly
ok 58 - Instantiate with format "medium" and date format "medium"
ok 59 - Format "medium" and date format "medium" should output correctly
ok 60 - Instantiate with format "short"
ok 61 - Format "short" should output correctly
ok 62 - Instantiate with format "oneline"
ok 63 - Format "oneline" should output correctly
ok 64 - Format "%e" should output "deploy"
ok 65 - Format "%e" should output "revert"
ok 66 - Format "%e" should output "fail"
ok 67 - Format "%L" should output "Deploy"
ok 68 - Format "%L" should output "Revert"
ok 69 - Format "%L" should output "Fail"
ok 70 - Format "%l" should output "deploy"
ok 71 - Format "%l" should output "revert"
ok 72 - Format "%l" should output "fail"
ok 73 - Format "%{event}_" should output "Event: "
ok 74 - Format "%{change}_" should output "Change: "
ok 75 - Format "%{committer}_" should output "Committer:"
ok 76 - Format "%{planner}_" should output "Planner: "
ok 77 - Format "%{by}_" should output "By: "
ok 78 - Format "%{date}_" should output "Date: "
ok 79 - Format "%{committed}_" should output "Committed:"
ok 80 - Format "%{planned}_" should output "Planned: "
ok 81 - Format "%{name}_" should output "Name: "
ok 82 - Format "%{email}_" should output "Email: "
ok 83 - Format "%{requires}_" should output "Requires: "
ok 84 - Format "%{conflicts}_" should output "Conflicts:"
ok 85 - Format "%H" should output "123456789"
ok 86 - Format "%h" should output "123456789"
ok 87 - Format "%{5}h" should output "12345"
ok 88 - Format "%{7}h" should output "1234567"
ok 89 - Format "%n" should output "foo"
ok 90 - Format "%n" should output "bar"
ok 91 - Format "%o" should output "foo"
ok 92 - Format "%o" should output "bar"
ok 93 - Format "%c" should output "larry "
ok 94 - Format "%{n}c" should output "damian"
ok 95 - Format "%{name}c" should output "chip"
ok 96 - Format "%{e}c" should output "larry@example.com"
ok 97 - Format "%{email}c" should output "damian@example.com"
ok 98 - Format "%{date}c" should output "2013-01-12 03:04:16 -0800"
ok 99 - Format "%{date:rfc}c" should output "Sat, 12 Jan 2013 03:04:16 -0800"
ok 100 - Format "%{d:long}c" should output "January 12, 2013 3:04:16 AM PST"
ok 101 - Format "%{d:cldr:HH'h' mm'm'}c" should output "03h 04m"
ok 102 - Format "%{d:strftime:%a at %H:%M:%S}c" should output "Sat at 03:04:16"
ok 103 - Format "%p" should output "larry "
ok 104 - Format "%{n}p" should output "damian"
ok 105 - Format "%{name}p" should output "chip"
ok 106 - Format "%{e}p" should output "larry@example.com"
ok 107 - Format "%{email}p" should output "damian@example.com"
ok 108 - Format "%{date}p" should output "2013-01-11 03:04:16 -0800"
ok 109 - Format "%{date:rfc}p" should output "Fri, 11 Jan 2013 03:04:16 -0800"
ok 110 - Format "%{d:long}p" should output "January 11, 2013 3:04:16 AM PST"
ok 111 - Format "%{d:cldr:HH'h' mm'm'}p" should output "03h 04m"
ok 112 - Format "%{d:strftime:%a at %H:%M:%S}p" should output "Fri at 03:04:16"
ok 113 - Format "%t" should output ""
ok 114 - Format "%t" should output " @foo"
ok 115 - Format "%t" should output " @foo, @bar"
ok 116 - Format "%{|}t" should output ""
ok 117 - Format "%{|}t" should output " @foo"
ok 118 - Format "%{|}t" should output " @foo|@bar"
ok 119 - Format "%T" should output ""
ok 120 - Format "%T" should output " (@foo)"
ok 121 - Format "%T" should output " (@foo, @bar)"
ok 122 - Format "%{|}T" should output ""
ok 123 - Format "%{|}T" should output " (@foo)"
ok 124 - Format "%{|}T" should output " (@foo|@bar)"
ok 125 - Format "%r" should output ""
ok 126 - Format "%r" should output " foo"
ok 127 - Format "%r" should output " foo, bar"
ok 128 - Format "%{|}r" should output ""
ok 129 - Format "%{|}r" should output " foo"
ok 130 - Format "%{|}r" should output " foo|bar"
ok 131 - Format "%R" should output ""
ok 132 - Format "%R" should output "Requires: foo[newline]"
ok 133 - Format "%R" should output "Requires: foo, bar[newline]"
ok 134 - Format "%{|}R" should output ""
ok 135 - Format "%{|}R" should output "Requires: foo[newline]"
ok 136 - Format "%{|}R" should output "Requires: foo|bar[newline]"
ok 137 - Format "%x" should output ""
ok 138 - Format "%x" should output " foo"
ok 139 - Format "%x" should output " foo, bax"
ok 140 - Format "%{|}x" should output ""
ok 141 - Format "%{|}x" should output " foo"
ok 142 - Format "%{|}x" should output " foo|bax"
ok 143 - Format "%X" should output ""
ok 144 - Format "%X" should output "Conflicts: foo[newline]"
ok 145 - Format "%X" should output "Conflicts: foo, bar[newline]"
ok 146 - Format "%{|}X" should output ""
ok 147 - Format "%{|}X" should output "Conflicts: foo[newline]"
ok 148 - Format "%{|}X" should output "Conflicts: foo|bar[newline]"
ok 149 - Format "%{yellow}C" should output ""
ok 150 - Format "%{:event}C" should output ""
ok 151 - Format "%v" should output "[newline]"
ok 152 - Format "%%" should output "%"
ok 153 - Format "%s" should output "hi there"
ok 154 - Format "%s" should output "hi there"
ok 155 - Format "%s" should output "subject line"
ok 156 - Format "%{ }s" should output " hi there"
ok 157 - Format "%{xx}s" should output "xxhi there"
ok 158 - Format "%b" should output ""
ok 159 - Format "%b" should output "yo"
ok 160 - Format "%b" should output "first graph[newline][newline]second graph[newline][newline]"
ok 161 - Format "%{ }b" should output ""
ok 162 - Format "%{xxx }b" should output "xxx yo"
ok 163 - Format "%{x}b" should output "xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]"
ok 164 - Format "%{ }b" should output " yo"
ok 165 - Format "%B" should output "hi there"
ok 166 - Format "%B" should output "hi there[newline]yo"
ok 167 - Format "%B" should output "subject line[newline][newline]first graph[newline][newline]second graph[newline][newline]"
ok 168 - Format "%{ }B" should output " hi there"
ok 169 - Format "%{xxx }B" should output "xxx hi there[newline]xxx yo"
ok 170 - Format "%{x}B" should output "xsubject line[newline]x[newline]xfirst graph[newline]x[newline]xsecond graph[newline]x[newline]"
ok 171 - Format "%{ }B" should output " hi there
[newline] yo"
ok 172 - Format "%{change}a" should output "change lolz[newline]"
ok 173 - Format "%{change_id}a" should output "change_id 000011112222333444[newline]"
ok 174 - Format "%{event}a" should output "event deploy[newline]"
ok 175 - Format "%{tags}a" should output "tags @beta, @gamma[newline]"
ok 176 - Format "%{requires}a" should output "requires foo, bar[newline]"
ok 177 - Format "%{conflicts}a" should output ""
ok 178 - Format "%{committer_name}a" should output "committer_name larry[newline]"
ok 179 - Format "%{committed_at}a" should output "committed_at 2013-01-12T11:04:16Z[newline]"
ok 180 - Should get exception for format "%_"
ok 181 - %_ error ident should be "log"
ok 182 - %_ error message should be correct
ok 183 - Should get exception for unknown label in format "%_"
ok 184 - Invalid %_ label error ident should be "log"
ok 185 - Invalid %_ label error message should be correct
ok 186 - Instantiate with abbrev => 4
ok 187 - %h should respect abbrev
ok 188 - %H should not respect abbrev
ok 189 - Instantiate with date_format => "rfc"
ok 190 - %{date}c should respect the date_format attribute
ok 191 - %{iso}c should override the date_format attribute
ok 192 - Should get exception for unknown attribute passed to %a
ok 193 - %a error ident should be "log"
ok 194 - %a error message should be correct
ok 195 - Format "%{yellow}C" should output [33myellow[0m
ok 196 - Format "%{red}C" should output [31mred[0m
ok 197 - Format "%{blue}C" should output [34mblue[0m
ok 198 - Format "%{cyan}C" should output [36mcyan[0m
ok 199 - Format "%{magenta}C" should output [35mmagenta[0m
ok 200 - Format "%{:event}C" on "deploy" should output [32mgreen[0m
ok 201 - Format "%{:event}C" on "revert" should output [34mblue[0m
ok 202 - Format "%{:event}C" on "fail" should output [31mred[0m
ok 203 - Instantiate with format "full" again
ok 204 - Format "full" should output correctly with color
ok 205 - Instantiate with format "long" again
ok 206 - Format "long" should output correctly with color
ok 207 - Instantiate with format "medium" again
ok 208 - Format "medium" should output correctly with color
ok 209 - Instantiate with format "short" again
ok 210 - Format "short" should output correctly with color
ok 211 - Instantiate with format "oneline" again
ok 212 - Format "oneline" should output correctly with color
ok 213 - Should get an error for an invalid color
ok 214 - Invalid color error ident should be "log"
ok 215 - Invalid color error message should be correct
ok 216 - Should get exception for unititialied db
ok 217 - Uninit db error ident should be "log"
ok 218 - Uninit db exit val should be 1
ok 219 - Uninit db error message should be correct
ok 220 - Should get error for empty event table
ok 221 - no events error ident should be "log"
ok 222 - no events exit val should be 1
ok 223 - no events error message should be correct
ok 224 - Search should have been limited to one row
ok 225 - Execute log
ok 226 - The proper args should have been passed to search_events
ok 227 - The change should have been paged
ok 228 - log with attributes isa App::Sqitch::Command::log
ok 229 - Execute log with attributes
ok 230 - All params should have been passed to search_events
ok 231 - Both changes should have been paged
ok 232 - log with bad format isa App::Sqitch::Command::log
ok 233 - Should get an exception for a bad format code
ok 234 - bad format code format error ident should be "log"
ok 235 - bad format code format error message should be correct
ok 236 - no warnings
ok
t/options.t ........
1..25
ok 1 - use App::Sqitch;
ok 2 - App::Sqitch->can('_split_args')
ok 3 - Split on command-only
ok 4 - Split on core option plus command
ok 5 - Split on core option plus command plus command option
ok 6 - Option with arg should work
ok 7 - Option with arg should work
ok 8 - Should handle no command
ok 9 - _pod2usage should be called
ok 10 - Should exit for invalid option
ok 11 - App::Sqitch->can('_parse_core_opts')
ok 12 - Should have default config for no options
ok 13 - Ask for help
ok 14 - Should have been helped
ok 15 - Ask for man
ok 16 - Should have been manned
ok 17 - Should parse lots of options
ok 18 - top_dir isa Path::Class::Dir
ok 19 - deploy_dir isa Path::Class::Dir
ok 20 - revert_dir isa Path::Class::Dir
ok 21 - verify_dir isa Path::Class::Dir
ok 22 - --quiet should trump verbosity.
ok 23 - Short options should work
ok 24 - Run _pod2usage
ok 25 - Proper args should have been passed to Pod::Usage
ok
t/pg.t .............
ok 1 - require App::Sqitch::Engine::pg;
ok 2 - config_vars should return three vars
ok 3 - The object isa App::Sqitch::Engine::pg
ok 4 - client should default to psql
ok 5 - sqitch_schema default should be "sqitch"
ok 6 - username default should be undef
ok 7 - password default should be undef
ok 8 - db_name default should be undef
ok 9 - host default should be undef
ok 10 - port default should be undef
ok 11 - Destination should fall back on environment variables
ok 12 - psql command should be std opts-only
ok 13 - The object isa App::Sqitch::Engine::pg
ok 14 - Set some variables
ok 15 - Variables should be passed to psql via --set
ok 16 - Destination should read $PGDATABASE
ok 17 - Destination should read $PGUSER
ok 18 - Destination should fall back on sysuser
ok 19 - Destination should read username
ok 20 - Destination should prefer $PGDATABASE to username
ok 21 - Create another pg
ok 22 - client should be as configured
ok 23 - username should be as configured
ok 24 - password should be as configured
ok 25 - db_name should be as configured
ok 26 - destination should default to db_name
ok 27 - host should be as configured
ok 28 - port should be as configured
ok 29 - sqitch_schema should be as configured
ok 30 - psql command should be configured
ok 31 - Create a pg with sqitch with options
ok 32 - client should be as optioned
ok 33 - username should be as optioned
ok 34 - password should still be as configured
ok 35 - db_name should be as optioned
ok 36 - destination should still default to db_name
ok 37 - host should be as optioned
ok 38 - port should be as optioned
ok 39 - sqitch_schema should still be as configured
ok 40 - psql command should be as optioned
ok 41 - App::Sqitch::Engine::pg->can(...)
ok 42 - PGPASSWORD should be "s3cr3t"
ok 43 - Call _run
ok 44 - Command should be passed to run()
ok 45 - PGPASSWORD should be "s3cr3t"
ok 46 - Call _spool
ok 47 - Command should be passed to spool()
ok 48 - PGPASSWORD should be "s3cr3t"
ok 49 - Call _capture
ok 50 - Command should be passed to capture()
ok 51 - Create a pg with sqitch with no pw
ok 52 - PGPASSWORD should not exist
ok 53 - Call _run again
ok 54 - Command should be passed to run() again
ok 55 - PGPASSWORD should not exist
ok 56 - Call _spool again
ok 57 - Command should be passed to spool() again
ok 58 - PGPASSWORD should not exist
ok 59 - Call _capture again
ok 60 - Command should be passed to capture() again
ok 61 - PGPASSWORD should not exist
ok 62 - Run foo/bar.sql
ok 63 - File should be passed to run()
ok 64 - PGPASSWORD should not exist
ok 65 - Spool a "file handle"
ok 66 - Handle should be passed to spool()
ok 67 - PGPASSWORD should not exist
ok 68 - Verify foo/bar.sql
ok 69 - Verify file should be passed to capture()
ok 70 - PGPASSWORD should not exist
ok 71 - Verify foo/bar.sql again
ok 72 - Verifile file should be passed to run() for high verbosity
ok 73 - App::Sqitch::Engine::pg->can('_ts2char')
ok 74 - _ts2char should work
ok 75 - App::Sqitch::Engine::pg->can('_dt')
ok 76 - Return value of _dt() isa App::Sqitch::DateTime
ok 77 - DateTime year should be set
ok 78 - DateTime month should be set
ok 79 - DateTime day should be set
ok 80 - DateTime hour should be set
ok 81 - DateTime minute should be set
ok 82 - DateTime second should be set
ok 83 - DateTime TZ should be set
ok 84 - App::Sqitch::Engine::pg->can(...)
1..0 # SKIP Unable to connect to a database for testing: could not connect to server: No such file or directory
# Is the server running locally and accepting
# connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
ok 85 # skip Unable to connect to a database for testing: could not connect to server: No such file or directory
# Is the server running locally and accepting
# connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
1..85
ok
t/plan.t ...........
ok 1 - use App::Sqitch::Plan;
ok 2 - App::Sqitch::Plan->can(...)
ok 3 - The object isa App::Sqitch::Plan
ok 4 - Should parse simple "widgets.plan"
ok 5 - Should have sorted changes
ok 6 - changes isa ARRAY
ok 7 - lines isa ARRAY
ok 8 - All "widgets.plan" changes should be parsed
ok 9 - All "widgets.plan" lines should be parsed
ok 10 - Should parse multi-tagged "multi.plan"
ok 11 - Should have sorted changes twice
ok 12 - Should have captured the multi pragmas
ok 13 - Should have "multi.plan" lines and changes
ok 14 - Should read plan with no tags
ok 15 - Should have sorted changes
ok 16 - Should have captured the changes-only pragmas
ok 17 - Should have lines and changes for tagless plan
ok 18 - Should die on plan with bad change name
ok 19 - Bad change name error ident should be "plan"
ok 20 - And the bad change name error message should be correct
ok 21 - Should not have sorted changes
ok 22 - Should die on plan with bad name "+^foo"
ok 23 - Exception ident should be "plan"
ok 24 - And "+^foo" should trigger the appropriate message
ok 25 - Should not have sorted changes
ok 26 - Should die on plan with bad name "@^foo"
ok 27 - Exception ident should be "plan"
ok 28 - And "@^foo" should trigger the appropriate message
ok 29 - Should not have sorted changes
ok 30 - Should die on plan with bad name "+foo^"
ok 31 - Exception ident should be "plan"
ok 32 - And "+foo^" should trigger the appropriate message
ok 33 - Should not have sorted changes
ok 34 - Should die on plan with bad name "@foo^"
ok 35 - Exception ident should be "plan"
ok 36 - And "@foo^" should trigger the appropriate message
ok 37 - Should not have sorted changes
ok 38 - Should die on plan with bad name "+foo^6"
ok 39 - Exception ident should be "plan"
ok 40 - And "+foo^6" should trigger the appropriate message
ok 41 - Should not have sorted changes
ok 42 - Should die on plan with bad name "@foo^6"
ok 43 - Exception ident should be "plan"
ok 44 - And "@foo^6" should trigger the appropriate message
ok 45 - Should not have sorted changes
ok 46 - Should die on plan with bad name "+foo^666"
ok 47 - Exception ident should be "plan"
ok 48 - And "+foo^666" should trigger the appropriate message
ok 49 - Should not have sorted changes
ok 50 - Should die on plan with bad name "@foo^666"
ok 51 - Exception ident should be "plan"
ok 52 - And "@foo^666" should trigger the appropriate message
ok 53 - Should not have sorted changes
ok 54 - Should die on plan with bad name "+%hi"
ok 55 - Exception ident should be "plan"
ok 56 - And "+%hi" should trigger the appropriate message
ok 57 - Should not have sorted changes
ok 58 - Should die on plan with bad name "@%hi"
ok 59 - Exception ident should be "plan"
ok 60 - And "@%hi" should trigger the appropriate message
ok 61 - Should not have sorted changes
ok 62 - Should die on plan with bad name "+hi!"
ok 63 - Exception ident should be "plan"
ok 64 - And "+hi!" should trigger the appropriate message
ok 65 - Should not have sorted changes
ok 66 - Should die on plan with bad name "@hi!"
ok 67 - Exception ident should be "plan"
ok 68 - And "@hi!" should trigger the appropriate message
ok 69 - Should not have sorted changes
ok 70 - Should die on plan with bad name "+foo@bar"
ok 71 - Exception ident should be "plan"
ok 72 - And "+foo@bar" should trigger the appropriate message
ok 73 - Should not have sorted changes
ok 74 - Should die on plan with bad name "@foo@bar"
ok 75 - Exception ident should be "plan"
ok 76 - And "@foo@bar" should trigger the appropriate message
ok 77 - Should not have sorted changes
ok 78 - Should die on plan with bad name "+foo:bar"
ok 79 - Exception ident should be "plan"
ok 80 - And "+foo:bar" should trigger the appropriate message
ok 81 - Should not have sorted changes
ok 82 - Should die on plan with bad name "@foo:bar"
ok 83 - Exception ident should be "plan"
ok 84 - And "@foo:bar" should trigger the appropriate message
ok 85 - Should not have sorted changes
ok 86 - Should die on plan with bad name "++foo"
ok 87 - Exception ident should be "plan"
ok 88 - And "++foo" should trigger the appropriate message
ok 89 - Should not have sorted changes
ok 90 - Should die on plan with bad name "@+foo"
ok 91 - Exception ident should be "plan"
ok 92 - And "@+foo" should trigger the appropriate message
ok 93 - Should not have sorted changes
ok 94 - Should die on plan with bad name "+-foo"
ok 95 - Exception ident should be "plan"
ok 96 - And "+-foo" should trigger the appropriate message
ok 97 - Should not have sorted changes
ok 98 - Should die on plan with bad name "@-foo"
ok 99 - Exception ident should be "plan"
ok 100 - And "@-foo" should trigger the appropriate message
ok 101 - Should not have sorted changes
ok 102 - Should die on plan with bad name "+@foo"
ok 103 - Exception ident should be "plan"
ok 104 - And "+@foo" should trigger the appropriate message
ok 105 - Should not have sorted changes
ok 106 - Should die on plan with bad name "@@foo"
ok 107 - Exception ident should be "plan"
ok 108 - And "@@foo" should trigger the appropriate message
ok 109 - Should not have sorted changes
ok 110 - Should parse "foo"
ok 111 - Should have captured the foo pragmas
ok 112 - Should have pragmas in plan with change "foo"
ok 113 - Should parse "@foo"
ok 114 - Should have pragmas in plan with tag "foo"
ok 115 - Should have line and change for "@foo"
ok 116 - Should parse "12"
ok 117 - Should have captured the 12 pragmas
ok 118 - Should have pragmas in plan with change "12"
ok 119 - Should parse "@12"
ok 120 - Should have pragmas in plan with tag "12"
ok 121 - Should have line and change for "@12"
ok 122 - Should parse "t"
ok 123 - Should have captured the t pragmas
ok 124 - Should have pragmas in plan with change "t"
ok 125 - Should parse "@t"
ok 126 - Should have pragmas in plan with tag "t"
ok 127 - Should have line and change for "@t"
ok 128 - Should parse "6"
ok 129 - Should have captured the 6 pragmas
ok 130 - Should have pragmas in plan with change "6"
ok 131 - Should parse "@6"
ok 132 - Should have pragmas in plan with tag "6"
ok 133 - Should have line and change for "@6"
ok 134 - Should parse "阱阪阬"
ok 135 - Should have captured the 阱阪阬 pragmas
ok 136 - Should have pragmas in plan with change "阱阪阬"
ok 137 - Should parse "@阱阪阬"
ok 138 - Should have pragmas in plan with tag "阱阪阬"
ok 139 - Should have line and change for "@阱阪阬"
ok 140 - Should parse "foo/bar"
ok 141 - Should have captured the foo/bar pragmas
ok 142 - Should have pragmas in plan with change "foo/bar"
ok 143 - Should parse "@foo/bar"
ok 144 - Should have pragmas in plan with tag "foo/bar"
ok 145 - Should have line and change for "@foo/bar"
ok 146 - Should parse "beta1"
ok 147 - Should have captured the beta1 pragmas
ok 148 - Should have pragmas in plan with change "beta1"
ok 149 - Should parse "@beta1"
ok 150 - Should have pragmas in plan with tag "beta1"
ok 151 - Should have line and change for "@beta1"
ok 152 - Should parse "foo_"
ok 153 - Should have captured the foo_ pragmas
ok 154 - Should have pragmas in plan with change "foo_"
ok 155 - Should parse "@foo_"
ok 156 - Should have pragmas in plan with tag "foo_"
ok 157 - Should have line and change for "@foo_"
ok 158 - Should parse "_foo"
ok 159 - Should have captured the _foo pragmas
ok 160 - Should have pragmas in plan with change "_foo"
ok 161 - Should parse "@_foo"
ok 162 - Should have pragmas in plan with tag "_foo"
ok 163 - Should have line and change for "@_foo"
ok 164 - Should parse "v1.0-1b"
ok 165 - Should have captured the v1.0-1b pragmas
ok 166 - Should have pragmas in plan with change "v1.0-1b"
ok 167 - Should parse "@v1.0-1b"
ok 168 - Should have pragmas in plan with tag "v1.0-1b"
ok 169 - Should have line and change for "@v1.0-1b"
ok 170 - Should parse "v1.2-1"
ok 171 - Should have captured the v1.2-1 pragmas
ok 172 - Should have pragmas in plan with change "v1.2-1"
ok 173 - Should parse "@v1.2-1"
ok 174 - Should have pragmas in plan with tag "v1.2-1"
ok 175 - Should have line and change for "@v1.2-1"
ok 176 - Should parse "v1.2+1"
ok 177 - Should have captured the v1.2+1 pragmas
ok 178 - Should have pragmas in plan with change "v1.2+1"
ok 179 - Should parse "@v1.2+1"
ok 180 - Should have pragmas in plan with tag "v1.2+1"
ok 181 - Should have line and change for "@v1.2+1"
ok 182 - Should parse "v1.2_1"
ok 183 - Should have captured the v1.2_1 pragmas
ok 184 - Should have pragmas in plan with change "v1.2_1"
ok 185 - Should parse "@v1.2_1"
ok 186 - Should have pragmas in plan with tag "v1.2_1"
ok 187 - Should have line and change for "@v1.2_1"
ok 188 - Should have sorted changes 18 times
ok 189 - Should die on plan with reserved tag "@HEAD"
ok 190 - @HEAD exception should have ident "plan"
ok 191 - And the @HEAD error message should be correct
ok 192 - Should have sorted changes once
ok 193 - Should die on plan with reserved tag "@ROOT"
ok 194 - @ROOT exception should have ident "plan"
ok 195 - And the @ROOT error message should be correct
ok 196 - Should have sorted @ROOT changes nonce
ok 197 - Should die on plan with reserved tag "@FIRST"
ok 198 - @FIRST exception should have ident "plan"
ok 199 - And the @FIRST error message should be correct
ok 200 - Should have sorted @FIRST changes nonce
ok 201 - Should die on plan with reserved tag "@LAST"
ok 202 - @LAST exception should have ident "plan"
ok 203 - And the @LAST error message should be correct
ok 204 - Should have sorted @LAST changes nonce
ok 205 - Should die on plan with SHA1 change name
ok 206 - The SHA1 error ident should be "plan"
ok 207 - And the SHA1 error message should be correct
ok 208 - Should have sorted changes nonce
ok 209 - Should die on plan with tag but no preceding change
ok 210 - The missing change error ident should be "plan"
ok 211 - And the missing change error message should be correct
ok 212 - Should have sorted changes nonce
ok 213 - Should die on plan with dupe tag
ok 214 - The dupe tag error ident should be "plan"
ok 215 - And the missing change error message should be correct
ok 216 - Should have sorted changes twice
ok 217 - Should die on plan with dupe change
ok 218 - The dupe change error ident should be "plan"
ok 219 - And the dupe change error message should be correct
ok 220 - Should have sorted changes once
ok 221 - Should die on invalid dependency
ok 222 - The invalid dependency error ident should be "plan"
ok 223 - And the invalid dependency error message should be correct
ok 224 - Should have sorted changes nonce
ok 225 - Should die on change with no timestamp
ok 226 - The missing timestamp error ident should be "plan"
ok 227 - And the missing timestamp error message should be correct
ok 228 - Should have sorted changes nonce
ok 229 - Should die on change with no planner
ok 230 - The missing planner error ident should be "plan"
ok 231 - And the missing planner error message should be correct
ok 232 - Should have sorted changes nonce
ok 233 - Should die on change with no timestamp or planner
ok 234 - The missing timestamp or planner error ident should be "plan"
ok 235 - And the missing timestamp or planner error message should be correct
ok 236 - Should have sorted changes nonce
ok 237 - Should parse plan with pragmas"
ok 238 - Should have sorted changes once
ok 239 - Should have captured all of the pragmas
ok 240 - Should have "multi.plan" lines and changes
ok 241 - Should parse plan with deploy and revert operators
ok 242 - Should have sorted changes twice
ok 243 - Should have captured the deploy-and-revert pragmas
ok 244 - Should have "deploy-and-revert.plan" lines and changes
ok 245 - Should get exception for nonexistent plan file
ok 246 - Nonexistent plan file ident should be "plan"
ok 247 - Nonexistent plan file message should be correct
ok 248 - Plan with sqitch with plan file with dependencies isa App::Sqitch::Plan
ok 249 - Load plan with dependencies file
ok 250 - The changes should include the dependencies
ok 251 - Should have sorted changes twice
ok 252 - Plan with sqitch with plan file with project deps isa App::Sqitch::Plan
ok 253 - Load plan with project deps file
ok 254 - The changes should include the cross-project deps
ok 255 - Should have sorted changes twice
ok 256 - Plan with sqitch with plan with tag dependencies isa App::Sqitch::Plan
ok 257 - Should get an exception for tag with dependencies
ok 258 - The tag dependencies error ident should be "plan"
ok 259 - And the tag dependencies error message should be correct
ok 260 - Plan with sqitch with plan file isa App::Sqitch::Plan
ok 261 - Lines should be parsed from file
ok 262 - Changes should be parsed from file
ok 263 - Should get all tags from tags()
ok 264 - Should have sorted changes twice
ok 265 - Load should parse plan from file
ok 266 - Should have captured the multi pragmas
ok 267 - And the parsed file should have lines and changes
ok 268 - Should have sorted changes twice
ok 269 - App::Sqitch::Plan->can(...)
ok 270 - Position should start at -1
ok 271 - Current should be undef
ok 272 - Get next change
ok 273 - First change isa App::Sqitch::Plan::Change
ok 274 - It should be the first change
ok 275 - Position should be at 0
ok 276 - Count should be 4
ok 277 - Current should be current
ok 278 - Should get first change from change_at(0)
ok 279 - Peek to next change
ok 280 - Peeked change isa App::Sqitch::Plan::Change
ok 281 - Peeked change should be second change
ok 282 - last() should return last change
ok 283 - Current should still be current
ok 284 - Peek should still be next
ok 285 - Next should be the second change
ok 286 - Position should be at 1
ok 287 - Should get second change from change_at(1)
ok 288 - Peek should return an object
ok 289 - Third change isa App::Sqitch::Plan::Change
ok 290 - It should be the foo tag
ok 291 - Current should be the second change
ok 292 - Should get third change next
ok 293 - Position should be at 2
ok 294 - Current should be third change
ok 295 - Should get third change from change_at(1)
ok 296 - Get fourth change
ok 297 - Fourth change isa App::Sqitch::Plan::Change
ok 298 - Fourth change should be "hey-there"
ok 299 - Position should be at 3
ok 300 - Peek should return undef
ok 301 - Next should return undef
ok 302 - Position should be at 7
ok 303 - Next should still return undef
ok 304 - Position should still be at 7
ok 305 - Reset the plan
ok 306 - Position should be back at -1
ok 307 - Current should still be undef
ok 308 - Next should return the first change again
ok 309 - Position should be at 0 again
ok 310 - Current should be first change
ok 311 - Index of change should be 0
ok 312 - Should be able to get change 0 by name
ok 313 - Should be able to find change 0 by name
ok 314 - Should be able to get change 0 by ID
ok 315 - Should be able to find change 0 by ID
ok 316 - Index of @bar should be 3
ok 317 - Should be able to get hey-there via @bar
ok 318 - Should be able to get hey-there via @bar ID
ok 319 - Should be able to find hey-there via @bar
ok 320 - Should be able to find hey-there via @bar ID
ok 321 - Seek to the "@bar" change
ok 322 - Position should be at 3 again
ok 323 - Current should be fourth again
ok 324 - Index of you should be 1
ok 325 - Should be able to get change 1 by name
ok 326 - Should be able to find change 1 by name
ok 327 - Seek to the "you" change
ok 328 - Position should be at 1 again
ok 329 - Current should be second again
ok 330 - Index of baz should be undef
ok 331 - Index of @baz should be 3
ok 332 - Seek to the "baz" change
ok 333 - Position should be at 3 again
ok 334 - Current should be fourth again
ok 335 - Should still get first change from change_at(0)
ok 336 - Should still get second change from change_at(1)
ok 337 - Should still get third change from change_at(1)
ok 338 - Should die seeking invalid change
ok 339 - Invalid seek change error ident should be "plan"
ok 340 - And the failure message should be correct
ok 341 - All should return all changes
ok 342 - Reset the plan again
ok 343 - Change hey should be passed to do sub
ok 344 - Change hey should be the topic in do sub
ok 345 - Change you should be passed to do sub
ok 346 - Change you should be the topic in do sub
ok 347 - Change this/rocks should be passed to do sub
ok 348 - Change this/rocks should be the topic in do sub
ok 349 - Change hey-there should be passed to do sub
ok 350 - Change hey-there should be the topic in do sub
ok 351 - App::Sqitch::Plan->can('write_to')
ok 352 - plan.out does not exist
ok 353 - Write out the file
ok 354 - plan.out exists
ok 355 - The contents should look right
ok 356 - Write out the file from "this/rocks"
ok 357 - Plan should have been written from "this/rocks" through tags at end
ok 358 - Write the file up to "you"
ok 359 - Plan should have been written through "you" and its tags
ok 360 - Write from "@foo" to "this/rocks"
ok 361 - Plan should have been written from "@foo" to "this/rocks"
ok 362 - Write from "hey" to "@foo"
ok 363 - Plan should have been written from "hey" through "@foo"
ok 364 - App::Sqitch::Plan->can('_is_valid')
ok 365 - Should find "^foo" invalid
ok 366 - Invalid name "^foo" error ident should be "plan"
ok 367 - And the "^foo" error message should be correct
ok 368 - Should find "foo^" invalid
ok 369 - Invalid name "foo^" error ident should be "plan"
ok 370 - And the "foo^" error message should be correct
ok 371 - Should find "foo^6" invalid
ok 372 - Invalid name "foo^6" error ident should be "plan"
ok 373 - And the "foo^6" error message should be correct
ok 374 - Should find "foo^666" invalid
ok 375 - Invalid name "foo^666" error ident should be "plan"
ok 376 - And the "foo^666" error message should be correct
ok 377 - Should find "%hi" invalid
ok 378 - Invalid name "%hi" error ident should be "plan"
ok 379 - And the "%hi" error message should be correct
ok 380 - Should find "hi!" invalid
ok 381 - Invalid name "hi!" error ident should be "plan"
ok 382 - And the "hi!" error message should be correct
ok 383 - Should find "foo@bar" invalid
ok 384 - Invalid name "foo@bar" error ident should be "plan"
ok 385 - And the "foo@bar" error message should be correct
ok 386 - Should find "foo:bar" invalid
ok 387 - Invalid name "foo:bar" error ident should be "plan"
ok 388 - And the "foo:bar" error message should be correct
ok 389 - Should find "+foo" invalid
ok 390 - Invalid name "+foo" error ident should be "plan"
ok 391 - And the "+foo" error message should be correct
ok 392 - Should find "-foo" invalid
ok 393 - Invalid name "-foo" error ident should be "plan"
ok 394 - And the "-foo" error message should be correct
ok 395 - Should find "@foo" invalid
ok 396 - Invalid name "@foo" error ident should be "plan"
ok 397 - And the "@foo" error message should be correct
ok 398 - Name "foo" sould be valid
ok 399 - Name "12" sould be valid
ok 400 - Name "t" sould be valid
ok 401 - Name "6" sould be valid
ok 402 - Name "阱阪阬" sould be valid
ok 403 - Name "foo/bar" sould be valid
ok 404 - Name "beta1" sould be valid
ok 405 - Name "v1.2-1" sould be valid
ok 406 - Name "v1.2+1" sould be valid
ok 407 - Name "v1.2_1" sould be valid
ok 408 - Add tag "w00t"
ok 409 - Should have 4 changes
ok 410 - Should find "@w00t at index 3
ok 411 - Last change should be "hey-there"
ok 412 - The w00t tag should be on the last change
ok 413 - The object isa App::Sqitch::Plan::Tag
ok 414 - The returned tag should be @w00t
ok 415 - The @w00t change should be the last change
ok 416 - Write out the file again
ok 417 - The contents should include the "w00t" tag
ok 418 - Add tag "@alpha"
ok 419 - Should find "@alpha at index 3
ok 420 - The returned tag should be @alpha
ok 421 - The @alpha change should be the last change
ok 422 - Should get error trying to add duplicate tag
ok 423 - Duplicate tag error ident should be "plan"
ok 424 - And the error message should report it as a dupe
ok 425 - Should get error for invalid tag "^foo"
ok 426 - Invalid name "^foo" error ident should be "plan"
ok 427 - And the "^foo" error message should be correct
ok 428 - Should get error for invalid tag "foo^"
ok 429 - Invalid name "foo^" error ident should be "plan"
ok 430 - And the "foo^" error message should be correct
ok 431 - Should get error for invalid tag "foo^6"
ok 432 - Invalid name "foo^6" error ident should be "plan"
ok 433 - And the "foo^6" error message should be correct
ok 434 - Should get error for invalid tag "foo^666"
ok 435 - Invalid name "foo^666" error ident should be "plan"
ok 436 - And the "foo^666" error message should be correct
ok 437 - Should get error for invalid tag "%hi"
ok 438 - Invalid name "%hi" error ident should be "plan"
ok 439 - And the "%hi" error message should be correct
ok 440 - Should get error for invalid tag "hi!"
ok 441 - Invalid name "hi!" error ident should be "plan"
ok 442 - And the "hi!" error message should be correct
ok 443 - Should get error for invalid tag "foo@bar"
ok 444 - Invalid name "foo@bar" error ident should be "plan"
ok 445 - And the "foo@bar" error message should be correct
ok 446 - Should get error for invalid tag "foo:bar"
ok 447 - Invalid name "foo:bar" error ident should be "plan"
ok 448 - And the "foo:bar" error message should be correct
ok 449 - Should get error for invalid tag "+foo"
ok 450 - Invalid name "+foo" error ident should be "plan"
ok 451 - And the "+foo" error message should be correct
ok 452 - Should get error for invalid tag "-foo"
ok 453 - Invalid name "-foo" error ident should be "plan"
ok 454 - And the "-foo" error message should be correct
ok 455 - Should get error for invalid tag "foo\#bar"
ok 456 - Invalid name "foo\#bar" error ident should be "plan"
ok 457 - And the "foo\#bar" error message should be correct
ok 458 - Should get error for reserved tag "HEAD"
ok 459 - Reserved tag "HEAD" error ident should be "plan"
ok 460 - And the reserved tag "HEAD" message should be correct
ok 461 - Should get error for reserved tag "ROOT"
ok 462 - Reserved tag "ROOT" error ident should be "plan"
ok 463 - And the reserved tag "ROOT" message should be correct
ok 464 - Should get error for reserved tag "FIRST"
ok 465 - Reserved tag "FIRST" error ident should be "plan"
ok 466 - And the reserved tag "FIRST" message should be correct
ok 467 - Should get error for reserved tag "LAST"
ok 468 - Reserved tag "LAST" error ident should be "plan"
ok 469 - And the reserved tag "LAST" message should be correct
ok 470 - Should get error for a SHA1 tag
ok 471 - SHA1 tag error ident should be "plan"
ok 472 - And the reserved name error should be output
ok 473 - Add change "booyah"
ok 474 - Should have 5 changes
ok 475 - Should find "booyah at index 4
ok 476 - Last change should be "booyah"
ok 477 - The object isa App::Sqitch::Plan::Change
ok 478 - Should have plain stringification of "booya"
ok 479 - Write out the file again
ok 480 - The contents should include the "booyah" change
ok 481 - Add change "blow"
ok 482 - Should have 6 changes
ok 483 - Should find "blow" at index 5
ok 484 - Last change should be "blow"
ok 485 - Should have nice stringification of "blow [booyah]"
ok 486 - The new change should have been appended to the lines, too
ok 487 - Add change "jive" with dupe dependency
ok 488 - Should have 7 changes
ok 489 - Should find "jive" at index 6
ok 490 - jive change should be "jive"
ok 491 - Should have dependency "blow"
ok 492 - Should have nice stringification of "jive [blow]"
ok 493 - The new change should have been appended to the lines, too
ok 494 - Add change "moo" with dupe dependencies
ok 495 - Should have 8 changes
ok 496 - Should find "moo" at index 7
ok 497 - moo change should be "moo"
ok 498 - Should require "ext:whu"
ok 499 - Should conflict with "blow" and "ext:whu"
ok 500 - Should have nice stringification of "moo [ext:foo !blow !ext:whu]"
ok 501 - The new change should have been appended to the lines, too
ok 502 - Should get error trying to add duplicate change
ok 503 - Duplicate change error ident should be "plan"
ok 504 - And the error message should suggest "rework"
ok 505 - Should get error for invalid change "^foo"
ok 506 - Invalid name "^foo" error ident should be "plan"
ok 507 - And the "^foo" error message should be correct
ok 508 - Should get error for invalid change "foo^"
ok 509 - Invalid name "foo^" error ident should be "plan"
ok 510 - And the "foo^" error message should be correct
ok 511 - Should get error for invalid change "foo^6"
ok 512 - Invalid name "foo^6" error ident should be "plan"
ok 513 - And the "foo^6" error message should be correct
ok 514 - Should get error for invalid change "foo^666"
ok 515 - Invalid name "foo^666" error ident should be "plan"
ok 516 - And the "foo^666" error message should be correct
ok 517 - Should get error for invalid change "%hi"
ok 518 - Invalid name "%hi" error ident should be "plan"
ok 519 - And the "%hi" error message should be correct
ok 520 - Should get error for invalid change "hi!"
ok 521 - Invalid name "hi!" error ident should be "plan"
ok 522 - And the "hi!" error message should be correct
ok 523 - Should get error for invalid change "foo@bar"
ok 524 - Invalid name "foo@bar" error ident should be "plan"
ok 525 - And the "foo@bar" error message should be correct
ok 526 - Should get error for invalid change "foo:bar"
ok 527 - Invalid name "foo:bar" error ident should be "plan"
ok 528 - And the "foo:bar" error message should be correct
ok 529 - Should get error for invalid change "+foo"
ok 530 - Invalid name "+foo" error ident should be "plan"
ok 531 - And the "+foo" error message should be correct
ok 532 - Should get error for invalid change "-foo"
ok 533 - Invalid name "-foo" error ident should be "plan"
ok 534 - And the "-foo" error message should be correct
ok 535 - Should get error for invalid change "@foo"
ok 536 - Invalid name "@foo" error ident should be "plan"
ok 537 - And the "@foo" error message should be correct
ok 538 - Should get error for reserved name "HEAD"
ok 539 - Reserved name "HEAD" error ident should be "plan"
ok 540 - And the reserved name "HEAD" message should be correct
ok 541 - Should get error for reserved name "ROOT"
ok 542 - Reserved name "ROOT" error ident should be "plan"
ok 543 - And the reserved name "ROOT" message should be correct
ok 544 - Should get error for reserved name "FIRST"
ok 545 - Reserved name "FIRST" error ident should be "plan"
ok 546 - And the reserved name "FIRST" message should be correct
ok 547 - Should get error for reserved name "LAST"
ok 548 - Reserved name "LAST" error ident should be "plan"
ok 549 - And the reserved name "LAST" message should be correct
ok 550 - Should get failure for failed dependency
ok 551 - Dependency error ident should be "plan"
ok 552 - The dependency error should be correct
ok 553 - Should get failure for invalid dependency
ok 554 - Invalid dependency error ident should be "plan"
ok 555 - The invalid dependency error should be correct
ok 556 - Should get failure for invalid conflict
ok 557 - Invalid conflict error ident should be "plan"
ok 558 - The invalid conflict error should be correct
ok 559 - Should get failure for failed tag dependency
ok 560 - Tag dependency error ident should be "plan"
ok 561 - The tag dependency error should be correct
ok 562 - Should get error for a SHA1 change
ok 563 - SHA1 tag error ident should be "plan"
ok 564 - And the reserved name error should be output
ok 565 - Rework change "you"
ok 566 - The object isa App::Sqitch::Plan::Change
ok 567 - Reworked change should be "you"
ok 568 - Get original "you" change
ok 569 - It should also be named "you"
ok 570 - And it should have the one rework tag
ok 571 - The original file should now be named you@bar.sql
ok 572 - App::Sqitch::Plan->can('rework')
ok 573 - It should require the previous "you" change
ok 574 - The new "you" should have been appended to the lines, too
ok 575 - It should be at position 8
ok 576 - The plan count should be 9
ok 577 - Tag @beta1
ok 578 - Rework change "you" again
ok 579 - The object isa App::Sqitch::Plan::Change
ok 580 - New reworked change should be "you"
ok 581 - Get original "you" change again
ok 582 - It should still be named "you"
ok 583 - And it should have the one rework tag
ok 584 - Get you@beta1
ok 585 - The second "you" should be named that
ok 586 - And the second change should have the rework_tag "@beta1"
ok 587 - But the new reworked change should have no rework tags
ok 588 - It should require the previous "you" change
ok 589 - The new reworking should have been appended to the lines
ok 590 - It should be at position 9
ok 591 - The plan count should be 10
ok 592 - rework should die on nonexistent change
ok 593 - Nonexistent change error ident should be "plan"
ok 594 - And the error should suggest "sqitch add"
ok 595 - rework_stpe should die on lack of intervening tag
ok 596 - Missing tag error ident should be "plan"
ok 597 - And the error should suggest "sqitch tag"
ok 598 - rework should die on failed dependency
ok 599 - Rework dependency error ident should be "plan"
ok 600 - The rework dependency error should be correct
ok 601 - Should get failure for invalid dependency
ok 602 - Invalid dependency error ident should be "plan"
ok 603 - The invalid dependency error should be correct
ok 604 - Should get failure for invalid conflict
ok 605 - Invalid conflict error ident should be "plan"
ok 606 - The invalid conflict error should be correct
ok 607 - Plan shoud work plan with dupe change across tags isa App::Sqitch::Plan
ok 608 - Project name should be set
ok 609 - Lines with dupe change should be read from file
ok 610 - Noes with dupe change should be read from file
ok 611 - Should have sorted changes three times
ok 612 - Should get an error trying to find dupe key.
ok 613 - Dupe key error ident should be "plan"
ok 614 - Dupe key error message should be correct
ok 615 - Should get 3 for whatever@HEAD
ok 616 - Should get 0 for whatever@bar
ok 617 - Should get an error seeking dupe key.
ok 618 - Dupe key error ident should be "plan"
ok 619 - Dupe key error message should be correct
ok 620 - Should find whatever@HEAD at index 3
ok 621 - Should find whatever@HEAD at index 0
ok 622 - Should find first instance of whatever at index 0
ok 623 - Should find first instance of whatever after @bar at index 5
ok 624 - Seek whatever@HEAD
ok 625 - Position should be 3
ok 626 - Seek whatever@bar
ok 627 - Position should be 0
ok 628 - Last tagged change should be "hi"
ok 629 - App::Sqitch::Plan->can('open_script')
ok 630 - Open bar.sql
ok 631 - It should be the right file
ok 632 - Open baz.sql
ok 633 - It should be empty
ok 634 - App::Sqitch::Plan->can('check_changes')
ok 635 - Should get original order when no dependencies
ok 636 - Should get original order when no prepreqs
ok 637 - Should get original order when that requires this
ok 638 - Should get original order when other requires that
ok 639 - Should get error for out-of-order dependency
ok 640 - Unordered dependency error ident should be "plan"
ok 641 - And the unordered dependency error message should be correct
ok 642 - Should get error for multiple dependency errors
ok 643 - Multiple dependency error ident should be "plan"
ok 644 - And the multiple dependency error message should be correct
ok 645 - Should get original order when requiring a tag
ok 646 - Should get original order when requiring a step as-of a tag
ok 647 - Should get failure for a step after a tag
ok 648 - Step after tag error ident should be "plan"
ok 649 - And we the unknown change as-of a tag message should be correct
ok 650 - Should get failure for a cycle
ok 651 - Cycle error ident should be "plan"
ok 652 - The cycle error message should be correct
ok 653 - Should get failure for a two-hop cycle
ok 654 - Two-hope cycle error ident should be "plan"
ok 655 - The two-hop cycle error message should be correct
ok 656 - Should get original order with earlier dependency
ok 657 - Should get error with misordered and seen dependencies
ok 658 - Misorderd and seen error ident should be "plan"
ok 659 - And the misordered and seen error message should be correct
ok 660 - Should die on unknown dependency
ok 661 - Unknown dependency error ident should be "plan"
ok 662 - And the error should point to the offending change
ok 663 - Should die on unknown tag dependency
ok 664 - Unknown tag dependency error ident should be "plan"
ok 665 - And the error should point to the offending change
ok 666 - Should get original order with external dependency
ok 667 - Should die on self dependency
ok 668 - Self dependency error ident should be "plan"
ok 669 - And the self dependency error should be correct
ok 670 - Should get original order with cascading dependencies
ok 671 - Should get original order with multiple cascading dependencies
ok 672 - App::Sqitch::Plan->can('_check_dependencies')
ok 673 - Depend "hi" should be in project "dupe_change_diff_tag"
ok 674 - Dependency on "hi" should succeed
ok 675 - Depend "greets" should be in project "dupe_change_diff_tag"
ok 676 - Dependency on "greets" should succeed
ok 677 - Depend "whatever" should be in project "dupe_change_diff_tag"
ok 678 - Dependency on "whatever" should succeed
ok 679 - Depend "@foo" should be in project "dupe_change_diff_tag"
ok 680 - Dependency on "@foo" should succeed
ok 681 - Depend "whatever@foo" should be in project "dupe_change_diff_tag"
ok 682 - Dependency on "whatever@foo" should succeed
ok 683 - Depend "ext:larry" should be in project "ext"
ok 684 - Dependency on "ext:larry" should succeed
ok 685 - Depend "ext:greets" should be in project "ext"
ok 686 - Dependency on "ext:greets" should succeed
ok 687 - Should get error trying to depend on "wanker"
ok 688 - Dependency "req" error ident should be "plan"
ok 689 - And should get unknown dependency message for "wanker"
ok 690 - Should get error trying to depend on "@blah"
ok 691 - Dependency "req" error ident should be "plan"
ok 692 - And should get unknown dependency message for "@blah"
ok 693 - Should get error trying to depend on "greets@foo"
ok 694 - Dependency "req" error ident should be "plan"
ok 695 - And should get unknown dependency message for "greets@foo"
ok 696 - Should have undef URI when no pragma
ok 697 - Plan with sqitch with plan file with dependencies isa App::Sqitch::Plan
ok 698 - syntax_version should be set
ok 699 - Project should be set
ok 700 - Should have URI from pragma
ok 701 - It isa URI
ok 702 - Should die on plan with no project pragma
ok 703 - Missing prorject error ident should be "plan"
ok 704 - The missing project error message should be correct
ok 705 - Should die on invalid project name "^foo"
ok 706 - Ident for bad proj "^foo" should be "plan"
ok 707 - Error message for bad project "^foo" should be correct
ok 708 - Should die on invalid project name "foo^"
ok 709 - Ident for bad proj "foo^" should be "plan"
ok 710 - Error message for bad project "foo^" should be correct
ok 711 - Should die on invalid project name "foo^6"
ok 712 - Ident for bad proj "foo^6" should be "plan"
ok 713 - Error message for bad project "foo^6" should be correct
ok 714 - Should die on invalid project name "foo^666"
ok 715 - Ident for bad proj "foo^666" should be "plan"
ok 716 - Error message for bad project "foo^666" should be correct
ok 717 - Should die on invalid project name "%hi"
ok 718 - Ident for bad proj "%hi" should be "plan"
ok 719 - Error message for bad project "%hi" should be correct
ok 720 - Should die on invalid project name "hi!"
ok 721 - Ident for bad proj "hi!" should be "plan"
ok 722 - Error message for bad project "hi!" should be correct
ok 723 - Should die on invalid project name "foo@bar"
ok 724 - Ident for bad proj "foo@bar" should be "plan"
ok 725 - Error message for bad project "foo@bar" should be correct
ok 726 - Should die on invalid project name "foo:bar"
ok 727 - Ident for bad proj "foo:bar" should be "plan"
ok 728 - Error message for bad project "foo:bar" should be correct
ok 729 - Should die on invalid project name "+foo"
ok 730 - Ident for bad proj "+foo" should be "plan"
ok 731 - Error message for bad project "+foo" should be correct
ok 732 - Should die on invalid project name "-foo"
ok 733 - Ident for bad proj "-foo" should be "plan"
ok 734 - Error message for bad project "-foo" should be correct
ok 735 - Should die on invalid project name "@foo"
ok 736 - Ident for bad proj "@foo" should be "plan"
ok 737 - Error message for bad project "@foo" should be correct
1..737
ok
t/pod-coverage.t ...
1..31
ok 1 - Pod coverage on App::Sqitch
ok 2 - Pod coverage on App::Sqitch::Command
ok 3 - Pod coverage on App::Sqitch::Config
ok 4 - Pod coverage on App::Sqitch::DateTime
ok 5 - Pod coverage on App::Sqitch::Engine
ok 6 - Pod coverage on App::Sqitch::Plan
ok 7 - Pod coverage on App::Sqitch::X
ok 8 - Pod coverage on App::Sqitch::Command::add
ok 9 - Pod coverage on App::Sqitch::Command::bundle
ok 10 - Pod coverage on App::Sqitch::Command::config
ok 11 - Pod coverage on App::Sqitch::Command::deploy
ok 12 - Pod coverage on App::Sqitch::Command::help
ok 13 - Pod coverage on App::Sqitch::Command::init
ok 14 - Pod coverage on App::Sqitch::Command::log
ok 15 - Pod coverage on App::Sqitch::Command::rebase
ok 16 - Pod coverage on App::Sqitch::Command::revert
ok 17 - Pod coverage on App::Sqitch::Command::rework
ok 18 - Pod coverage on App::Sqitch::Command::show
ok 19 - Pod coverage on App::Sqitch::Command::status
ok 20 - Pod coverage on App::Sqitch::Command::tag
ok 21 - Pod coverage on App::Sqitch::Command::verify
ok 22 - Pod coverage on App::Sqitch::Engine::pg
ok 23 - Pod coverage on App::Sqitch::Engine::sqlite
ok 24 - Pod coverage on App::Sqitch::Plan::Blank
ok 25 - Pod coverage on App::Sqitch::Plan::Change
ok 26 - Pod coverage on App::Sqitch::Plan::ChangeList
ok 27 - Pod coverage on App::Sqitch::Plan::Depend
ok 28 - Pod coverage on App::Sqitch::Plan::Line
ok 29 - Pod coverage on App::Sqitch::Plan::LineList
ok 30 - Pod coverage on App::Sqitch::Plan::Pragma
ok 31 - Pod coverage on App::Sqitch::Plan::Tag
ok
t/pod.t ............
1..64
ok 1 - POD test for blib/lib/sqitch-add-usage.pod
ok 2 - POD test for blib/lib/sqitch-add.pod
ok 3 - POD test for blib/lib/sqitch-bundle-usage.pod
ok 4 - POD test for blib/lib/sqitch-bundle.pod
ok 5 - POD test for blib/lib/sqitch-config-usage.pod
ok 6 - POD test for blib/lib/sqitch-config.pod
ok 7 - POD test for blib/lib/sqitch-deploy-usage.pod
ok 8 - POD test for blib/lib/sqitch-deploy.pod
ok 9 - POD test for blib/lib/sqitch-help-usage.pod
ok 10 - POD test for blib/lib/sqitch-help.pod
ok 11 - POD test for blib/lib/sqitch-init-usage.pod
ok 12 - POD test for blib/lib/sqitch-init.pod
ok 13 - POD test for blib/lib/sqitch-log-usage.pod
ok 14 - POD test for blib/lib/sqitch-log.pod
ok 15 - POD test for blib/lib/sqitch-rebase-usage.pod
ok 16 - POD test for blib/lib/sqitch-rebase.pod
ok 17 - POD test for blib/lib/sqitch-revert-usage.pod
ok 18 - POD test for blib/lib/sqitch-revert.pod
ok 19 - POD test for blib/lib/sqitch-rework-usage.pod
ok 20 - POD test for blib/lib/sqitch-rework.pod
ok 21 - POD test for blib/lib/sqitch-show-usage.pod
ok 22 - POD test for blib/lib/sqitch-show.pod
ok 23 - POD test for blib/lib/sqitch-status-usage.pod
ok 24 - POD test for blib/lib/sqitch-status.pod
ok 25 - POD test for blib/lib/sqitch-tag-usage.pod
ok 26 - POD test for blib/lib/sqitch-tag.pod
ok 27 - POD test for blib/lib/sqitch-verify-usage.pod
ok 28 - POD test for blib/lib/sqitch-verify.pod
ok 29 - POD test for blib/lib/sqitch.pod
ok 30 - POD test for blib/lib/sqitchchanges.pod
ok 31 - POD test for blib/lib/sqitchcommands.pod
ok 32 - POD test for blib/lib/sqitchtutorial.pod
ok 33 - POD test for blib/script/sqitch (no pod)
ok 34 - POD test for blib/lib/App/Sqitch.pm
ok 35 - POD test for blib/lib/App/Sqitch/Command.pm
ok 36 - POD test for blib/lib/App/Sqitch/Config.pm
ok 37 - POD test for blib/lib/App/Sqitch/DateTime.pm
ok 38 - POD test for blib/lib/App/Sqitch/Engine.pm
ok 39 - POD test for blib/lib/App/Sqitch/Plan.pm
ok 40 - POD test for blib/lib/App/Sqitch/X.pm
ok 41 - POD test for blib/lib/App/Sqitch/Command/add.pm
ok 42 - POD test for blib/lib/App/Sqitch/Command/bundle.pm
ok 43 - POD test for blib/lib/App/Sqitch/Command/config.pm
ok 44 - POD test for blib/lib/App/Sqitch/Command/deploy.pm
ok 45 - POD test for blib/lib/App/Sqitch/Command/help.pm
ok 46 - POD test for blib/lib/App/Sqitch/Command/init.pm
ok 47 - POD test for blib/lib/App/Sqitch/Command/log.pm
ok 48 - POD test for blib/lib/App/Sqitch/Command/rebase.pm
ok 49 - POD test for blib/lib/App/Sqitch/Command/revert.pm
ok 50 - POD test for blib/lib/App/Sqitch/Command/rework.pm
ok 51 - POD test for blib/lib/App/Sqitch/Command/show.pm
ok 52 - POD test for blib/lib/App/Sqitch/Command/status.pm
ok 53 - POD test for blib/lib/App/Sqitch/Command/tag.pm
ok 54 - POD test for blib/lib/App/Sqitch/Command/verify.pm
ok 55 - POD test for blib/lib/App/Sqitch/Engine/pg.pm
ok 56 - POD test for blib/lib/App/Sqitch/Engine/sqlite.pm
ok 57 - POD test for blib/lib/App/Sqitch/Plan/Blank.pm
ok 58 - POD test for blib/lib/App/Sqitch/Plan/Change.pm
ok 59 - POD test for blib/lib/App/Sqitch/Plan/ChangeList.pm
ok 60 - POD test for blib/lib/App/Sqitch/Plan/Depend.pm
ok 61 - POD test for blib/lib/App/Sqitch/Plan/Line.pm
ok 62 - POD test for blib/lib/App/Sqitch/Plan/LineList.pm
ok 63 - POD test for blib/lib/App/Sqitch/Plan/Pragma.pm
ok 64 - POD test for blib/lib/App/Sqitch/Plan/Tag.pm
ok
t/pragma.t .........
1..10
ok 1 - require App::Sqitch::Plan::Pragma;
ok 2 - App::Sqitch::Plan::Pragma->can(...)
ok 3 - The object isa App::Sqitch::Plan::Pragma
ok 4 - The object isa App::Sqitch::Plan::Line
ok 5 - Name should format as "%foo"
ok 6 - Value should format as ""
ok 7 - should stringify to "%foo"
ok 8 - Create pragma with more stuff
ok 9 - It should stringify correctly
ok 10 - no warnings
ok
t/rebase.t .........
ok 1 - require App::Sqitch::Command::rebase;
ok 2 - The class isa App::Sqitch::Command
ok 3 - App::Sqitch::Command::rebase->can(...)
ok 4 - Options should be correct
ok 5 - Should have empty default configuration with no config or opts
ok 6 - Should have set option
ok 7 - Should have mode, deploy_variables, verify, no_prompt, and log_only
ok 8 - Should have set_revert option and no_prompt false
ok 9 - set_deploy and set_revert should overrid set
ok 10 - set_deploy and set_revert should merge with set
ok 11 - set_revert should merge with set_deploy
ok 12 - Should have deploy configuration
ok 13 - Should have merged variables
ok 14 - Should have merged --set, deploy, rebase
ok 15 - The object isa App::Sqitch::Command::rebase
ok 16 - Should pick up deploy variables from configuration
ok 17 - Should pick up revert variables from configuration
ok 18 - Should have no_prompt true
ok 19 - Should havev false no_prompt and verify from rebase config
ok 20 - Should have no_prompt true from rebase and verify from deploy
ok 21 - Should have no_prompt false and mode all again
ok 22 - Should have no_prompt false for false config
ok 23 - Should have no_prompt true with -y
ok 24 - The object isa App::Sqitch::Command::rebase
ok 25 - onto_target should be undef
ok 26 - upto_target should be undef
ok 27 - Execute to "@alpha"
ok 28 - undef, "all", and 0 should be passed to the engine deploy
ok 29 - "@alpha" and 0 should be passed to the engine revert
ok 30 - Engine should prompt
ok 31 - Execute
ok 32 - undef, "all", and 0 should be passed to the engine deploy
ok 33 - undef and = should be passed to the engine revert
ok 34 - No vars should have been passed through to the engine
ok 35 - Object with to and variables isa App::Sqitch::Command::rebase
ok 36 - Execute again
ok 37 - Engine should be no_prompt
ok 38 - Engine should verify
ok 39 - "bar", "tag", and 1 should be passed to the engine deploy
ok 40 - "foo" and 1 should be passed to the engine revert
ok 41 - Variables should have been passed to the engine twice
ok 42 - The revert vars should have been passed first
ok 43 - The deploy vars should have been next
1..43
ok
t/revert.t .........
ok 1 - require App::Sqitch::Command::revert;
ok 2 - The class isa App::Sqitch::Command
ok 3 - App::Sqitch::Command::revert->can(...)
ok 4 - Options should be correct
ok 5 - Should have empty default configuration with no config or opts
ok 6 - Should have set option
ok 7 - Should have no_prompt false
ok 8 - Should have merged variables
ok 9 - Should have merged --set, deploy, revert
ok 10 - The object isa App::Sqitch::Command::revert
ok 11 - Should pick up variables from configuration
ok 12 - Should have no_prompt true
ok 13 - Should have no_prompt false again
ok 14 - Should have no_prompt false for false config
ok 15 - Should have no_prompt true with -y
ok 16 - The object isa App::Sqitch::Command::revert
ok 17 - to_target should be undef
ok 18 - Execute to "@alpha"
ok 19 - Engine should be no_prompt
ok 20 - "@alpha" and "all" should be passed to the engine
ok 21 - Execute
ok 22 - undef and "all" should be passed to the engine
ok 23 - No vars should have been passed through to the engine
ok 24 - Object with to and variables isa App::Sqitch::Command::revert
ok 25 - Execute again
ok 26 - Engine should not be no_prompt
ok 27 - "foo" and 1 should be passed to the engine
ok 28 - Vars should have been passed through to the engine
1..28
ok
t/rework.t .........
1..80
ok 1 - Load a sqitch sqitch object
ok 2 - rework command isa App::Sqitch::Command::rework
ok 3 - App::Sqitch::Command::rework->can(...)
ok 4 - Options should be set up
ok 5 - Should have default configuration with no config or opts
ok 6 - Should have get requires, conflicts, and note options
ok 7 - Requires should be an arrayref
ok 8 - Conflicts should be an arrayref
ok 9 - Note should be an arrayref
ok 10 - Should get an example for nonexistent change
ok 11 - Nonexistent change error ident should be "plan"
ok 12 - Fail message should say the step does not exist
ok 13 - Create another add with template_directory
ok 14 - sql/deploy/foo.sql does not exist
ok 15 - sql/revert/foo.sql does not exist
ok 16 - sql/verify/foo.sql does not exist
ok 17 - sql/deploy/foo.sql exists
ok 18 - sql/revert/foo.sql exists
ok 19 - sql/verify/foo.sql exists
ok 20 - Get the "foo" change
ok 21 - Should get an example for duplicate change
ok 22 - Duplicate change error ident should be "plan"
ok 23 - Fail message should say a tag is needed
ok 24 - Tag it
ok 25 - sql/deploy/foo@alpha.sql does not exist
ok 26 - sql/revert/foo@alpha.sql does not exist
ok 27 - sql/verify/foo@alpha.sql does not exist
ok 28 - Rework "foo"
ok 29 - sql/deploy/foo.sql exists
ok 30 - sql/revert/foo.sql exists
ok 31 - sql/verify/foo.sql exists
ok 32 - sql/deploy/foo@alpha.sql exists
ok 33 - sql/revert/foo@alpha.sql exists
ok 34 - sql/verify/foo@alpha.sql exists
ok 35 - sql/deploy/foo@alpha.sql and sql/deploy/foo.sql contents are the same
ok 36 - sql/verify/foo@alpha.sql and sql/verify/foo.sql contents are the same
ok 37 - sql/revert/foo.sql and sql/deploy/foo.sql contents are the same
ok 38 - New revert should revert
ok 39 - It should have prompted for a note
ok 40 - Reload the plan file
ok 41 - Get the steps
ok 42 - Should have two steps
ok 43 - First step should be "foo"
ok 44 - Second step should also be "foo"
ok 45 - Reworked step should require the previous step
ok 46 - And the info message should suggest editing the old files
ok 47 - Debug should show file copying
ok 48 - Create another add with template_directory
ok 49 - sql/deploy/bar.sql does not exist
ok 50 - sql/revert/bar.sql does not exist
ok 51 - sql/verify/bar.sql does not exist
ok 52 - sql/deploy/bar.sql exists
ok 53 - sql/revert/bar.sql does not exist
ok 54 - sql/verify/bar.sql does not exist
ok 55 - Tag it with @beta
ok 56 - rework command with requirements and conflicts isa App::Sqitch::Command::rework
ok 57 - sql/deploy/bar@beta.sql does not exist
ok 58 - sql/revert/bar@beta.sql does not exist
ok 59 - sql/verify/bar@beta.sql does not exist
ok 60 - Rework "bar"
ok 61 - sql/deploy/bar.sql exists
ok 62 - sql/revert/bar.sql does not exist
ok 63 - sql/verify/bar.sql does not exist
ok 64 - sql/deploy/bar@beta.sql exists
ok 65 - sql/revert/bar@beta.sql does not exist
ok 66 - sql/verify/bar@beta.sql does not exist
ok 67 - It should have prompted for a note
ok 68 - Reload the plan file again
ok 69 - Get the steps
ok 70 - Should have four steps
ok 71 - First step should be "foo"
ok 72 - Second step should also be "foo"
ok 73 - First step should be "bar"
ok 74 - Second step should also be "bar"
ok 75 - Requires should have been passed to reworked change
ok 76 - Conflicts should have been passed to reworked change
ok 77 - Note should have been passed as comment
ok 78 - And the info message should show only the one file to modify
ok 79 - Should have debug oputput for missing files
ok 80 - no warnings
ok
t/show.t ...........
ok 1 - require App::Sqitch::Command::show;
ok 2 - The class isa App::Sqitch::Command
ok 3 - App::Sqitch::Command::show->can('execute')
ok 4 - Options should be correct
ok 5 - The object isa App::Sqitch::Command::show
ok 6 - Get a change
ok 7 - Find change by id
ok 8 - The change info should have been emitted
ok 9 - Find change by name
ok 10 - The change info should have been emitted again
ok 11 - Should get an error for an unknown change
ok 12 - Unknown change error ident should be "show"
ok 13 - Should get proper error for unknown change
ok 14 - Find change by tag id
ok 15 - The change info should have been emitted
ok 16 - Find change by tag
ok 17 - The change info should have been emitted
ok 18 - Find tag by id
ok 19 - The tag info should have been emitted
ok 20 - Find tag by name
ok 21 - The tag info should have been emitted
ok 22 - Find tag by formatted name
ok 23 - The tag info should have been emitted
ok 24 - Should get errof for non-existent tag
ok 25 - Unknown tag error ident should be "show"
ok 26 - Should get proper error for unknown tag
ok 27 - Should get errof for non-existent tag ID
ok 28 - Unknown tag ID error ident should be "show"
ok 29 - Should get proper error for unknown tag ID
ok 30 - Show a deploy file
ok 31 - The deploy file should have been emitted
ok 32 - Show a revert file
ok 33 - The revert file should have been emitted
ok 34 - Should get error for nonexistent varify file
ok 35 - Nonexistent file error ident should be "show"
ok 36 - Should get proper error for nonexistent file
ok 37 - Should get usage for missing params
ok 38 - Nothing should have been passed to usage
ok 39 - Should get error for uknown type
ok 40 - Unknown type error ident should be "show"
ok 41 - Should get proper error for unknown type
1..41
ok
t/sqlite.t .........
1..13
ok 1 - require App::Sqitch::Engine::sqlite;
ok 2 - config_vars should return three vars
ok 3 - The object isa App::Sqitch::Engine::sqlite
ok 4 - client should default to sqlite3
ok 5 - db_name should be required
ok 6 - sqitch_prefix should default to "sqitch"
ok 7 - Create another sqlite
ok 8 - client should fall back on config
ok 9 - db_name should fall back on config
ok 10 - sqitch_prefix should fall back on config
ok 11 - Create sqlite with sqitch with --client and --db-name
ok 12 - The client should be grabbed from sqitch
ok 13 - The db_name should be grabbed from sqitch
ok
t/status.t .........
1..91
ok 1 - require App::Sqitch::Command::status;
ok 2 - Load a sqitch object
ok 3 - status command isa App::Sqitch::Command::status
ok 4 - App::Sqitch::Command::status->can(...)
ok 5 - Options should be correct
ok 6 - Should have error for uninitialized database
ok 7 - Uninitialized database error ident should be "status"
ok 8 - Uninitialized database error message should be correct
ok 9 - new status command isa App::Sqitch::Command::status
ok 10 - Should have project "foo"
ok 11 - Load a sqitch object with SQLite
ok 12 - Create another status command
ok 13 - Should get an error for uninitialized db
ok 14 - Uninitialized db error ident should be "status"
ok 15 - Uninitialized db error message should be correct
ok 16 - Should get an error for no registered projects
ok 17 - No projects error ident should be "status"
ok 18 - No projects error message should be correct
ok 19 - Should get an error for too many projects
ok 20 - Too many projects error ident should be "status"
ok 21 - Too many projects error message should be correct
ok 22 - Should find single project
ok 23 - Load another sqitch object
ok 24 - another status command isa App::Sqitch::Command::status
ok 25 - Should have plan project
ok 26 - Should get empty hash for no config or options
ok 27 - Should get error for invalid date format in config
ok 28 - Invalid date format error ident should be "datetime"
ok 29 - Invalid date format error message should be correct
ok 30 - Should get error for invalid date format in optsions
ok 31 - Invalid date format error ident should be "status"
ok 32 - Invalid date format error message should be correct
ok 33 - Emit the state
ok 34 - The state should have been emitted
ok 35 - Emit the state with a tag
ok 36 - The state should have been emitted with a tag
ok 37 - Emit the state with multiple tags
ok 38 - The state should have been emitted with multiple tags
ok 39 - Create status command with an engine
ok 40 - Try to emit changes
ok 41 - Should have emitted no changes
ok 42 - Create change-showing status command
ok 43 - Emit changes again
ok 44 - Project "foo" should have been passed to current_changes
ok 45 - Should have emitted one change
ok 46 - Emit changes thrice
ok 47 - Project "foo" again should have been passed to current_changes
ok 48 - Should have emitted three changes
ok 49 - Try to emit tags
ok 50 - No tags should have been emitted
ok 51 - Create tag-showing status command
ok 52 - Try to emit tags again
ok 53 - Project "bar" should be passed to current_tags()
ok 54 - Should have emitted a header for no tags
ok 55 - Emit tags
ok 56 - Project "bar" should again be passed to current_tags()
ok 57 - Should have emitted one tag
ok 58 - Emit tags again
ok 59 - Project "bar" should once more be passed to current_tags()
ok 60 - Should have emitted all three tags
ok 61 - Create status command with actual plan command
ok 62 - Emit status
ok 63 - Should have a blank comment line
ok 64 - Should emit up-to-date output
ok 65 - Emit status again
ok 66 - Should have a blank comment line
ok 67 - Should emit list of undeployed changes
ok 68 - Emit status thrice
ok 69 - Should have a blank comment line
ok 70 - Should emit list of undeployed changes
ok 71 - Die on invalid ID
ok 72 - Invalid ID error ident should be "status"
ok 73 - The invalid ID error message should be correct
ok 74 - Should have a blank comment line
ok 75 - Should have a message about inability to find the change
ok 76 - Execute
ok 77 - The state should have been emitted
ok 78 - Should emit list of undeployed changes
ok 79 - Create status command with specified project
ok 80 - Execute for specified project
ok 81 - The specified project state should have been emitted
ok 82 - Should emit unknown status message for specified project
ok 83 - Create status command with external project
ok 84 - Execute for external project
ok 85 - The external project state should have been emitted
ok 86 - Should emit unknown status message for external project
ok 87 - Die on no state
ok 88 - No state error ident should be "status"
ok 89 - No state error message should be correct
ok 90 - The "On database" comment should have been emitted
ok 91 - no warnings
ok
t/tag.t ............
1..27
ok 1 - require App::Sqitch::Plan::Tag;
ok 2 - App::Sqitch::Plan::Tag->can(...)
ok 3 - The object isa App::Sqitch::Plan::Tag
ok 4 - The object isa App::Sqitch::Plan::Line
ok 5 - Name should format as "@foo"
ok 6 - Timestamp isa App::Sqitch::DateTime
ok 7 - Planner name shoudld default to user name
ok 8 - Planner email shoudld default to user email
ok 9 - Planner name and email should format properly
ok 10 - Should as_string to "@foo" + timstamp + planner
ok 11 - Tag info should incldue the URI
ok 12 - Old tag info should incldue the URI
ok 13 - Create tag with more stuff
ok 14 - It should as_string correctly
ok 15 - Change should be correct
ok 16 - Planner name and email should format properly
ok 17 - Change should be for previous change
ok 18 - Tag info should include the change
ok 19 - Tag ID should be correct
ok 20 - Old tag info should include the change
ok 21 - Old tag ID should be correct
ok 22 - Create tag with UTF-8 name
ok 23 - The name should be decoded text in info
ok 24 - Tag ID should be hahsed from encoded UTF-8
ok 25 - Old name should be decoded text in info
ok 26 - Old tag ID should be hahsed from encoded UTF-8
ok 27 - no warnings
ok
t/tag_cmd.t ........
1..29
ok 1 - Load a sqitch sqitch object
ok 2 - tag command isa App::Sqitch::Command::tag
ok 3 - App::Sqitch::Command::tag->can(...)
ok 4 - Should have note option
ok 5 - Add change "foo"
ok 6 - Tag @alpha
ok 7 - Should have tagged "foo"
ok 8 - Reload plan
ok 9 - New tag should have been written
ok 10 - New tag should have empty note
ok 11 - Should have requested a note
ok 12 - The info message should be correct
ok 13 - Execute with no arg
ok 14 - The one tag should have been listed
ok 15 - Should have requested a note
ok 16 - Add tag @beta
ok 17 - Execute with no arg again
ok 18 - Both tags should have been listed
ok 19 - Should have requested a note
ok 20 - tag command with note isa App::Sqitch::Command::tag
ok 21 - Tag @gamma
ok 22 - Gamma tag should be on change "foo"
ok 23 - Gamma tag should have note
ok 24 - Reload plan
ok 25 - Gamma tag should have been written
ok 26 - Written tag should have note
ok 27 - Should have requested a note
ok 28 - The gamma note should be correct
ok 29 - no warnings
ok
t/verify.t .........
ok 1 - require App::Sqitch::Command::verify;
ok 2 - The class isa App::Sqitch::Command
ok 3 - App::Sqitch::Command::verify->can(...)
ok 4 - Options should be correct
ok 5 - Should have default configuration with no config or opts
ok 6 - Should have targets and variables from options
ok 7 - Should have no config if no options
ok 8 - Should have merged variables
ok 9 - The object isa App::Sqitch::Command::verify
ok 10 - Should pick up variables from configuration
ok 11 - The object isa App::Sqitch::Command::verify
ok 12 - from_target should be undef
ok 13 - to_target should be undef
ok 14 - Execute with nothing.
ok 15 - Two undefs should be passed to the engine
ok 16 - Execute from "@alpha"
ok 17 - "@alpha" and undef should be passed to the engine
ok 18 - Execute from "@alpha" to "@beta"
ok 19 - "@alpha" and "@beat" should be passed to the engine
ok 20 - Object with from, to, and variables isa App::Sqitch::Command::verify
ok 21 - Execute again
ok 22 - "foo" and "bar" should be passed to the engine
ok 23 - Vars should have been passed through to the engine
ok 24 - Execute with command-line args
ok 25 - "foo" and "bar" should be passed to the engine
ok 26 - Vars should have been passed through to the engine
1..26
ok
t/x.t ..............
ok 1 - require App::Sqitch::X;
ok 2 - X object isa App::Sqitch::X
ok 3 - X object does Throwable
ok 4 - X object does Role::HasMessage
ok 5 - X object does StackTrace::Auto
ok 6 - X object does Role::Identifiable::HasIdent
ok 7 - Create X without ident
ok 8 - Default ident should be "DEV"
ok 9 - threw App::Sqitch::X
ok 10 - Thrown object isa App::Sqitch::X
ok 11 - Ident should be "basic"
ok 12 - The message should have been passed
ok 13 - It should have a stack trace
ok 14 - Exit val should be 2
ok 15 - The trace should start in this file
ok 16 - threw App::Sqitch::X
ok 17 - Thrown object isa App::Sqitch::X
ok 18 - Ident should be "DEV"
ok 19 - The message should have been passed
ok 20 - Exit val should again be 2
ok 21 - threw App::Sqitch::X
ok 22 - Thrown object isa App::Sqitch::X
ok 23 - The params should have been passed
ok 24 - Exit val should be 1
ok 25 - Stringification should work
ok 26 - Stringification should work
ok 27 - Should be an "io" exception
ok 28 - Should catch error called via &goto
1..28
ok
All tests successful.
Files=33, Tests=3969, 32 wallclock secs ( 0.61 usr 0.16 sys + 27.24 cusr 2.69 csys = 30.70 CPU)
Result: PASS
DWHEELER/App-Sqitch-0.952.tar.gz
./Build test verbose=1 -- OK
David E. Wheeler <david@justatheory.com>
Sane database change management
>>> (cd /Users/fly1600/var/cpan/build/App-Sqitch-0.952-vHDmC9 && tar cvf - App-Sqitch-0.952.ppd blib) | gzip -c >/Users/fly1600/var/REPO/D/DW/DWHEELER/App-Sqitch-0.952.tar.gz
App-Sqitch-0.952.ppd
blib/
blib/etc/
blib/etc/templates/
blib/etc/templates/deploy.tmpl
blib/etc/templates/revert.tmpl
blib/etc/templates/verify.tmpl
blib/lib/
blib/lib/App/
blib/lib/App/Sqitch/
blib/lib/App/Sqitch/Command/
blib/lib/App/Sqitch/Command/add.pm
blib/lib/App/Sqitch/Command/bundle.pm
blib/lib/App/Sqitch/Command/config.pm
blib/lib/App/Sqitch/Command/deploy.pm
blib/lib/App/Sqitch/Command/help.pm
blib/lib/App/Sqitch/Command/init.pm
blib/lib/App/Sqitch/Command/log.pm
blib/lib/App/Sqitch/Command/rebase.pm
blib/lib/App/Sqitch/Command/revert.pm
blib/lib/App/Sqitch/Command/rework.pm
blib/lib/App/Sqitch/Command/show.pm
blib/lib/App/Sqitch/Command/status.pm
blib/lib/App/Sqitch/Command/tag.pm
blib/lib/App/Sqitch/Command/verify.pm
blib/lib/App/Sqitch/Command.pm
blib/lib/App/Sqitch/Config.pm
blib/lib/App/Sqitch/DateTime.pm
blib/lib/App/Sqitch/Engine/
blib/lib/App/Sqitch/Engine/pg.pm
blib/lib/App/Sqitch/Engine/pg.sql
blib/lib/App/Sqitch/Engine/sqlite.pm
blib/lib/App/Sqitch/Engine.pm
blib/lib/App/Sqitch/Plan/
blib/lib/App/Sqitch/Plan/Blank.pm
blib/lib/App/Sqitch/Plan/Change.pm
blib/lib/App/Sqitch/Plan/ChangeList.pm
blib/lib/App/Sqitch/Plan/Depend.pm
blib/lib/App/Sqitch/Plan/Line.pm
blib/lib/App/Sqitch/Plan/LineList.pm
blib/lib/App/Sqitch/Plan/Pragma.pm
blib/lib/App/Sqitch/Plan/Tag.pm
blib/lib/App/Sqitch/Plan.pm
blib/lib/App/Sqitch/X.pm
blib/lib/App/Sqitch.pm
blib/lib/LocaleData/
blib/lib/LocaleData/de/
blib/lib/LocaleData/de/LC_MESSAGES/
blib/lib/LocaleData/de/LC_MESSAGES/App-Sqitch.mo
blib/lib/LocaleData/fr/
blib/lib/LocaleData/fr/LC_MESSAGES/
blib/lib/LocaleData/fr/LC_MESSAGES/App-Sqitch.mo
blib/lib/sqitch-add-usage.pod
blib/lib/sqitch-add.pod
blib/lib/sqitch-bundle-usage.pod
blib/lib/sqitch-bundle.pod
blib/lib/sqitch-config-usage.pod
blib/lib/sqitch-config.pod
blib/lib/sqitch-deploy-usage.pod
blib/lib/sqitch-deploy.pod
blib/lib/sqitch-help-usage.pod
blib/lib/sqitch-help.pod
blib/lib/sqitch-init-usage.pod
blib/lib/sqitch-init.pod
blib/lib/sqitch-log-usage.pod
blib/lib/sqitch-log.pod
blib/lib/sqitch-rebase-usage.pod
blib/lib/sqitch-rebase.pod
blib/lib/sqitch-revert-usage.pod
blib/lib/sqitch-revert.pod
blib/lib/sqitch-rework-usage.pod
blib/lib/sqitch-rework.pod
blib/lib/sqitch-show-usage.pod
blib/lib/sqitch-show.pod
blib/lib/sqitch-status-usage.pod
blib/lib/sqitch-status.pod
blib/lib/sqitch-tag-usage.pod
blib/lib/sqitch-tag.pod
blib/lib/sqitch-verify-usage.pod
blib/lib/sqitch-verify.pod
blib/lib/sqitch.pod
blib/lib/sqitchchanges.pod
blib/lib/sqitchcommands.pod
blib/lib/sqitchtutorial.pod
blib/script/
blib/script/sqitch
>>> mv /Users/fly1600/var/cpan/build/App-Sqitch-0.952-vHDmC9/App-Sqitch-0.952.ppd /Users/fly1600/var/REPO/D/DW/DWHEELER
Megalib: Will not downgrade App-Sqitch from v9.93 to v0.952 at /Users/fly1600/lib/Fly/Megalib.pm line 54.
Finished 2013-01-12T03:04:31