PATH=/usr/bin:/bin:/home/fly1800/var/megalib/bin Start 2015-09-12T00:12:18 ActivePerl-1800 CPAN-2.00 Reading '/home/fly1800/var/cpan/Metadata' Database was generated on Sat, 12 Sep 2015 06:17:02 GMT Running make for D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/D/DM/DMUEY/CHECKSUMS Checksum for /home/fly1800/var/cpan/sources/authors/id/D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz ok Dancer2-Plugin-Growler-0.03/ Dancer2-Plugin-Growler-0.03/Build.PL Dancer2-Plugin-Growler-0.03/Changes Dancer2-Plugin-Growler-0.03/lib/ Dancer2-Plugin-Growler-0.03/Makefile.PL Dancer2-Plugin-Growler-0.03/MANIFEST Dancer2-Plugin-Growler-0.03/META.json Dancer2-Plugin-Growler-0.03/META.yml Dancer2-Plugin-Growler-0.03/README Dancer2-Plugin-Growler-0.03/t/ Dancer2-Plugin-Growler-0.03/t/00.load.t Dancer2-Plugin-Growler-0.03/t/perlcritic.t Dancer2-Plugin-Growler-0.03/t/perltidy.t Dancer2-Plugin-Growler-0.03/t/pkg-changes.t Dancer2-Plugin-Growler-0.03/t/pkg-readme.t Dancer2-Plugin-Growler-0.03/t/pod-coverage.t Dancer2-Plugin-Growler-0.03/t/pod-encoding.t Dancer2-Plugin-Growler-0.03/t/pod-spelling.t Dancer2-Plugin-Growler-0.03/t/pod-version.t Dancer2-Plugin-Growler-0.03/t/pod.t Dancer2-Plugin-Growler-0.03/lib/Dancer2/ Dancer2-Plugin-Growler-0.03/lib/Dancer2/Plugin/ Dancer2-Plugin-Growler-0.03/lib/Dancer2/Plugin/Growler.pm /bin/tar: Read 7168 bytes from - CPAN.pm: Building D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz >>> /home/fly1800/ap1800-297235/bin/perl-static Makefile.PL Warning: prerequisite Dancer2::Plugin 0 not found. Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Dancer2::Plugin::Growler Writing MYMETA.yml and MYMETA.json ---- Unsatisfied dependencies detected during ---- ---- DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz ---- Dancer2::Plugin [requires] Running make test Delayed until after prerequisites Running test for module 'Dancer2::Plugin' Running make for X/XS/XSAWYERX/Dancer2-0.162000.tar.gz Checksum for /home/fly1800/var/cpan/sources/authors/id/X/XS/XSAWYERX/Dancer2-0.162000.tar.gz ok Dancer2-0.162000/ Dancer2-0.162000/Makefile.PL Dancer2-0.162000/t/ Dancer2-0.162000/t/template_tiny/ Dancer2-0.162000/t/template_tiny/04_compat.t Dancer2-0.162000/t/template_tiny/03_samples.t Dancer2-0.162000/t/template_tiny/05_preparse.t Dancer2-0.162000/t/template_tiny/01_compile.t Dancer2-0.162000/t/template_tiny/samples/ Dancer2-0.162000/t/template_tiny/samples/09_trim.txt Dancer2-0.162000/t/template_tiny/samples/01_hello.var Dancer2-0.162000/t/template_tiny/samples/05_condition.txt Dancer2-0.162000/t/template_tiny/samples/02_null.txt Dancer2-0.162000/t/template_tiny/samples/06_object.tt Dancer2-0.162000/t/template_tiny/samples/05_condition.var Dancer2-0.162000/t/template_tiny/samples/03_chomp.tt Dancer2-0.162000/t/template_tiny/samples/09_trim.var Dancer2-0.162000/t/template_tiny/samples/07_nesting.tt Dancer2-0.162000/t/template_tiny/samples/08_foreach.txt Dancer2-0.162000/t/template_tiny/samples/03_chomp.var Dancer2-0.162000/t/template_tiny/samples/05_condition.tt Dancer2-0.162000/t/template_tiny/samples/02_null.var Dancer2-0.162000/t/template_tiny/samples/08_foreach.tt Dancer2-0.162000/t/template_tiny/samples/06_object.txt Dancer2-0.162000/t/template_tiny/samples/04_nested.tt Dancer2-0.162000/t/template_tiny/samples/07_nesting.txt Dancer2-0.162000/t/template_tiny/samples/09_trim.tt Dancer2-0.162000/t/template_tiny/samples/06_object.var Dancer2-0.162000/t/template_tiny/samples/04_nested.var Dancer2-0.162000/t/template_tiny/samples/01_hello.txt Dancer2-0.162000/t/template_tiny/samples/04_nested.txt Dancer2-0.162000/t/template_tiny/samples/02_null.tt Dancer2-0.162000/t/template_tiny/samples/08_foreach.var Dancer2-0.162000/t/template_tiny/samples/01_hello.tt Dancer2-0.162000/t/template_tiny/samples/07_nesting.var Dancer2-0.162000/t/template_tiny/samples/03_chomp.txt Dancer2-0.162000/t/template_tiny/02_trivial.t Dancer2-0.162000/t/scope_problems/ Dancer2-0.162000/t/scope_problems/with_return_dies.t Dancer2-0.162000/t/scope_problems/keywords_before_template_hook.t Dancer2-0.162000/t/scope_problems/views/ Dancer2-0.162000/t/scope_problems/views/500.tt Dancer2-0.162000/t/scope_problems/session_is_cleared.t Dancer2-0.162000/t/scope_problems/config.yml Dancer2-0.162000/t/scope_problems/dispatcher_internal_request.t Dancer2-0.162000/t/author-no-tabs.t Dancer2-0.162000/t/cookie.t Dancer2-0.162000/t/release-pod-syntax.t Dancer2-0.162000/t/custom_dsl.t Dancer2-0.162000/t/file_utils.t Dancer2-0.162000/t/release-distmeta.t Dancer2-0.162000/t/route-pod-coverage/ Dancer2-0.162000/t/route-pod-coverage/route-pod-coverage.t Dancer2-0.162000/t/uri_for.t Dancer2-0.162000/t/http_methods.t Dancer2-0.162000/t/plugin_register.t Dancer2-0.162000/t/caller.t Dancer2-0.162000/t/types.t Dancer2-0.162000/t/template_default_tokens.t Dancer2-0.162000/t/template.t Dancer2-0.162000/t/classes/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-Engine/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-Engine/with.t Dancer2-0.162000/t/classes/Dancer2-Core-Response/ Dancer2-0.162000/t/classes/Dancer2-Core-Response/new_from.t Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/with.t Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerFile/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerFile/fakescript.pl Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerFile/.dancer Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/bin/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/bin/.exists Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/blib/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/blib/bin/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/blib/bin/.exists Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/blib/lib/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/blib/lib/fakescript.pl Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/lib/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/lib/fake/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/lib/fake/inner/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/lib/fake/inner/dir/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-HasLocation/FakeDancerDir/lib/fake/inner/dir/.exists Dancer2-0.162000/t/classes/Dancer2-Core-Role-Handler/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-Handler/with.t Dancer2-0.162000/t/classes/Dancer2-Core-Route/ Dancer2-0.162000/t/classes/Dancer2-Core-Route/base.t Dancer2-0.162000/t/classes/Dancer2-Core-Route/match.t Dancer2-0.162000/t/classes/Dancer2-Core-Runner/ Dancer2-0.162000/t/classes/Dancer2-Core-Runner/environment.t Dancer2-0.162000/t/classes/Dancer2-Core-Runner/new.t Dancer2-0.162000/t/classes/Dancer2-Core-Runner/psgi_app.t Dancer2-0.162000/t/classes/Dancer2-Core-Role-Serializer/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-Serializer/with.t Dancer2-0.162000/t/classes/Dancer2-Core-Response-Delayed/ Dancer2-0.162000/t/classes/Dancer2-Core-Response-Delayed/after_hooks.t Dancer2-0.162000/t/classes/Dancer2-Core-Response-Delayed/new.t Dancer2-0.162000/t/classes/Dancer2-Core-Factory/ Dancer2-0.162000/t/classes/Dancer2-Core-Factory/new.t Dancer2-0.162000/t/classes/Dancer2-Core-Hook/ Dancer2-0.162000/t/classes/Dancer2-Core-Hook/new.t Dancer2-0.162000/t/classes/Dancer2/ Dancer2-0.162000/t/classes/Dancer2/import.t Dancer2-0.162000/t/classes/Dancer2-Core/ Dancer2-0.162000/t/classes/Dancer2-Core/camelize.t Dancer2-0.162000/t/classes/Dancer2-Core-Request/ Dancer2-0.162000/t/classes/Dancer2-Core-Request/serializers.t Dancer2-0.162000/t/classes/Dancer2-Core-Request/new.t Dancer2-0.162000/t/classes/Dancer2-Core-Role-StandardResponses/ Dancer2-0.162000/t/classes/Dancer2-Core-Role-StandardResponses/with.t Dancer2-0.162000/t/session_config.t Dancer2-0.162000/t/mime.t Dancer2-0.162000/t/context-in-before.t Dancer2-0.162000/t/request_upload.t Dancer2-0.162000/t/public/ Dancer2-0.162000/t/public/file.txt Dancer2-0.162000/t/serializer_mutable.t Dancer2-0.162000/t/corpus/ Dancer2-0.162000/t/corpus/pretty_public/ Dancer2-0.162000/t/corpus/pretty_public/404.html Dancer2-0.162000/t/corpus/pretty_public/510.html Dancer2-0.162000/t/corpus/pretty/ Dancer2-0.162000/t/corpus/pretty/505.tt Dancer2-0.162000/t/corpus/static/ Dancer2-0.162000/t/corpus/static/index.html Dancer2-0.162000/t/corpus/static/1x1.png Dancer2-0.162000/t/config_settings.t Dancer2-0.162000/t/session_engines.t Dancer2-0.162000/t/dancer-test/ Dancer2-0.162000/t/dancer-test/config.yml Dancer2-0.162000/t/template_simple.t Dancer2-0.162000/t/dsl.t Dancer2-0.162000/t/forward.t Dancer2-0.162000/t/error.t Dancer2-0.162000/t/views/ Dancer2-0.162000/t/views/tokens.tt Dancer2-0.162000/t/views/folder/ Dancer2-0.162000/t/views/folder/page.tt Dancer2-0.162000/t/views/session_in_template.tt Dancer2-0.162000/t/views/index.tt Dancer2-0.162000/t/views/beforetemplate.tt Dancer2-0.162000/t/views/layouts/ Dancer2-0.162000/t/views/layouts/main.tt Dancer2-0.162000/t/views/template_simple_index.tt Dancer2-0.162000/t/views/auto_page.tt Dancer2-0.162000/t/dispatcher.t Dancer2-0.162000/t/redirect.t Dancer2-0.162000/t/time.t Dancer2-0.162000/t/issues/ Dancer2-0.162000/t/issues/gh-936/ Dancer2-0.162000/t/issues/gh-936/views/ Dancer2-0.162000/t/issues/gh-936/views/error.tt Dancer2-0.162000/t/issues/gh-762.t Dancer2-0.162000/t/issues/gh-797.t Dancer2-0.162000/t/issues/gh-794.t Dancer2-0.162000/t/issues/gh-596.t Dancer2-0.162000/t/issues/memleak/ Dancer2-0.162000/t/issues/memleak/die_in_hooks.t Dancer2-0.162000/t/issues/gh-936.t Dancer2-0.162000/t/issues/gh-799.t Dancer2-0.162000/t/issues/gh-762/ Dancer2-0.162000/t/issues/gh-762/views/ Dancer2-0.162000/t/issues/gh-762/views/404.tt Dancer2-0.162000/t/issues/gh-723.t Dancer2-0.162000/t/issues/config.yml Dancer2-0.162000/t/issues/gh-634.t Dancer2-0.162000/t/issues/gh-639/ Dancer2-0.162000/t/issues/gh-639/succeeds/ Dancer2-0.162000/t/issues/gh-639/succeeds/issue.t Dancer2-0.162000/t/issues/gh-639/succeeds/.dancer Dancer2-0.162000/t/issues/gh-639/succeeds/config.yml Dancer2-0.162000/t/issues/gh-639/fails/ Dancer2-0.162000/t/issues/gh-639/fails/issue.t Dancer2-0.162000/t/issues/gh-639/fails/.dancer Dancer2-0.162000/t/issues/gh-639/fails/config.yml Dancer2-0.162000/t/issues/gh-730.t Dancer2-0.162000/t/issues/gh-650/ Dancer2-0.162000/t/issues/gh-650/views/ Dancer2-0.162000/t/issues/gh-650/views/environment_setting.tt Dancer2-0.162000/t/issues/gh-650/gh-650.t Dancer2-0.162000/t/issues/gh-944.t Dancer2-0.162000/t/sessions/ Dancer2-0.162000/t/sessions/VZnjPwAAO6k9bW5FauLnPe6HtecLdTl7.yml Dancer2-0.162000/t/sessions/VZnjPwAAO6k-BdDf7U1asyu8L3IiwLPH.yml Dancer2-0.162000/t/sessions/VZnfBAAAM1uzNFM805U0WYIBH6g9O9sP.yml Dancer2-0.162000/t/sessions/VZnjPwAAO6mvnV4jszDm0R5-aWeczZvi.yml Dancer2-0.162000/t/sessions/VZnmcwAAQCxW6LW-ZL8Xt8U8jJfvzYQE.yml Dancer2-0.162000/t/sessions/VZnmcwAAQCzAiy3r3BF_Y9nl17qh9xWZ.yml Dancer2-0.162000/t/sessions/VZnfBAAAM1vX474E7L8-IKj6yGKXydT6.yml Dancer2-0.162000/t/sessions/VZnfBAAAM1tKFkfDZ4IUwyKrWceQJRkE.yml Dancer2-0.162000/t/sessions/VZnmcwAAQCzZczgTm1OVACmWHKa_8Ba3.yml Dancer2-0.162000/t/session_forward.t Dancer2-0.162000/t/plugin_import.t Dancer2-0.162000/t/shared_engines.t Dancer2-0.162000/t/00-compile.t Dancer2-0.162000/t/psgi_app_forward_and_pass.t Dancer2-0.162000/t/vars.t Dancer2-0.162000/t/lib/ Dancer2-0.162000/t/lib/Hookee.pm Dancer2-0.162000/t/lib/Foo.pm Dancer2-0.162000/t/lib/MyDancerDSL.pm Dancer2-0.162000/t/lib/SubApp1.pm Dancer2-0.162000/t/lib/App2.pm Dancer2-0.162000/t/lib/SubApp2.pm Dancer2-0.162000/t/lib/EmptyPlugin.pm Dancer2-0.162000/t/lib/DancerPlugin.pm Dancer2-0.162000/t/lib/FooPlugin.pm Dancer2-0.162000/t/lib/TestApp.pm Dancer2-0.162000/t/lib/TestPod.pm Dancer2-0.162000/t/lib/OnPluginImport.pm Dancer2-0.162000/t/lib/App1.pm Dancer2-0.162000/t/lib/PluginWithImport.pm Dancer2-0.162000/t/serializer_json.t Dancer2-0.162000/t/session_hooks.t Dancer2-0.162000/t/roles/ Dancer2-0.162000/t/roles/hook.t Dancer2-0.162000/t/app_alone.t Dancer2-0.162000/t/forward_before_hook.t Dancer2-0.162000/t/deserialize.t Dancer2-0.162000/t/serializer.t Dancer2-0.162000/t/config/ Dancer2-0.162000/t/config/environments/ Dancer2-0.162000/t/config/environments/failure.yml Dancer2-0.162000/t/config/environments/production.yml Dancer2-0.162000/t/config/environments/merging.yml Dancer2-0.162000/t/config/environments/staging.json Dancer2-0.162000/t/config/config.yml Dancer2-0.162000/t/plugin_multiple_apps.t Dancer2-0.162000/t/response.t Dancer2-0.162000/t/multi_apps_forward.t Dancer2-0.162000/t/template_ext.t Dancer2-0.162000/t/logger_console.t Dancer2-0.162000/t/session_lifecycle.t Dancer2-0.162000/t/request.t Dancer2-0.162000/t/config.yml Dancer2-0.162000/t/dancer-test.t Dancer2-0.162000/t/00-report-prereqs.t Dancer2-0.162000/t/log_levels.t Dancer2-0.162000/t/session_object.t Dancer2-0.162000/t/app.t Dancer2-0.162000/t/http_status.t Dancer2-0.162000/t/engine.t Dancer2-0.162000/t/dsl/ Dancer2-0.162000/t/dsl/error_template.t Dancer2-0.162000/t/dsl/delayed.t Dancer2-0.162000/t/dsl/halt_with_param.t Dancer2-0.162000/t/dsl/halt.t Dancer2-0.162000/t/dsl/any.t Dancer2-0.162000/t/dsl/send_file.t Dancer2-0.162000/t/dsl/to_app.t Dancer2-0.162000/t/dsl/extend.t Dancer2-0.162000/t/dsl/pass.t Dancer2-0.162000/t/dsl/content.t Dancer2-0.162000/t/dsl/app.t Dancer2-0.162000/t/dsl/splat.t Dancer2-0.162000/t/dsl/extend_config/ Dancer2-0.162000/t/dsl/extend_config/config.yml Dancer2-0.162000/t/dsl/path.t Dancer2-0.162000/t/config_multiapp.t Dancer2-0.162000/t/app/ Dancer2-0.162000/t/app/t1/ Dancer2-0.162000/t/app/t1/bin/ Dancer2-0.162000/t/app/t1/bin/app.psgi Dancer2-0.162000/t/app/t1/lib/ Dancer2-0.162000/t/app/t1/lib/App1.pm Dancer2-0.162000/t/app/t1/lib/Sub/ Dancer2-0.162000/t/app/t1/lib/Sub/App2.pm Dancer2-0.162000/t/app/t1/config.yml Dancer2-0.162000/t/app/t2/ Dancer2-0.162000/t/app/t2/lib/ Dancer2-0.162000/t/app/t2/lib/App3.pm Dancer2-0.162000/t/app/t2/.dancer Dancer2-0.162000/t/app/t2/config.yml Dancer2-0.162000/t/plugin_syntax.t Dancer2-0.162000/t/log_die_before_hook.t Dancer2-0.162000/t/00-report-prereqs.dd Dancer2-0.162000/t/auto_page.t Dancer2-0.162000/t/template_name.t Dancer2-0.162000/t/named_apps.t Dancer2-0.162000/t/logger.t Dancer2-0.162000/t/hooks.t Dancer2-0.162000/t/forward_test_tcp.t Dancer2-0.162000/t/charset_server.t Dancer2-0.162000/t/factory.t Dancer2-0.162000/t/multi_apps.t Dancer2-0.162000/t/memory_cycles.t Dancer2-0.162000/t/psgi_app.t Dancer2-0.162000/t/multiapp_template_hooks.t Dancer2-0.162000/t/session_in_template.t Dancer2-0.162000/t/config_reader.t Dancer2-0.162000/LICENSE Dancer2-0.162000/META.json Dancer2-0.162000/xt/ Dancer2-0.162000/xt/perltidy.rc Dancer2-0.162000/xt/whitespace.t Dancer2-0.162000/xt/perlcritic.rc Dancer2-0.162000/META.yml Dancer2-0.162000/script/ Dancer2-0.162000/script/dancer2 Dancer2-0.162000/GitGuide.md Dancer2-0.162000/Changes Dancer2-0.162000/lib/ Dancer2-0.162000/lib/Dancer2/ Dancer2-0.162000/lib/Dancer2/FileUtils.pm Dancer2-0.162000/lib/Dancer2/Manual.pod Dancer2-0.162000/lib/Dancer2/Core.pm Dancer2-0.162000/lib/Dancer2/Serializer/ Dancer2-0.162000/lib/Dancer2/Serializer/Dumper.pm Dancer2-0.162000/lib/Dancer2/Serializer/YAML.pm Dancer2-0.162000/lib/Dancer2/Serializer/Mutable.pm Dancer2-0.162000/lib/Dancer2/Serializer/JSON.pm Dancer2-0.162000/lib/Dancer2/Logger/ Dancer2-0.162000/lib/Dancer2/Logger/Capture/ Dancer2-0.162000/lib/Dancer2/Logger/Capture/Trap.pm Dancer2-0.162000/lib/Dancer2/Logger/Capture.pm Dancer2-0.162000/lib/Dancer2/Logger/Null.pm Dancer2-0.162000/lib/Dancer2/Logger/Console.pm Dancer2-0.162000/lib/Dancer2/Logger/Diag.pm Dancer2-0.162000/lib/Dancer2/Logger/File.pm Dancer2-0.162000/lib/Dancer2/Logger/Note.pm Dancer2-0.162000/lib/Dancer2/Config.pod Dancer2-0.162000/lib/Dancer2/CLI.pm Dancer2-0.162000/lib/Dancer2/CLI/ Dancer2-0.162000/lib/Dancer2/CLI/Command/ Dancer2-0.162000/lib/Dancer2/CLI/Command/version.pm Dancer2-0.162000/lib/Dancer2/CLI/Command/gen.pm Dancer2-0.162000/lib/Dancer2/Test.pm Dancer2-0.162000/lib/Dancer2/Session/ Dancer2-0.162000/lib/Dancer2/Session/YAML.pm Dancer2-0.162000/lib/Dancer2/Session/Simple.pm Dancer2-0.162000/lib/Dancer2/Plugin.pm Dancer2-0.162000/lib/Dancer2/Template/ Dancer2-0.162000/lib/Dancer2/Template/Tiny.pm Dancer2-0.162000/lib/Dancer2/Template/Implementation/ Dancer2-0.162000/lib/Dancer2/Template/Implementation/ForkedTiny.pm Dancer2-0.162000/lib/Dancer2/Template/Simple.pm Dancer2-0.162000/lib/Dancer2/Template/TemplateToolkit.pm Dancer2-0.162000/lib/Dancer2/Cookbook.pod Dancer2-0.162000/lib/Dancer2/Handler/ Dancer2-0.162000/lib/Dancer2/Handler/AutoPage.pm Dancer2-0.162000/lib/Dancer2/Handler/File.pm Dancer2-0.162000/lib/Dancer2/Manual/ Dancer2-0.162000/lib/Dancer2/Manual/Migration.pod Dancer2-0.162000/lib/Dancer2/Manual/Testing.pod Dancer2-0.162000/lib/Dancer2/Manual/Deployment.pod Dancer2-0.162000/lib/Dancer2/Tutorial.pod Dancer2-0.162000/lib/Dancer2/Plugins.pod Dancer2-0.162000/lib/Dancer2/Policy.pod Dancer2-0.162000/lib/Dancer2/Core/ Dancer2-0.162000/lib/Dancer2/Core/Runner.pm Dancer2-0.162000/lib/Dancer2/Core/Route.pm Dancer2-0.162000/lib/Dancer2/Core/Dispatcher.pm Dancer2-0.162000/lib/Dancer2/Core/Session.pm Dancer2-0.162000/lib/Dancer2/Core/Factory.pm Dancer2-0.162000/lib/Dancer2/Core/Response/ Dancer2-0.162000/lib/Dancer2/Core/Response/Delayed.pm Dancer2-0.162000/lib/Dancer2/Core/DSL.pm Dancer2-0.162000/lib/Dancer2/Core/Role/ Dancer2-0.162000/lib/Dancer2/Core/Role/Template.pm Dancer2-0.162000/lib/Dancer2/Core/Role/Hookable.pm Dancer2-0.162000/lib/Dancer2/Core/Role/ConfigReader.pm Dancer2-0.162000/lib/Dancer2/Core/Role/DSL.pm Dancer2-0.162000/lib/Dancer2/Core/Role/Serializer.pm Dancer2-0.162000/lib/Dancer2/Core/Role/HasLocation.pm Dancer2-0.162000/lib/Dancer2/Core/Role/Handler.pm Dancer2-0.162000/lib/Dancer2/Core/Role/SessionFactory/ Dancer2-0.162000/lib/Dancer2/Core/Role/SessionFactory/File.pm Dancer2-0.162000/lib/Dancer2/Core/Role/Engine.pm Dancer2-0.162000/lib/Dancer2/Core/Role/Logger.pm Dancer2-0.162000/lib/Dancer2/Core/Role/SessionFactory.pm Dancer2-0.162000/lib/Dancer2/Core/Role/StandardResponses.pm Dancer2-0.162000/lib/Dancer2/Core/Cookie.pm Dancer2-0.162000/lib/Dancer2/Core/Types.pm Dancer2-0.162000/lib/Dancer2/Core/HTTP.pm Dancer2-0.162000/lib/Dancer2/Core/Request/ Dancer2-0.162000/lib/Dancer2/Core/Request/Upload.pm Dancer2-0.162000/lib/Dancer2/Core/.Error.pm.swp Dancer2-0.162000/lib/Dancer2/Core/Response.pm Dancer2-0.162000/lib/Dancer2/Core/Request.pm Dancer2-0.162000/lib/Dancer2/Core/MIME.pm Dancer2-0.162000/lib/Dancer2/Core/Error.pm Dancer2-0.162000/lib/Dancer2/Core/App.pm Dancer2-0.162000/lib/Dancer2/Core/Hook.pm Dancer2-0.162000/lib/Dancer2/Core/Time.pm Dancer2-0.162000/lib/Dancer2.pm Dancer2-0.162000/share/ Dancer2-0.162000/share/skel/ Dancer2-0.162000/share/skel/Makefile.PL Dancer2-0.162000/share/skel/t/ Dancer2-0.162000/share/skel/t/002_index_route.t Dancer2-0.162000/share/skel/t/001_base.t Dancer2-0.162000/share/skel/cpanfile Dancer2-0.162000/share/skel/bin/ Dancer2-0.162000/share/skel/bin/+app.psgi Dancer2-0.162000/share/skel/MANIFEST.SKIP Dancer2-0.162000/share/skel/public/ Dancer2-0.162000/share/skel/public/404.html Dancer2-0.162000/share/skel/public/javascripts/ Dancer2-0.162000/share/skel/public/javascripts/jquery.js Dancer2-0.162000/share/skel/public/favicon.ico Dancer2-0.162000/share/skel/public/+dispatch.fcgi Dancer2-0.162000/share/skel/public/images/ Dancer2-0.162000/share/skel/public/images/perldancer-bg.jpg Dancer2-0.162000/share/skel/public/images/perldancer.jpg Dancer2-0.162000/share/skel/public/500.html Dancer2-0.162000/share/skel/public/+dispatch.cgi Dancer2-0.162000/share/skel/public/css/ Dancer2-0.162000/share/skel/public/css/style.css Dancer2-0.162000/share/skel/public/css/error.css Dancer2-0.162000/share/skel/views/ Dancer2-0.162000/share/skel/views/index.tt Dancer2-0.162000/share/skel/views/layouts/ Dancer2-0.162000/share/skel/views/layouts/main.tt Dancer2-0.162000/share/skel/lib/ Dancer2-0.162000/share/skel/lib/AppFile.pm Dancer2-0.162000/share/skel/environments/ Dancer2-0.162000/share/skel/environments/production.yml Dancer2-0.162000/share/skel/environments/development.yml Dancer2-0.162000/share/skel/config.yml Dancer2-0.162000/MANIFEST Dancer2-0.162000/AUTHORS CPAN.pm: Building X/XS/XSAWYERX/Dancer2-0.162000.tar.gz >>> /home/fly1800/ap1800-297235/bin/perl-static Makefile.PL Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for Dancer2 Writing MYMETA.yml and MYMETA.json >>> make cp share/skel/Makefile.PL blib/lib/auto/share/dist/Dancer2/skel/Makefile.PL cp share/skel/views/layouts/main.tt blib/lib/auto/share/dist/Dancer2/skel/views/layouts/main.tt cp share/skel/t/001_base.t blib/lib/auto/share/dist/Dancer2/skel/t/001_base.t cp share/skel/public/javascripts/jquery.js blib/lib/auto/share/dist/Dancer2/skel/public/javascripts/jquery.js cp share/skel/environments/production.yml blib/lib/auto/share/dist/Dancer2/skel/environments/production.yml cp share/skel/cpanfile blib/lib/auto/share/dist/Dancer2/skel/cpanfile cp share/skel/public/500.html blib/lib/auto/share/dist/Dancer2/skel/public/500.html cp share/skel/public/images/perldancer.jpg blib/lib/auto/share/dist/Dancer2/skel/public/images/perldancer.jpg cp share/skel/public/favicon.ico blib/lib/auto/share/dist/Dancer2/skel/public/favicon.ico cp share/skel/environments/development.yml blib/lib/auto/share/dist/Dancer2/skel/environments/development.yml cp share/skel/t/002_index_route.t blib/lib/auto/share/dist/Dancer2/skel/t/002_index_route.t cp share/skel/public/404.html blib/lib/auto/share/dist/Dancer2/skel/public/404.html cp share/skel/lib/AppFile.pm blib/lib/auto/share/dist/Dancer2/skel/lib/AppFile.pm cp share/skel/MANIFEST.SKIP blib/lib/auto/share/dist/Dancer2/skel/MANIFEST.SKIP cp share/skel/public/+dispatch.cgi blib/lib/auto/share/dist/Dancer2/skel/public/+dispatch.cgi cp share/skel/public/images/perldancer-bg.jpg blib/lib/auto/share/dist/Dancer2/skel/public/images/perldancer-bg.jpg cp share/skel/public/css/style.css blib/lib/auto/share/dist/Dancer2/skel/public/css/style.css cp share/skel/public/css/error.css blib/lib/auto/share/dist/Dancer2/skel/public/css/error.css cp share/skel/views/index.tt blib/lib/auto/share/dist/Dancer2/skel/views/index.tt cp share/skel/public/+dispatch.fcgi blib/lib/auto/share/dist/Dancer2/skel/public/+dispatch.fcgi cp share/skel/config.yml blib/lib/auto/share/dist/Dancer2/skel/config.yml cp share/skel/bin/+app.psgi blib/lib/auto/share/dist/Dancer2/skel/bin/+app.psgi cp lib/Dancer2/Core/Role/ConfigReader.pm blib/lib/Dancer2/Core/Role/ConfigReader.pm cp lib/Dancer2/Core/Request.pm blib/lib/Dancer2/Core/Request.pm cp lib/Dancer2/Core.pm blib/lib/Dancer2/Core.pm cp lib/Dancer2/CLI/Command/gen.pm blib/lib/Dancer2/CLI/Command/gen.pm cp lib/Dancer2/Core/Role/Engine.pm blib/lib/Dancer2/Core/Role/Engine.pm cp lib/Dancer2/Core/Cookie.pm blib/lib/Dancer2/Core/Cookie.pm cp lib/Dancer2/CLI.pm blib/lib/Dancer2/CLI.pm cp lib/Dancer2/Logger/Console.pm blib/lib/Dancer2/Logger/Console.pm cp lib/Dancer2/Tutorial.pod blib/lib/Dancer2/Tutorial.pod cp lib/Dancer2/Core/Factory.pm blib/lib/Dancer2/Core/Factory.pm cp lib/Dancer2/Template/Implementation/ForkedTiny.pm blib/lib/Dancer2/Template/Implementation/ForkedTiny.pm cp lib/Dancer2/Core/Role/Hookable.pm blib/lib/Dancer2/Core/Role/Hookable.pm cp lib/Dancer2/Session/YAML.pm blib/lib/Dancer2/Session/YAML.pm cp lib/Dancer2/Serializer/JSON.pm blib/lib/Dancer2/Serializer/JSON.pm cp lib/Dancer2/Serializer/Mutable.pm blib/lib/Dancer2/Serializer/Mutable.pm cp lib/Dancer2/Template/Tiny.pm blib/lib/Dancer2/Template/Tiny.pm cp lib/Dancer2/Plugin.pm blib/lib/Dancer2/Plugin.pm cp lib/Dancer2/Core/HTTP.pm blib/lib/Dancer2/Core/HTTP.pm cp lib/Dancer2/Logger/File.pm blib/lib/Dancer2/Logger/File.pm cp lib/Dancer2/Core/Role/DSL.pm blib/lib/Dancer2/Core/Role/DSL.pm cp lib/Dancer2/Core/Types.pm blib/lib/Dancer2/Core/Types.pm cp lib/Dancer2/Manual/Testing.pod blib/lib/Dancer2/Manual/Testing.pod cp lib/Dancer2/Handler/AutoPage.pm blib/lib/Dancer2/Handler/AutoPage.pm cp lib/Dancer2/Core/Error.pm blib/lib/Dancer2/Core/Error.pm cp lib/Dancer2/Serializer/YAML.pm blib/lib/Dancer2/Serializer/YAML.pm cp lib/Dancer2/Core/Role/HasLocation.pm blib/lib/Dancer2/Core/Role/HasLocation.pm cp lib/Dancer2/Handler/File.pm blib/lib/Dancer2/Handler/File.pm cp lib/Dancer2/Core/Dispatcher.pm blib/lib/Dancer2/Core/Dispatcher.pm cp lib/Dancer2/Core/Route.pm blib/lib/Dancer2/Core/Route.pm cp lib/Dancer2/Core/Role/SessionFactory/File.pm blib/lib/Dancer2/Core/Role/SessionFactory/File.pm cp lib/Dancer2/Cookbook.pod blib/lib/Dancer2/Cookbook.pod cp lib/Dancer2/Core/Session.pm blib/lib/Dancer2/Core/Session.pm cp lib/Dancer2/Core/Role/SessionFactory.pm blib/lib/Dancer2/Core/Role/SessionFactory.pm cp lib/Dancer2/Logger/Capture/Trap.pm blib/lib/Dancer2/Logger/Capture/Trap.pm cp lib/Dancer2/Core/Role/Handler.pm blib/lib/Dancer2/Core/Role/Handler.pm cp lib/Dancer2/Plugins.pod blib/lib/Dancer2/Plugins.pod cp lib/Dancer2/Core/Request/Upload.pm blib/lib/Dancer2/Core/Request/Upload.pm cp lib/Dancer2.pm blib/lib/Dancer2.pm cp lib/Dancer2/Logger/Null.pm blib/lib/Dancer2/Logger/Null.pm cp lib/Dancer2/Template/TemplateToolkit.pm blib/lib/Dancer2/Template/TemplateToolkit.pm cp lib/Dancer2/Core/App.pm blib/lib/Dancer2/Core/App.pm cp lib/Dancer2/Manual/Migration.pod blib/lib/Dancer2/Manual/Migration.pod cp lib/Dancer2/Config.pod blib/lib/Dancer2/Config.pod cp lib/Dancer2/Logger/Note.pm blib/lib/Dancer2/Logger/Note.pm cp lib/Dancer2/Serializer/Dumper.pm blib/lib/Dancer2/Serializer/Dumper.pm cp lib/Dancer2/Core/Response.pm blib/lib/Dancer2/Core/Response.pm cp lib/Dancer2/FileUtils.pm blib/lib/Dancer2/FileUtils.pm cp lib/Dancer2/Core/MIME.pm blib/lib/Dancer2/Core/MIME.pm cp lib/Dancer2/Test.pm blib/lib/Dancer2/Test.pm cp lib/Dancer2/Core/Hook.pm blib/lib/Dancer2/Core/Hook.pm cp lib/Dancer2/Policy.pod blib/lib/Dancer2/Policy.pod cp lib/Dancer2/Template/Simple.pm blib/lib/Dancer2/Template/Simple.pm cp lib/Dancer2/CLI/Command/version.pm blib/lib/Dancer2/CLI/Command/version.pm cp lib/Dancer2/Core/Role/Serializer.pm blib/lib/Dancer2/Core/Role/Serializer.pm cp lib/Dancer2/Logger/Diag.pm blib/lib/Dancer2/Logger/Diag.pm cp lib/Dancer2/Core/Role/Logger.pm blib/lib/Dancer2/Core/Role/Logger.pm cp lib/Dancer2/Core/DSL.pm blib/lib/Dancer2/Core/DSL.pm cp lib/Dancer2/Manual.pod blib/lib/Dancer2/Manual.pod cp lib/Dancer2/Core/Response/Delayed.pm blib/lib/Dancer2/Core/Response/Delayed.pm cp lib/Dancer2/Core/Role/Template.pm blib/lib/Dancer2/Core/Role/Template.pm cp lib/Dancer2/Session/Simple.pm blib/lib/Dancer2/Session/Simple.pm cp lib/Dancer2/Core/Time.pm blib/lib/Dancer2/Core/Time.pm cp lib/Dancer2/Manual/Deployment.pod blib/lib/Dancer2/Manual/Deployment.pod cp lib/Dancer2/Logger/Capture.pm blib/lib/Dancer2/Logger/Capture.pm cp lib/Dancer2/Core/Runner.pm blib/lib/Dancer2/Core/Runner.pm cp lib/Dancer2/Core/Role/StandardResponses.pm blib/lib/Dancer2/Core/Role/StandardResponses.pm cp script/dancer2 blib/script/dancer2 "/home/fly1800/ap1800-297235/bin/perl-static" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/dancer2 Manifying 1 pod document Manifying 66 pod documents XSAWYERX/Dancer2-0.162000.tar.gz make -- OK Running make test >>> make test TEST_VERBOSE=1 Skip blib/lib/auto/share/dist/Dancer2/skel/public/images/perldancer-bg.jpg (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/environments/production.yml (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/javascripts/jquery.js (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/t/001_base.t (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/MANIFEST.SKIP (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/views/layouts/main.tt (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/views/index.tt (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/cpanfile (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/config.yml (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/500.html (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/environments/development.yml (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/404.html (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/css/error.css (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/lib/AppFile.pm (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/Makefile.PL (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/+dispatch.cgi (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/t/002_index_route.t (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/images/perldancer.jpg (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/bin/+app.psgi (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/css/style.css (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/favicon.ico (unchanged) Skip blib/lib/auto/share/dist/Dancer2/skel/public/+dispatch.fcgi (unchanged) PERL_DL_NONLAZY=1 "/home/fly1800/ap1800-297235/bin/perl-static" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t t/classes/Dancer2-Core-Factory/*.t t/classes/Dancer2-Core-Hook/*.t t/classes/Dancer2-Core-Request/*.t t/classes/Dancer2-Core-Response-Delayed/*.t t/classes/Dancer2-Core-Response/*.t t/classes/Dancer2-Core-Role-Engine/*.t t/classes/Dancer2-Core-Role-Handler/*.t t/classes/Dancer2-Core-Role-HasLocation/*.t t/classes/Dancer2-Core-Role-Serializer/*.t t/classes/Dancer2-Core-Role-StandardResponses/*.t t/classes/Dancer2-Core-Route/*.t t/classes/Dancer2-Core-Runner/*.t t/classes/Dancer2-Core/*.t t/classes/Dancer2/*.t t/dsl/*.t t/issues/*.t t/issues/gh-639/fails/*.t t/issues/gh-639/succeeds/*.t t/issues/gh-650/*.t t/issues/memleak/*.t t/roles/*.t t/route-pod-coverage/*.t t/scope_problems/*.t t/template_tiny/*.t t/00-compile.t ......................................... 1..58 ok 1 - Dancer2.pm loaded ok ok 2 - Dancer2/CLI.pm loaded ok ok 3 - Dancer2/CLI/Command/gen.pm loaded ok ok 4 - Dancer2/CLI/Command/version.pm loaded ok ok 5 - Dancer2/Core.pm loaded ok ok 6 - Dancer2/Core/App.pm loaded ok ok 7 - Dancer2/Core/Cookie.pm loaded ok ok 8 - Dancer2/Core/DSL.pm loaded ok ok 9 - Dancer2/Core/Dispatcher.pm loaded ok ok 10 - Dancer2/Core/Error.pm loaded ok ok 11 - Dancer2/Core/Factory.pm loaded ok ok 12 - Dancer2/Core/HTTP.pm loaded ok ok 13 - Dancer2/Core/Hook.pm loaded ok ok 14 - Dancer2/Core/MIME.pm loaded ok ok 15 - Dancer2/Core/Request.pm loaded ok ok 16 - Dancer2/Core/Request/Upload.pm loaded ok ok 17 - Dancer2/Core/Response.pm loaded ok ok 18 - Dancer2/Core/Response/Delayed.pm loaded ok ok 19 - Dancer2/Core/Role/ConfigReader.pm loaded ok ok 20 - Dancer2/Core/Role/DSL.pm loaded ok ok 21 - Dancer2/Core/Role/Engine.pm loaded ok ok 22 - Dancer2/Core/Role/Handler.pm loaded ok ok 23 - Dancer2/Core/Role/HasLocation.pm loaded ok ok 24 - Dancer2/Core/Role/Hookable.pm loaded ok ok 25 - Dancer2/Core/Role/Logger.pm loaded ok ok 26 - Dancer2/Core/Role/Serializer.pm loaded ok ok 27 - Dancer2/Core/Role/SessionFactory.pm loaded ok ok 28 - Dancer2/Core/Role/SessionFactory/File.pm loaded ok ok 29 - Dancer2/Core/Role/StandardResponses.pm loaded ok ok 30 - Dancer2/Core/Role/Template.pm loaded ok ok 31 - Dancer2/Core/Route.pm loaded ok ok 32 - Dancer2/Core/Runner.pm loaded ok ok 33 - Dancer2/Core/Session.pm loaded ok ok 34 - Dancer2/Core/Time.pm loaded ok ok 35 - Dancer2/Core/Types.pm loaded ok ok 36 - Dancer2/FileUtils.pm loaded ok ok 37 - Dancer2/Handler/AutoPage.pm loaded ok ok 38 - Dancer2/Handler/File.pm loaded ok ok 39 - Dancer2/Logger/Capture.pm loaded ok ok 40 - Dancer2/Logger/Capture/Trap.pm loaded ok ok 41 - Dancer2/Logger/Console.pm loaded ok ok 42 - Dancer2/Logger/Diag.pm loaded ok ok 43 - Dancer2/Logger/File.pm loaded ok ok 44 - Dancer2/Logger/Note.pm loaded ok ok 45 - Dancer2/Logger/Null.pm loaded ok ok 46 - Dancer2/Plugin.pm loaded ok ok 47 - Dancer2/Serializer/Dumper.pm loaded ok ok 48 - Dancer2/Serializer/JSON.pm loaded ok ok 49 - Dancer2/Serializer/Mutable.pm loaded ok ok 50 - Dancer2/Serializer/YAML.pm loaded ok ok 51 - Dancer2/Session/Simple.pm loaded ok ok 52 - Dancer2/Session/YAML.pm loaded ok ok 53 - Dancer2/Template/Implementation/ForkedTiny.pm loaded ok ok 54 - Dancer2/Template/Simple.pm loaded ok ok 55 - Dancer2/Template/TemplateToolkit.pm loaded ok ok 56 - Dancer2/Template/Tiny.pm loaded ok ok 57 - Dancer2/Test.pm loaded ok ok 58 # skip script/dancer2 isn't perl ok # # Versions for all modules listed in MYMETA.json (including optional ones): # # === Configure Requires === # # Module Want Have # ----------------------- ---- ---- # ExtUtils::MakeMaker any 7.04 # File::ShareDir::Install 0.06 0.10 # # === Build Requires === # # Module Want Have # ------------------- ---- ---- # ExtUtils::MakeMaker any 7.04 # # === Test Requires === # # Module Want Have # --------------------- ---- -------- # Capture::Tiny 0.12 0.30 # ExtUtils::MakeMaker any 7.04 # File::Spec any 3.47 # File::Temp 0.22 0.2304 # FindBin any 1.51 # HTTP::Body any 1.22 # HTTP::Cookies any 6.01 # HTTP::Headers any 6.11 # HTTP::Request any 6.11 # HTTP::Request::Common any 6.11 # IO::Handle any 1.34 # IPC::Open3 any 1.13 # Plack::Response any 1.0037 # Plack::Test any undef # Test::Fatal any 0.014 # Test::More 0.92 1.001009 # YAML 0.86 0.94 # lib any 0.63 # utf8 any 1.10 # vars any 1.03 # # === Test Recommends === # # Module Want Have # ---------- -------- -------- # CPAN::Meta 2.120900 2.150005 # # === Runtime Requires === # # Module Want Have # ------------------------------------------- -------- -------- # App::Cmd::Setup any 0.328 # Carp any 1.36 # Class::Load any 0.23 # Config::Any any 0.26 # Cwd any 3.47 # Data::Dumper any 2.154 # Digest::SHA any 5.95 # Encode any 2.76 # Exporter 5.57 5.72 # Fcntl any 1.11 # File::Basename any 2.84 # File::Copy any 2.26 # File::Find any 1.23 # File::Path any 2.11 # File::ShareDir any 1.102 # File::Spec any 3.47 # File::Spec::Functions any 3.47 # File::Temp 0.22 0.2304 # HTTP::Body any 1.22 # HTTP::Date any 6.02 # HTTP::Headers::Fast any 0.19 # HTTP::Server::PSGI any undef # HTTP::Tiny any 0.056 # Hash::Merge::Simple any 0.051 # IO::File any 1.16 # Import::Into any 1.002005 # JSON any 2.90 # List::Util any 1.42 # MIME::Base64 3.13 3.15 # Module::Runtime any 0.014 # Moo 1.003000 2.000002 # Moo::Role any 2.000002 # MooX::Types::MooseLike 0.16 0.29 # MooX::Types::MooseLike::Base any 0.29 # POSIX any 1.32 # Plack 1.0029 1.0037 # Plack::Builder any undef # Plack::MIME any undef # Plack::Middleware::FixMissingBodyInRedirect any 0.12 # Plack::Middleware::Head any undef # Plack::Middleware::RemoveRedundantBody any 0.04 # Plack::Middleware::Static any undef # Plack::Request any 1.0037 # Plack::Util any undef # Pod::Simple::Search any 3.31 # Pod::Simple::SimpleTree any 3.31 # Return::MultiLevel any 0.04 # Role::Tiny 1.003000 2.000001 # Safe any 2.35 # Safe::Isa any 1.000005 # Scalar::Util any 1.42 # Sub::Quote any 2.000002 # Template any 2.26 # Template::Tiny any 1.12 # Test::Builder any 1.001009 # Test::More 0.92 1.001009 # URI any 1.67 # URI::Escape any 3.31 # YAML 0.86 0.94 # overload any 1.22 # parent any 0.234 # strict any 1.07 # warnings any 1.18 # # === Runtime Recommends === # # Module Want Have # ----------------------- ---- -------- # CGI::Deurl::XS any 0.08 # Crypt::URandom any 0.36 # JSON::XS any 3.01 # Math::Random::ISAAC::XS any 1.004 # Pod::Simple::Search any 3.31 # Pod::Simple::SimpleTree any 3.31 # Scope::Upper any missing # Test::Builder any 1.001009 # Test::More any 1.001009 # URL::Encode::XS any 0.03 # # === Runtime Suggests === # # Module Want Have # --------------- ---- ---- # Class::Load::XS any 0.09 # Fcntl any 1.11 # MIME::Types any 2.11 # YAML 0.86 0.94 # t/00-report-prereqs.t .................................. 1..1 ok 1 ok t/app.t ................................................ ok 1 - An object of class 'Dancer2::Core::App' isa 'Dancer2::Core::App' ok 2 ok 3 - route regexps are OK ok 4 - got a 200 ok 5 - got expected route ok 6 - got a 200 ok 7 - got expected route ok 8 - got a 200 ok 9 - got expected route ok 10 - got a 200 ok 11 - got expected route # testing lexical prefixes ok 12 - got a 200 ok 13 - got expected route ok 14 - got a 200 ok 15 - got expected route ok 16 - got a 200 ok 17 - got expected route ok 18 - got a 200 ok 19 - got expected route ok 20 - got a 200 ok 21 - got expected route # test a failure in the callback of a lexical prefix ok 22 - caught an exception in the lexical prefix callback # [main:26430] error @2015-09-12 00:12:36> Exception caught in 'core.app.before_request' filter: Hook error: Can't locate object method "failure" via package "Foo" (perhaps you forgot to load "Foo"?) at t/app.t line 151. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm line 969. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 540 # [main:26430] error @2015-09-12 00:12:36> Route exception: Exception caught in 'core.app.before_request' filter: Hook error: Can't locate object method "failure" via package "Foo" (perhaps you forgot to load "Foo"?) at t/app.t line 151. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm line 969. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 ok 23 - before filter nonexistent method failure ok 24 - Engine 'foo' does not exist ok 25 - Template engine is defined ok 26 - Serializer engine does not exist ok 27 - Empty configuration for nonexistent engine ok 28 - _get_config_for_engine can find the right configuration ok 29 - Correct caller for app 1..29 ok t/app_alone.t .......................................... 1..3 ok 1 - A reference of type 'CODE' isa 'CODE' ok 2 - [GET /] Correct status ok 3 - [GET /] Correct content ok t/author-no-tabs.t ..................................... skipped: these tests are for testing by the author t/auto_page.t .......................................... ok 1 - Got app ok 2 - Autopage found the page ok 3 - ...with proper content ok 4 - Autopage found the page under a folder ok 5 - ...with proper content ok 6 - Autopage doesnt try to render nonexistent pages ok 7 - Layouts are not served ok 8 - found file on public with autopage ok 9 - [GET /file.txt] Correct content ok 10 - public served file as correct mime 1..10 ok t/caller.t ............................................. 1..2 ok 1 - [GET /] Successful ok 2 - Correct App name from caller ok t/charset_server.t ..................................... ok 1 - Got app ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 1..10 ok t/classes/Dancer2-Core-Factory/new.t ................... 1..5 ok 1 - use Dancer2::Core::Factory; ok 2 - An object of class 'Dancer2::Core::Factory' isa 'Dancer2::Core::Factory' ok 3 - Dancer2::Core::Factory->can('create') ok 4 - An object of class 'Dancer2::Template::TemplateToolkit' isa 'Dancer2::Template::TemplateToolkit' ok 5 - Correct layout set in the template ok t/classes/Dancer2-Core-Hook/new.t ...................... 1..12 ok 1 - use Dancer2::Core::Hook; ok 2 - Must provide code attribute ok 3 - Must provide name attribute ok 4 - Can create hook with name and code ok 5 - An object of class 'Dancer2::Core::Hook' isa 'Dancer2::Core::Hook' ok 6 - Dancer2::Core::Hook->can(...) ok 7 - before_template becomes before_template_render ok 8 - A reference of type 'CODE' isa 'CODE' ok 9 - Correct input for hook ok 10 - Hook returned proper output ok 11 - An object of class 'Dancer2::Core::Hook' isa 'Dancer2::Core::Hook' ok 12 - Hook crashing caught ok t/classes/Dancer2-Core-Request/new.t ................... 1..9 ok 1 - use Dancer2::Core::Request; # Subtest: Defaults ok 1 - An object of class 'Dancer2::Core::Request' isa 'Dancer2::Core::Request' ok 2 - Dancer2::Core::Request->can('env') ok 3 - A reference of type 'HASH' isa 'HASH' ok 4 - Dancer2::Core::Request->can(...) ok 5 - HTTP ENV key accept ok 6 - HTTP ENV key accept_charset ok 7 - HTTP ENV key accept_encoding ok 8 - HTTP ENV key accept_language ok 9 - HTTP ENV key connection ok 10 - HTTP ENV key keep_alive ok 11 - HTTP ENV key referer ok 12 - HTTP ENV key user_agent ok 13 - HTTP ENV key x_requested_with ok 14 - agent as alias to user_agent ok 15 - remote_address as alias to address ok 16 - Setting variables using DSL ok 17 - Read single variable ok 18 - Overwriting variables using vars() method ok 19 - Read variable ok 20 - Default path ok 21 - Default path_info ok 22 - Default method ok 23 - Correct request ID ok 24 - script_name derived from SCRIPT_NAME ok 25 - user derived from REMOTE_USER ok 26 - protocol derived from SERVER_PROTOCOL ok 27 - address derived from REMOTE_ADDR ok 28 - port derived from SERVER_PORT ok 29 - remote_host derived from REMOTE_HOST ok 30 - request_uri derived from REQUEST_URI ok 31 - Correct to_string ok 32 - Request successful 1..32 ok 2 - Defaults # Subtest: Create with single env ok 1 - 'Create with env hash' isa 'Dancer2::Core::Request' ok 2 - 'Create with single argument for env' isa 'Dancer2::Core::Request' ok 3 - env() attribute populated successfully 1..3 ok 3 - Create with single env # Subtest: Serializer ok 1 - Dancer2::Core::Request->can('serializer') ok 2 - No serializer set ok 3 - Cannot send random object to request as serializer ok 4 - Can create request with serializer ok 5 - Serializer set ok 6 - An object of class 'Serializer' isa 'Serializer' 1..6 ok 4 - Serializer # Subtest: Path when mounting ok 1 - Script name when mounted (script_name) ok 2 - Correct request_uri ok 3 - Full path when mounted (path) ok 4 - Mounted path when mounted (path_info) ok 5 - Request successful 1..5 ok 5 - Path when mounting # Subtest: Different method ok 1 - Correct method ok 2 - REQUEST_METHOD derived from env ok 3 - Request successful 1..3 ok 6 - Different method # Subtest: Checking request ID ok 1 - Correct request id ok 2 - Request successful 1..2 ok 7 - Checking request ID # Subtest: is_$method (head/post/get/put/delete/patch ok 1 - is_head ok 2 - Request successful ok 3 - is_post ok 4 - Request successful ok 5 - is_get ok 6 - Request successful ok 7 - is_put ok 8 - Request successful ok 9 - is_delete ok 10 - Request successful ok 11 - is_patch ok 12 - Request successful 1..12 ok 8 - is_$method (head/post/get/put/delete/patch # Subtest: Parameters (body/query/route) # Running test with XS_URL_DECODE # Running test with XS_PARSE_QUERY_STRING ok 1 - path is set ok 2 - method is set ok 3 - method is GET ok 4 - params are OK ok 5 - params accessor works ok 6 - params wantarray works ok 7 - Request successful ok 8 - path is set ok 9 - method is set ok 10 - method is POST ok 11 - Request presented well as string ok 12 - params are OK ok 13 - params wantarray works ok 14 - params wantarray works ok 15 - Request successful ok 16 - path is set ok 17 - method is set ok 18 - params are OK ok 19 - body params are OK ok 20 - query params are OK ok 21 - Request successful # Running test without XS_PARSE_QUERY_STRING ok 22 - path is set ok 23 - method is set ok 24 - method is GET ok 25 - params are OK ok 26 - params accessor works ok 27 - params wantarray works ok 28 - Request successful ok 29 - path is set ok 30 - method is set ok 31 - method is POST ok 32 - Request presented well as string ok 33 - params are OK ok 34 - params wantarray works ok 35 - params wantarray works ok 36 - Request successful ok 37 - path is set ok 38 - method is set ok 39 - params are OK ok 40 - body params are OK ok 41 - query params are OK ok 42 - Request successful # Running test without XS_URL_DECODE ok 43 - path is set ok 44 - method is set ok 45 - method is GET ok 46 - params are OK ok 47 - params accessor works ok 48 - params wantarray works ok 49 - Request successful ok 50 - path is set ok 51 - method is set ok 52 - method is POST ok 53 - Request presented well as string ok 54 - params are OK ok 55 - params wantarray works ok 56 - params wantarray works ok 57 - Request successful ok 58 - path is set ok 59 - method is set ok 60 - params are OK ok 61 - body params are OK ok 62 - query params are OK ok 63 - Request successful 1..63 ok 9 - Parameters (body/query/route) ok t/classes/Dancer2-Core-Request/serializers.t ........... # Subtest: Testing with CBOR ok 1 - Empty parameters ok 2 - Correct data using request->data ok 3 - Successful response ok 4 - Correct response 1..4 ok 1 - Testing with CBOR # Subtest: Testing with JSON ok 1 - Empty parameters ok 2 - Correct data using request->data ok 3 - Successful response ok 4 - Correct response 1..4 ok 2 - Testing with JSON 1..2 ok t/classes/Dancer2-Core-Response-Delayed/after_hooks.t .. # Subtest: delayed (not async) response ok 1 - Successful request for / ok 2 - response returned test file content 1..2 ok 1 - delayed (not async) response # Subtest: after hook flushes session headers for delayed response ok 1 - Successful request for /file ok 2 - Session returned test file name 1..2 ok 2 - after hook flushes session headers for delayed response 1..2 ok t/classes/Dancer2-Core-Response-Delayed/new.t .......... 1..18 ok 1 - use Dancer2::Core::Response::Delayed; ok 2 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' ok 3 - An object of class 'Dancer2::Core::Request' isa 'Dancer2::Core::Request' ok 4 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 5 - An object of class 'Dancer2::Core::Response::Delayed' isa 'Dancer2::Core::Response::Delayed' ok 6 - Dancer2::Core::Response::Delayed->can(...) ok 7 - Dancer2::Core::Response::Delayed->can(...) ok 8 - is_halted returns no ok 9 - has_passed returns no ok 10 - Callback not run yet ok 11 - An object of class 'Dancer2::Core::Request' isa 'Dancer2::Core::Request' ok 12 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 13 - Correct path in the request ok 14 - 'Got a responder callback' isa 'CODE' ok 15 - Correct response asynchronously ok 16 - Callback run ok 17 - we can access the response header ok 18 - 'Able to retrieve headers' isa 'HTTP::Headers' ok t/classes/Dancer2-Core-Response/new_from.t ............. 1..3 ok 1 - Dancer2::Core::Response->can(...) # Subtest: new_from_array 1..4 ok 1 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 2 - Correct status ok 3 - Correct content ok 4 - All headers correct ok 2 - new_from_array # Subtest: new_from_plack 1..5 ok 1 - An object of class 'Plack::Response' isa 'Plack::Response' ok 2 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 3 - Correct status ok 4 - Correct content ok 5 - All headers correct ok 3 - new_from_plack ok t/classes/Dancer2-Core-Role-Engine/with.t .............. 1..4 ok 1 - An object of class 'App' isa 'App' ok 2 - App->can(...) ok 3 - App->can(...) ok 4 - App consumes Dancer2::Core::Role::Hookable ok t/classes/Dancer2-Core-Role-Handler/with.t ............. 1..3 ok 1 - An object of class 'Handler' isa 'Handler' ok 2 - Handler->can('app') ok 3 - Handler consumes Dancer2::Core::Role::Handler ok t/classes/Dancer2-Core-Role-HasLocation/with.t ......... 1..11 # Defaults: ok 1 - An object of class 'App' isa 'App' ok 2 - App->can(...) ok 3 - App->can('_build_location') ok 4 - App consumes Dancer2::Core::Role::HasLocation ok 5 - Default caller # With lib/ and bin/: ok 6 - An object of class 'App' isa 'App' ok 7 - Got correct location with lib/ and bin/ # With .dancer file: ok 8 - An object of class 'App' isa 'App' ok 9 - Got correct location with .dancer file # blib/ ignored: ok 10 - An object of class 'App' isa 'App' ok 11 - blib/ dir is ignored ok t/classes/Dancer2-Core-Role-Serializer/with.t .......... 1..5 ok 1 - use Dancer2::Core::Hook; # Subtest: Successful 1..5 ok 1 - An object of class 'Serializer::OK' isa 'Serializer::OK' ok 2 - Correct content in before hook ok 3 - Correct content in after hook ok 4 - Serializing ok 5 - Deserializing ok 2 - Successful # Subtest: Unsuccessful 1..21 ok 1 - use Dancer2::Logger::Capture; ok 2 - An object of class 'Dancer2::Logger::Capture' isa 'Dancer2::Logger::Capture' ok 3 - An object of class 'Serializer::NotOK' isa 'Serializer::NotOK' ok 4 - Serialization result ok 5 - An object of class 'Dancer2::Logger::Capture::Trap' isa 'Dancer2::Logger::Capture::Trap' ok 6 - A reference of type 'ARRAY' isa 'ARRAY' ok 7 - One error caught ok 8 - A reference of type 'HASH' isa 'HASH' ok 9 - Two items in the error ok 10 - Correct level ok 11 - Correct error message ok 12 - An object of class 'Dancer2::Logger::Capture' isa 'Dancer2::Logger::Capture' ok 13 - An object of class 'Serializer::NotOK' isa 'Serializer::NotOK' ok 14 - Deserialization result ok 15 - An object of class 'Dancer2::Logger::Capture::Trap' isa 'Dancer2::Logger::Capture::Trap' ok 16 - A reference of type 'ARRAY' isa 'ARRAY' ok 17 - One error caught ok 18 - A reference of type 'HASH' isa 'HASH' ok 19 - Two items in the error ok 20 - Correct level ok 21 - Correct error message ok 3 - Unsuccessful # Subtest: support_content_type 1..7 ok 1 - An object of class 'Serializer::Generic' isa 'Serializer::Generic' ok 2 - Serializer::Generic->can('support_content_type') ok 3 - Empty returns undef ok 4 - Content type not supported ok 5 - Content type not supported (because not first) ok 6 - Content type supported when single ok 7 - Content type supported when first ok 4 - support_content_type # Subtest: Called with empty content 1..6 ok 1 - An object of class 'Serializer::Empty' isa 'Serializer::Empty' ok 2 - Serializer::Empty->can(...) ok 3 - Do not try to serialize without input ok 4 - Do not try to serialize with empty input ok 5 - Do not try to deserialize without input ok 6 - Do not try to deserialize with empty input ok 5 - Called with empty content ok t/classes/Dancer2-Core-Role-StandardResponses/with.t ... 1..24 # Checking our fake app ok 1 - An object of class 'App' isa 'App' ok 2 - App->can('response') ok 3 - An object of class 'Response' isa 'Response' # Checking our fake response ok 4 - An object of class 'Response' isa 'Response' ok 5 - An object of class 'Response' isa 'Response' ok 6 - status called ok 7 - status() works ok 8 - An object of class 'Response' isa 'Response' ok 9 - header called ok 10 - header() works ok 11 - An object of class 'Handler' isa 'Handler' ok 12 - Handler->can(...) # ->response ok 13 - An object of class 'Response' isa 'Response' ok 14 - Correct status code ok 15 - An object of class 'Response' isa 'Response' ok 16 - Correct header name ok 17 - Correct header value ok 18 - Correct response created # ->standard_response ok 19 - An object of class 'Response' isa 'Response' ok 20 - Correct status code ok 21 - An object of class 'Response' isa 'Response' ok 22 - Correct header name ok 23 - Correct header value ok 24 - Correct response 400 created ok t/classes/Dancer2-Core-Route/base.t .................... 1..3 # Subtest: no prefix, paths without a leading slash ok 1 - 'no+leading+slash' is a valid route pattern ok 2 - undef prefix prepends '/' to spec_route ok 3 - '' is a valid route pattern ok 4 - undef prefix prepends '/' to spec_route 1..4 ok 1 - no prefix, paths without a leading slash # Subtest: no prefix, paths with a leading slash ok 1 - '/+leading+slash' is a valid route pattern ok 2 - undef prefix does not prepend '/' to spec_route ok 3 - '/' is a valid route pattern ok 4 - undef prefix does not prepend '/' to spec_route ok 5 - '//' is a valid route pattern ok 6 - undef prefix does not prepend '/' to spec_route 1..6 ok 2 - no prefix, paths with a leading slash # Subtest: prefix and paths append ok 1 - '/prefixno+leading+slash' is a valid route pattern ok 2 - '/prefix' is a valid route pattern ok 3 - '/prefix/+leading+slash' is a valid route pattern ok 4 - '/prefix/' is a valid route pattern ok 5 - '/prefix//' is a valid route pattern 1..5 ok 3 - prefix and paths append ok t/classes/Dancer2-Core-Route/match.t ................... 1..73 ok 1 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 2 - got expected data for '/' ok 3 - got expected result for '/' ok 4 - dont match failing request ok 5 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 6 - got expected data for '/failure' ok 7 - got expected result for '/failure' ok 8 - dont match failing request ok 9 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 10 - got expected data for '/hello/sukria' ok 11 - got expected result for '/hello/sukria' ok 12 - dont match failing request ok 13 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 14 - got expected data for '/hello/' ok 15 - got expected result for '/hello/' ok 16 - dont match failing request ok 17 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 18 - got expected data for '/forum/' ok 19 - got expected result for '/forum/' ok 20 - dont match failing request ok 21 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 22 - got expected data for '/forum/' ok 23 - got expected result for '/forum/' ok 24 - dont match failing request ok 25 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 26 - got expected data for '/forum/mywebsite' ok 27 - got expected result for '/forum/mywebsite' ok 28 - dont match failing request ok 29 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 30 - got expected data for '/' ok 31 - got expected result for '/' ok 32 - dont match failing request ok 33 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 34 - got expected data for '/hello/sukria' ok 35 - got expected result for '/hello/sukria' ok 36 - dont match failing request ok 37 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 38 - got expected data for '/hello/sukria/' ok 39 - got expected result for '/hello/sukria/' ok 40 - dont match failing request ok 41 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 42 - got expected data for '/file/dist.ini' ok 43 - got expected result for '/file/dist.ini' ok 44 - dont match failing request ok 45 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 46 - got expected data for '/forum/dancer' ok 47 - got expected result for '/forum/dancer' ok 48 - dont match failing request ok 49 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 50 - got expected data for '/file/some/where/42' ok 51 - got expected result for '/file/some/where/42' ok 52 - dont match failing request ok 53 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 54 - got expected data for '/some/where/to/run/and/hide' ok 55 - got expected result for '/some/where/to/run/and/hide' ok 56 - dont match failing request ok 57 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 58 - got expected data for '/some/one/to/say/boo/' ok 59 - got expected result for '/some/one/to/say/boo/' ok 60 - dont match failing request ok 61 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 62 - got expected data for '/stuff48' ok 63 - got expected result for '/stuff48' ok 64 - dont match failing request ok 65 - An object of class 'Dancer2::Core::Route' isa 'Dancer2::Core::Route' ok 66 - got expected data for '/foo/stuff48' ok 67 - got expected result for '/foo/stuff48' ok 68 - dont match failing request ok 69 - named captures work # routes with options ok 70 - Route did not match ok 71 - Route matched ok 72 - More options - Route did not match - test 1 ok 73 - More options - Route did not match - test 2 ok t/classes/Dancer2-Core-Runner/environment.t ............ 1..6 ok 1 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' ok 2 - Default environment ok 3 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' ok 4 - Successfully set envinronment using DANCER_ENVIRONMENT ok 5 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' ok 6 - Successfully set environment using PLACK_ENV ok # Acme::Override::INET replaced IO::Socket::INET with IO::Socket::IP 0.37 t/classes/Dancer2-Core-Runner/new.t .................... 1..39 ok 1 - use Dancer2::Core::Runner; ok 2 - No runner defined in Dancer2 yet ok 3 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' # MIME types ok 4 - Dancer2::Core::Runner->can('mime_type') ok 5 - An object of class 'Dancer2::Core::MIME' isa 'Dancer2::Core::MIME' ok 6 - Have a runner (probably) in $Dancer2::runner ok 7 - 'Runner now defined' isa 'Dancer2::Core::Runner' # BUILD setting $Carp::Verbose ok 8 - traces not turned on (default ok 9 - Carp Verbose not turned on (default) ok 10 - traces turned on ok 11 - Carp Verbose turned on (using DANCER_TRACES) # server ok 12 - Dancer2::Core::Runner->can(...) ok 13 - An object of class 'HTTP::Server::PSGI' isa 'HTTP::Server::PSGI' ok 14 - HTTP::Server::PSGI->can('run') ok 15 - host set correctly in Server ok 16 - port set correctly in Server ok 17 - timeout set correctly in Server ok 18 - server_software set correctly in Server # Environment ok 19 - Default environment ok 20 - Successfully set envinronment using DANCER_ENVIRONMENT ok 21 - Successfully set environment using PLACK_ENV ok 22 - apphandler set to PSGI under PLACK_ENV ok 23 - apphandler set via DANCER_APPHANDLER # Server tokens ok 24 - Default no_server_tokens ok 25 - Successfully set no_server_tokens using DANCER_NO_SERVER_TOKENS # Startup info ok 26 - Default startup_info ok 27 - Successfully set startup_info using DANCER_STARTUP_INFO ok 28 - Dancer2::Core::Runner->can(...) ok 29 - Apps are empty at first ok 30 - No postponed hooks at first ok 31 - Runner registered application ok 32 - Runner registered the App's postponed hooks ok 33 - Dancer2::Core::Runner->can(...) ok 34 - A reference of type 'CODE' isa 'CODE' ok 35 - An object of class 'Server::Fake' isa 'Server::Fake' ok 36 - A reference of type 'CODE' isa 'CODE' ok 37 - start_server works ok 38 - Dancer2::Core::Runner->can('start') ok 39 - A reference of type 'CODE' isa 'CODE' ok t/classes/Dancer2-Core-Runner/psgi_app.t ............... 1..25 # All Apps ok 1 - 'Got PSGI app' isa 'CODE' ok 2 - App1 available ok 3 - App2 available ok 4 - App3 available # Specific Apps by parameters ok 5 - Took two apps from the Runner ok 6 - 'Got PSGI app' isa 'CODE' ok 7 - App1 available ok 8 - App3 available ok 9 - App2 is not available # Specific Apps via App objects ok 10 - 'Got PSGI app' isa 'CODE' ok 11 - App2 available ok 12 - App1 is not available ok 13 - App3 is not available # Specific apps by App names ok 14 - 'Got PSGI app' isa 'CODE' ok 15 - App2 is not available ok 16 - App1 available ok 17 - App3 available # Specific apps by App names with regular expression, v1 ok 18 - 'Got PSGI app' isa 'CODE' ok 19 - App2 is not available ok 20 - App1 available ok 21 - App3 available # Specific apps by App names with regular expression, v2 ok 22 - 'Got PSGI app' isa 'CODE' ok 23 - App1 is not available ok 24 - App2 available ok 25 - App3 available ok t/classes/Dancer2-Core/camelize.t ...................... 1..4 ok 1 - class_NAME camelized as ClassNAME ok 2 - class_nAME camelized as ClassNAME ok 3 - test camelized as Test ok 4 - class_name camelized as ClassName ok t/classes/Dancer2/import.t ............................. 1..34 ok 1 - Dancer2->can('runner') ok 2 - No runner by default ok 3 - 'Runner created' isa 'Dancer2::Core::Runner' ok 4 - 'Runner created' isa 'Dancer2::Core::Runner' ok 5 - Runner not recreated ok 6 - An object of class 'FakeRunner' isa 'FakeRunner' ok 7 - psgi_app calls Runner->psgi_app ok 8 - psgi_app works as expected ok 9 - :script is allowed ok 10 - :tests is allowed ok 11 - :syntax is allowed ok 12 - Must import key/value pairs ok 13 - Must import key/value pairs ok 14 - Must import key/value pairs unless prefixed by ! ok 15 - Must import key/value pairs unless prefixed by ! ok 16 - App::GettingDSL->can(...) ok 17 - App::GettingSelectiveDSL->can('get') ok 18 - get imported successfully ok 19 - Can import keywords selectively ok 20 - An object of class 'Dancer2::Core::Runner' isa 'Dancer2::Core::Runner' ok 21 - Correct number of Apps created so far ok 22 - All apps accounted for ok 23 - A reference of type 'CODE' isa 'CODE' ok 24 - Got original app response ok 25 - Can compose apps with appname ok 26 - An object of class 'Dancer2::Core::App' isa 'Dancer2::Core::App' ok 27 - Changed settings using with keyword ok 28 - no strict (control test) ok 29 - utf8 pragma not imported ok 30 - warnings pragma imported ok 31 - warnings pragma imported ok 32 - strict pragma imported ok 33 - warnings pragma imported ok 34 - utf8 pragma imported ok t/config_multiapp.t .................................... ok 1 - App1: config files found ok 2 - App1: config loaded properly ok 3 - Sub::App2: config files found ok 4 - Sub::App2: config loaded properly ok 5 - App3: config files found ok 6 - App3: config loaded properly 1..6 ok t/config_reader.t ...................................... ok 1 - config_files() only sees existing files ok 2 - role Dancer2::Core::Role::ConfigReader is consumed ok 3 - config_files() works ok 4 - config_files() does JSON too! # bad YAML file ok 5 ok 6 - config_files() works ok 7 - Configuration file parsing failure # config merging ok 8 - full merging of configuration hashes # config parsing ok 9 ok 10 ok 11 - normalized UTF-8 to utf-8 ok 12 ok 13 # default values ok 14 ok 15 - Configuration file charset failure ok 16 ok 17 - traces are not enabled ok 18 - traces are enabled ok 19 1..19 ok t/config_settings.t .................................... ok 1 - default value for 'port' is OK ok 2 - default value for 'content_type' is OK ok 3 - setting a new value ok 4 - new value has been set ok 5 - setting bar with set ok 6 - new value has been set ok 7 - set multiple values ok 8 - set multiple values successful 1..8 ok t/context-in-before.t .................................. 1..10 ok 1 - 'Got app' isa 'CODE' ok 2 - 'Context is actually an app now' isa 'Dancer2::Core::App' ok 3 - It is the correct app ok 4 - Dancer2::Core::App->can('app') ok 5 - 'When called ->app, we get te app again' isa 'Dancer2::Core::App' ok 6 - It is the correct app ok 7 - Same exact application (by reference) ok 8 - [GET /] status OK ok 9 - [GET /] content OK ok 10 - before hook called ok t/cookie.t ............................................. # Constructor ok 1 - An object of class 'Dancer2::Core::Cookie' isa 'Dancer2::Core::Cookie' ok 2 - Dancer2::Core::Cookie->can('to_header') # Setting values ok 3 ok 4 ok 5 - Stringifies to desired value ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 # accessors and defaults ok 12 ok 13 ok 14 ok 15 ok 16 ok 17 ok 18 ok 19 ok 20 - by default, path is / ok 21 - has_path ok 22 ok 23 - has_path ok 24 ok 25 ok 26 ok 27 ok 28 ok 29 ok 30 ok 31 ok 32 ok 33 ok 34 # expiration strings 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 ok 48 ok 49 ok 50 ok 51 ok 52 # to header ok 53 ok 54 ok 55 1..55 ok t/custom_dsl.t ......................................... ok 1 ok 2 - [GET /] Correct content ok 3 - [POST /] Correct content 1..3 ok t/dancer-test.t ........................................ 1..49 ok 1 ok 2 ok 3 ok 4 ok 5 - route /foo exists ok 6 - route ARRAY(0x1efdcb8) exists ok 7 - route Dancer2::Core::Request=HASH(0x1f1a3c0) exists ok 8 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 9 ok 10 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 11 ok 12 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 13 ok 14 - An object of class 'Dancer2::Core::Response' isa 'Dancer2::Core::Response' ok 15 ok 16 - response_content_is with /foo ok 17 - response_content_is with ARRAY(0x1efdcb8) ok 18 - response_content_is with Dancer2::Core::Request=HASH(0x1f1a3c0) ok 19 - response_content_is with Dancer2::Core::Response=HASH(0x40d0e20) ok 20 - response_content_isnt with /foo ok 21 - response_content_isnt with ARRAY(0x1efdcb8) ok 22 - response_content_isnt with Dancer2::Core::Request=HASH(0x1f1a3c0) ok 23 - response_content_isnt with Dancer2::Core::Response=HASH(0x40d0e20) ok 24 - response content matches (?^:igh) for GET /foo ok 25 - response content matches (?^:igh) for GET /foo ok 26 - response content matches (?^:igh) for GET /foo ok 27 - response content matches (?^:igh) for response object ok 28 - response content doesn't match (?^:ought) for GET /foo ok 29 - response content doesn't match (?^:ought) for GET /foo ok 30 - response content doesn't match (?^:ought) for GET /foo ok 31 - response content doesn't match (?^:ought) for response object ok 32 - response status is 200 for GET /foo ok 33 - response status is 200 for GET /foo ok 34 - response status is 200 for GET /foo ok 35 - response status is 200 for response object ok 36 - response status is not 203 for GET /foo ok 37 - response status is not 203 for GET /foo ok 38 - response status is not 203 for GET /foo ok 39 - response status is not 203 for response object ok 40 - headers include expected data for GET /foo ok 41 - headers include expected data for GET /foo ok 42 - headers include expected data for GET /foo ok 43 - headers include expected data for response object ok 44 - PARAMS get echoed by route ok 45 - file uploaded with supplied data ok 46 - file uploaded with supplied filename ok 47 - multi values for same key get echoed back ok 48 - multi utf8 value properly merge # extra headers in request ok 49 - extra headers included in request ok t/deserialize.t ........................................ 1..15 ok 1 - An object of class 'Dancer2::Logger::Capture' isa 'Dancer2::Logger::Capture' # Subtest: PUT request with parameters ok 1 - Parameters deserialized from params ok 2 - Parameters deserialized from data 1..2 ok 2 - PUT request with parameters # Verify Serializers decode into characters ok 3 - utf-8 string returns the same using the Dumper serializer ok 4 - utf-8 string returns the same using the JSON serializer ok 5 - utf-8 string returns the same using the YAML serializer # Decoding of mixed route and deserialized body params ok 6 - Integer from JSON body remains integer and route params decoded # Deserialze any body content that is allowed or undefined ok 7 - JSON body deserialized for DELETE requests ok 8 - JSON body deserialized for PATCH requests # Check serialization errors ok 9 - An object of class 'Dancer2::Logger::Capture::Trap' isa 'Dancer2::Logger::Capture::Trap' ok 10 - A reference of type 'ARRAY' isa 'ARRAY' ok 11 - One error caught ok 12 - A reference of type 'HASH' isa 'HASH' ok 13 - Two items in the error ok 14 - Correct level ok 15 - Correct error message ok t/dispatcher.t ......................................... 1..16 ok 1 - [/] Return code ok ok 2 - [/] Correct headers ok 3 - [/] Contents ok. (test 0) ok 4 - [/user/Johnny] Return code ok ok 5 - [/user/Johnny] Correct headers ok 6 - [/user/Johnny] Contents ok. (test 1) ok 7 - [/twoohfour] Return code ok ok 8 - [/twoohfour] Correct headers ok 9 - [/twoohfour] Contents ok. (test 2) ok 10 - [/haltme] Return code ok ok 11 - [/haltme] Correct headers ok 12 - [/haltme] Contents ok. (test 3) ok 13 - Return code ok. ok 14 - Length ok. ok 15 - contents ok ok 16 - didnt enter the second filter, because of halt ok t/dsl.t ................................................ ok 1 - Got app ok 2 - GET / correct content ok 3 - POST / correct content 1..3 ok t/dsl/any.t ............................................ 1..2 # Subtest: any with params ok 1 - Method GET works ok 2 - Method POST works ok 3 - Method PUT doesn't exist ok 4 - Method DELETE doesn't exist ok 5 - Method OPTIONS doesn't exist ok 6 - Method PATCH doesn't exist ok 7 - Method NONEXIST doesn't exist 1..7 ok 1 - any with params # Subtest: any without params ok 1 - Method GET works ok 2 - Method POST works ok 3 - Method PUT works ok 4 - Method DELETE works ok 5 - Method OPTIONS works ok 6 - Method PATCH works 1..6 ok 2 - any without params ok t/dsl/app.t ............................................ 1..2 ok 1 - An object of class 'Dancer2::Core::App' isa 'Dancer2::Core::App' ok 2 - Correct app name ok t/dsl/content.t ........................................ 1..1 # Subtest: content keyword can only be used within delayed response ok 1 - Request failed ok 2 - Correct response code ok 3 - Failed to use content keyword outside delayed response ok 4 - An object of class 'Dancer2::Logger::Capture' isa 'Dancer2::Logger::Capture' ok 5 - An object of class 'Dancer2::Logger::Capture::Trap' isa 'Dancer2::Logger::Capture::Trap' ok 6 - A reference of type 'ARRAY' isa 'ARRAY' ok 7 - Only one error ok 8 - Got formatted message ok 9 - Correct error message ok 10 - Rest of error okay 1..10 ok 1 - content keyword can only be used within delayed response ok t/dsl/delayed.t ........................................ 1..4 # Subtest: Testing an app with content keyword ok 1 - No responder yet ok 2 - 'Got a responder in the delayed callback' isa 'CODE' ok 3 - No writer yet ok 4 - Got a writer ok 5 - Successful request ok 6 - Correct content 1..6 ok 1 - Testing an app with content keyword # Subtest: Testing an app with multiple content keyword calls ok 1 - Successful request ok 2 - Correct content 1..2 ok 2 - Testing an app with multiple content keyword calls # Subtest: Testing an app without content keyword ok 1 - Successful request ok 2 - Correct content 1..2 ok 3 - Testing an app without content keyword # Subtest: Delayed response ignored for non-delayed content ok 1 - Successful request ok 2 - Correct content 1..2 ok 4 - Delayed response ignored for non-delayed content ok t/dsl/error_template.t ................................. ok 1 - Got app ok 2 - Got app # Subtest: /error ok 1 - send_error sets the status to 505 ok 2 - Error message looks good ok 3 ok 4 1..4 ok 3 - /error # Subtest: /public ok 1 - send_error sets the status to 510 ok 2 - Error message looks good 1..2 ok 4 - /public # Subtest: 404 with static template ok 1 - unknown route => 404 ok 2 - Error message looks good 1..2 ok 5 - 404 with static template # Subtest: /no_template ok 1 - send_error sets the status to 404 ok 2 - Error message looks good 1..2 ok 6 - /no_template 1..6 ok t/dsl/extend.t ......................................... 1..5 ok 1 - use line dsl can foo ok 2 - use line Foo returns bar ok 3 - intermediate package has no polluted namespace ok 4 - config specified DSL can foo ok 5 - config specified Foo returns baz ok t/dsl/halt.t ........................................... # Subtest: halt within routes ok 1 - Got app ok 2 - [/shortcircuit] Correct status ok 3 - [/shortcircuit] Correct content ok 4 - [/halt] Correct Server header ok 5 - [/halt] Correct X-Foo header 1..5 ok 1 - halt within routes # Subtest: halt in before hook ok 1 - Got app ok 2 - [/shortcircuit] Correct code with before hook ok 3 - [/shortcircuit] Correct content with before hook 1..3 ok 2 - halt in before hook 1..2 ok t/dsl/halt_with_param.t ................................ # Subtest: halt with parameter within routes ok 1 - Got app ok 2 - [/shortcircuit] Correct status ok 3 - [/shortcircuit] Correct content ok 4 - [/halt] Correct Server header ok 5 - [/halt] Correct X-Foo header 1..5 ok 1 - halt with parameter within routes # Subtest: halt with parameter in before hook ok 1 - Got app ok 2 - [/shortcircuit] Correct code with before hook ok 3 - [/shortcircuit] Correct content with before hook 1..3 ok 2 - halt with parameter in before hook 1..2 ok t/dsl/pass.t ........................................... # Subtest: pass within routes ok 1 - Got app ok 2 - [/pass] Correct status ok 3 - [/pass] Correct content ok 4 - [/pass] Correct X-Pass header 1..4 ok 1 - pass within routes 1..1 ok t/dsl/path.t ........................................... 1..4 # Subtest: / ok 1 - PATH_INFO empty or / ok 2 - D2 path_info matches $env ok 3 - D2 path_info matches Plack path_info ok 4 - D2 path is / ok 5 - Plack path is / ok 6 - Result successful ok 7 - script_name is empty 1..7 ok 1 - / # Subtest: /endpoint ok 1 - PATH_INFO /endpoint ok 2 - D2 path_info matches $env ok 3 - D2 path_info matches Plack path_info ok 4 - D2 path is / ok 5 - Plack path is / ok 6 - Result successful ok 7 - script_name is empty 1..7 ok 2 - /endpoint # Subtest: /mounted/ ok 1 - PATH_INFO empty or / ok 2 - D2 path_info matches $env ok 3 - D2 path_info matches Plack path_info ok 4 - D2 path is / ok 5 - Plack path is / ok 6 - Result successful ok 7 - script_name is /mounted 1..7 ok 3 - /mounted/ # Subtest: /mounted/endpoint ok 1 - PATH_INFO /endpoint ok 2 - D2 path_info matches $env ok 3 - D2 path_info matches Plack path_info ok 4 - D2 path is / ok 5 - Plack path is / ok 6 - Result successful ok 7 - script_name is /mounted 1..7 ok 4 - /mounted/endpoint ok t/dsl/send_file.t ...................................... ok 1 - Got app # Subtest: Text content ok 1 - send_file sets the status to 200 ok 2 - Text content type has UTF-8 charset ok 3 - Text content contains UTF-8 characters 1..3 ok 2 - Text content # Subtest: Binary content ok 1 - send_file sets the status to 200 (binary content) ok 2 - send_file returns immediately with content ok 3 - correct content_type in response 1..3 ok 3 - Binary content # Subtest: string refs ok 1 - send_file set status to 200 (string ref) ok 2 - stringref content 1..2 ok 4 - string refs # Subtest: filehandles ok 1 - send_file set status to 200 (filehandle) ok 2 - filehandle content 1..2 ok 5 - filehandles # Subtest: no streaming ok 1 - send_file set status to 200 (no streaming) ok 2 - no streaming - content 1..2 ok 6 - no streaming # Subtest: options streaming ok 1 - send_file set status to 200 (options streaming) ok 2 - options streaming - content 1..2 ok 7 - options streaming # Subtest: send_file returns correct content type ok 1 - send_file returns success ok 2 - send_file returns correct content_type 1..2 ok 8 - send_file returns correct content type 1..8 ok t/dsl/splat.t .......................................... 1..4 ok 1 - Correct params ok 2 - splat behaves as expected ok 3 - got a 200 ok 4 - got expected response ok t/dsl/to_app.t ......................................... 1..2 ok 1 - Got first App ok 2 - Got second App ok t/engine.t ............................................. ok 1 - An object of class 'Dancer2::Template::Tiny' isa 'Dancer2::Template::Tiny' ok 2 - Consumed Role::Engine ok 3 - Consumed Role::Template ok 4 - Correct engine name ok 5 - An object of class 'Dancer2::Core::App' isa 'Dancer2::Core::App' # logger ok 6 - Built logger successfully with proper name ok 7 - Failed creating logger with illegal name ok 8 - Correct response from override # session ok 9 - Built session successfully with proper name ok 10 - Failed creating session with illegal name ok 11 - Correct response from override # template ok 12 - Built template successfully with proper name ok 13 - Failed creating template with illegal name ok 14 - Correct response from override 1..14 ok t/error.t .............................................. # Subtest: basic defaults of Error object ok 1 - code ok 2 - title ok 3 - message ok 4 - error content contains css path relative to uri_base 1..4 ok 1 - basic defaults of Error object # Subtest: send_error in route ok 1 - Got app ok 2 - send_error sets the status to 500 ok 3 - Error message looks good ok 4 - Response has appropriate content type after serialization 1..4 ok 2 - send_error in route # Subtest: send_error with custom stuff ok 1 - Got app ok 2 - send_error sets the status to 542 ok 3 - Error message looks good 1..3 ok 3 - send_error with custom stuff # Subtest: Response->error() ok 1 - An object of class 'Dancer2::Core::Error' isa 'Dancer2::Core::Error' ok 2 - response code is 418 ok 3 - response content overriden by error ok 4 - error code title is present ok 5 - response is halted 1..5 ok 4 - Response->error() # Subtest: Throwing an error with a response ok 1 - 'Error->throw() accepts a response' isa 'Dancer2::Core::Response' 1..1 ok 5 - Throwing an error with a response # Subtest: Error with show_errors: 0 ok 1 1..1 ok 6 - Error with show_errors: 0 # Subtest: Error with show_errors: 1 ok 1 1..1 ok 7 - Error with show_errors: 1 # Subtest: App dies with serialized error ok 1 - 'Got app' isa 'CODE' # [AppDies:26482] error @2015-09-12 00:13:04> Route exception: oh no in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 ok 2 - /die returns 500 ok 3 - JSON decoding serializer error produces no errors ok 4 - 'Error deserializes to a hash' isa 'HASH' ok 5 - Get expected error message 1..5 ok 8 - App dies with serialized error # Subtest: Error with exception object ok 1 - Error content contains exception message 1..1 ok 9 - Error with exception object 1..9 ok t/factory.t ............................................ ok 1 ok 2 ok 3 - Failure to load nonexistent class ok 4 - An object of class 'Dancer2::Logger::Console' isa 'Dancer2::Logger::Console' 1..4 ok t/file_utils.t ......................................... 1..20 ok 1 - Failure opening nonexistent file ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 - path_or_empty on non-existent path ok 12 - path_or_empty on an existing path ok 13 - path /,b,/c -> /b//c ok 14 - path /, /b -> /b # escape_filename ok 15 ok 16 ok 17 ok 18 ok 19 ok 20 ok t/forward.t ............................................ ok 1 - Got app ok 2 - [GET /] Correct code ok 3 - [GET /] Correct content ok 4 - [GET /bounce] Correct code ok 5 - [GET /bounce] Correct content ok 6 - [GET /bounce/thesethings/] Correct code ok 7 - [GET /bounce/thesethings/] Correct content ok 8 - [GET /bounce2/adding_params/] Correct code ok 9 - [GET /bounce2/adding_params/] Correct content ok 10 - [GET /go_to_post/] Correct code ok 11 - [GET /go_to_post/] Correct content ok 12 - [GET /bounce/] Correct content length ok 13 - [GET /bounce/] Correct content type ok 14 - [GET /bounce/] Correct content type charset ok 15 - [GET /bounce/] Correct Server ok 16 - [POST /] Correct code ok 17 - [POST /] Correct content ok 18 - [POST /bounce/] Correct code ok 19 - [POST /bounce/] Correct content ok 20 - [POST /bounce/] Correct content length ok 21 - [POST /bounce/] Correct content type ok 22 - [POST /bounce/] Correct content type charset ok 23 - [POST /bounce/] Correct Server 1..23 ok t/forward_before_hook.t ................................ 1..4 ok 1 - Got app ok 2 - forward in before hook ok 3 - redirect in before hook ok 4 - .. and the response content is correct ok t/forward_test_tcp.t ................................... ok 1 - Got app 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 ok 18 ok 19 ok 20 ok 21 1..21 ok t/hooks.t .............................................. # Subtest: Request hooks ok 1 - before_request was called ok 2 - after_request was called ok 3 - before_serializer was called ok 4 - after_serializer was called ok 5 - before_file_render undef # after hook called once per request ok 6 - after_request called after redirect # Serializer hooks ok 7 - before_serializer not called because content was empty # About to forward! ok 8 - after_request called only once after forward ok 9 - Response serialized ok 10 - before_serializer was called ok 11 - after_serializer was called ok 12 - before_file_render undef 1..12 ok 1 - Request hooks # Subtest: file render hooks ok 1 - before_file_render was called ok 2 - after_file_render was called 1..2 ok 2 - file render hooks # Subtest: template render hook ok 1 - before_template_render was called ok 2 - after_template_render was called 1..2 ok 3 - template render hook # Subtest: before can halt ok 1 1..1 ok 4 - before can halt # Subtest: route_exception # [App::WithError:26488] error @2015-09-12 00:13:07> Route exception: this is a route exception at t/hooks.t line 123. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 ok 1 ok 2 ok 3 ok 4 ok 5 ok 6 ok 7 1..7 ok 5 - route_exception 1..5 ok t/http_methods.t ....................................... 1..12 ok 1 - Got app ok 2 - PUT / ok 3 - DELETE / ok 4 - POST / ok 5 - PATCH / ok 6 - GET / ok 7 - OPTIONS / ok 8 - HEAD / ok 9 - Content-Length for HEAD ok 10 - Response->is_success is false when using illegal HTTP method ok 11 - Illegal method should return 405 code ok 12 - Illegal method should have "Method Not Allowed" in the content ok t/http_status.t ........................................ 1..11 # HTTP status ok 1 - HTTP status looks good for undef ok 2 - HTTP status looks good for 200 ok 3 - HTTP status looks good for Not Found ok 4 - HTTP status looks good for bad_request ok 5 - HTTP status looks good for i_m_a_teapot ok 6 - HTTP status looks good for error ok 7 - HTTP status looks good for 911 # HTTP status_message ok 8 - HTTP status message looks good for undef ok 9 - HTTP status message looks good for 200 ok 10 - HTTP status message looks good for error ok 11 - HTTP status message looks good for 911 ok t/issues/gh-596.t ...................................... 1..2 ok 1 - Successful ok 2 - Correct server tokens configuration ok t/issues/gh-634.t ...................................... 1..3 # Subtest: test Logger::File with log_dir specified 1..6 ok 1 - An object of class 'Dancer2::Logger::File' isa 'Dancer2::Logger::File' ok 2 - Logger got correct environment ok 3 - Logger got correct location ok 4 - Logger got correct log directory ok 5 - Logger got correct filename ok 6 - Logger got correct log file ok 1 - test Logger::File with log_dir specified # Subtest: test Logger::File with log_dir NOT specified 1..6 ok 1 - An object of class 'Dancer2::Logger::File' isa 'Dancer2::Logger::File' ok 2 - Logger got correct environment ok 3 - Logger got correct location ok 4 - Logger got correct log directory ok 5 - Logger got correct filename ok 6 - Logger got correct log file ok 2 - test Logger::File with log_dir NOT specified # Subtest: test Logger::File with non-existent log_dir specified 1..6 ok 1 - An object of class 'Dancer2::Logger::File' isa 'Dancer2::Logger::File' ok 2 - Logger got correct environment ok 3 - Logger got correct location ok 4 - Logger got correct log directory ok 5 - Logger got correct filename ok 6 - Logger got correct log file ok 3 - test Logger::File with non-existent log_dir specified ok t/issues/gh-639/fails/issue.t .......................... 1..1 ok 1 - Correct compilation issue ok t/issues/gh-639/succeeds/issue.t ....................... 1..1 ok 1 - No compilation issue ok t/issues/gh-650/gh-650.t ............................... ok 1 - Got app ok 2 - Successful request ok 3 - Correct content ok 4 - Successful request ok 5 - Correct content 1..5 ok t/issues/gh-723.t ...................................... 1..4 ok 1 - A reference of type 'CODE' isa 'CODE' # Subtest: GET / 1..2 ok 1 - Correct code ok 2 - Correct content ok 2 - GET / # Subtest: GET /test/ 1..2 ok 1 - Correct code ok 2 - Correct content ok 3 - GET /test/ # Subtest: Missing POST params 1..4 ok 1 - A reference of type 'HASH' isa 'HASH' ok 2 - Got params ok 3 - Correct code ok 4 - Correct content ok 4 - Missing POST params ok t/issues/gh-730.t ...................................... 1..3 ok 1 - A reference of type 'CODE' isa 'CODE' # Subtest: Runner config 1..5 ok 1 - No default behind_proxy ok 2 - Single app registered ok 3 - 'Correct app registered' isa 'Dancer2::Core::App' ok 4 - behind_proxy not defined by default in an app ok 5 - Set behind_proxy locally in the app to one ok 2 - Runner config # Subtest: Using App-level settings 1..3 ok 1 - Runner's behind_proxy is still the default ok 2 - [GET /] Correct code ok 3 - [GET /] Local value achieved ok 3 - Using App-level settings ok t/issues/gh-762.t ...................................... # Subtest: /error ok 1 - send_error sets the status to 404 ok 2 - Error message looks good ok 3 ok 4 1..4 ok 1 - /error # Subtest: FourOhFour with views template ok 1 - unknown route => 404 ok 2 - Error message looks good ok 3 ok 4 1..4 ok 2 - FourOhFour with views template 1..2 ok t/issues/gh-794.t ...................................... 1..2 ok 1 - Correct JSON content in POST # [App:26499] core @2015-09-12 00:13:15> Failed to deserialize the request: malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "invalid") at /home/fly1800/var/megalib/JSON.pm line 171. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Request.pm l. 189 not ok 2 - Failed to decode invalid content # TODO Return 500 Internal Server Error # Failed (TODO) test 'Failed to decode invalid content' # at t/issues/gh-794.t line 27. # got: '200' # expected: '500' ok t/issues/gh-797.t ...................................... # Subtest: Basic response failing # [App:26500] core @2015-09-12 00:13:16> Failed to deserialize the request: 'false' expected, at character offset 0 (before "foo=bar") at /home/fly1800/var/megalib/JSON.pm line 171. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Request.pm l. 189 not ok 1 - [POST /] Failed when sending regular params # TODO 500 when deserializing bad input # Failed (TODO) test '[POST /] Failed when sending regular params' # at t/issues/gh-797.t line 29. # got: '200' # expected: '500' 1..1 ok 1 - Basic response failing # Subtest: Basic response ok 1 - [POST /] Correct response code ok 2 - [POST /] Correct response data 1..2 ok 2 - Basic response # Subtest: Empty POST ok 1 - [POST /] Correct response code with empty post body 1..1 ok 3 - Empty POST 1..3 ok t/issues/gh-799.t ...................................... 1..1 # Subtest: Logger can access request ok 1 - An object of class 'Dancer2::Core::Request' isa 'Dancer2::Core::Request' ok 2 - An object of class 'Dancer2::Logger::Capture' isa 'Dancer2::Logger::Capture' ok 3 - Dancer2::Logger::Capture->can('format_message') ok 4 - An object of class 'Dancer2::Logger::Capture::Trap' isa 'Dancer2::Logger::Capture::Trap' ok 5 - Messages logged successfully ok 6 - Dancer2::Logger::Capture->can('format_message') ok 7 - Correct formatted message created ok 8 - Successful request 1..8 ok 1 - Logger can access request ok t/issues/gh-936.t ...................................... # Subtest: does-not-exist ok 1 - status is 404 ok 2 - Error message looks good 1..2 ok 1 - does-not-exist # Subtest: anywhere ok 1 - status is 404 ok 2 - Error message looks good 1..2 ok 2 - anywhere 1..2 ok t/issues/gh-944.t ...................................... # Subtest: response set in before hook ok 1 - Successful request ok 2 - Correct content 1..2 ok 1 - response set in before hook # Subtest: response content set in route ok 1 - Successful request ok 2 - route return value ignored ok 3 - Correct content 1..3 ok 2 - response content set in route 1..2 ok t/issues/memleak/die_in_hooks.t ........................ 1..6 ok 1 - Object exists ok 2 - 'It is an object' isa 'Foo::Destroy' ok 3 - Request failed ok 4 - Failure status ok 5 - Memory cleaned ok 6 - Correct error ok t/log_die_before_hook.t ................................ ok 1 - Got app ok 2 - Got error message when a before hook dies 1..2 ok t/log_levels.t ......................................... 1..6 ok 1 - Successful response ok 2 - Correct content ok 3 - Log levels work ok 4 - Successful response ok 5 - Correct content ok 6 - Log levels work ok t/logger.t ............................................. ok 1 ok 2 # Subtest: log level and capture ok 1 ok 2 1..2 ok 3 - log level and capture # Subtest: logger file ok 1 1..1 ok 4 - logger file 1..4 ok t/logger_console.t ..................................... ok 1 - core message sent ok 2 - debug message sent ok 3 - info message sent ok 4 - warning message sent ok 5 - error message sent 1..5 ok t/memory_cycles.t ...................................... ok 1 - runner has no memory cycles ok 2 - App has no memory cycles 1..2 ok t/mime.t ............................................... 1..12 ok 1 - use Dancer2::Core::MIME; ok 2 - user defined mime_types are empty ok 3 - text/foo is saved ok 4 - mime type foo is found ok 5 - mime type bar is found ok 6 - mime type for extension .bar is found ok 7 - mime type for no extension is the default ok 8 - mime gets correctly lowercased for user types ok 9 - mime gets correctly lowercased for system types ok 10 - alias of unkown mime type gets default mime type ok 11 - name_or_type does not change if it seems a mime type string ok 12 - name_or_type knows svg ok t/multi_apps.t ......................................... ok 1 - 'Got app' isa 'CODE' ok 2 - Got wiki root ok 3 - Got forum root ok 4 - 'Got app' isa 'CODE' ok 5 - Got /wiki path ok 6 - Got /forum path 1..6 ok t/multi_apps_forward.t ................................. 1..9 ok 1 - [GET /] OK ok 2 - [GET /] OK content ok 3 - [GET /forward] OK ok 4 - [GET /forward] OK content ok 5 - Cannot find /new ok 6 - [GET /] OK ok 7 - [GET /] OK content # Old format using psgi_app to loop over multiple apps ok 8 - [GET /forward_to_new] OK ok 9 - [GET /forward_to_new] OK content ok t/multiapp_template_hooks.t ............................ 1..32 # Check App1 only calls first hook, not both ok 1 - 'Got app for test' isa 'CODE' ok 2 - '[App1] Tokens' isa 'HASH' ok 3 - 'Got app object inside App1' isa 'Dancer2::Core::App' ok 4 - Request reached to correct App (App1) ok 5 - App1 has a single before_template hook defined ok 6 - [GET /] Successful ok 7 - [GET /] Correct content ok 8 - Only App1's before_template hook was called # Check App2 only calls second hook, not both ok 9 - 'Got app for test' isa 'CODE' ok 10 - '[App2] Tokens' isa 'HASH' ok 11 - 'Got app object inside App2' isa 'Dancer2::Core::App' ok 12 - Request reached to correct App (App2) ok 13 - App2 has a single before_template hook defined ok 14 - [GET /] Successful ok 15 - [GET /] Correct content ok 16 - Only App2's before_template hook was called # Check both apps only call the first hook (correct app), not both ok 17 - 'Got app for test' isa 'CODE' ok 18 - '[App1] Tokens' isa 'HASH' ok 19 - 'Got app object inside App1' isa 'Dancer2::Core::App' ok 20 - Request reached to correct App (App1) ok 21 - App1 has a single before_template hook defined ok 22 - [GET /] Successful ok 23 - [GET /] Correct content ok 24 - Only App1's before_template hook was called (full PSGI app) # Check both apps only call the second hook (correct app), not both ok 25 - 'Got app for test' isa 'CODE' ok 26 - '[App2] Tokens' isa 'HASH' ok 27 - 'Got app object inside App2' isa 'Dancer2::Core::App' ok 28 - Request reached to correct App (App2) ok 29 - App2 has a single before_template hook defined ok 30 - [GET /2] Successful ok 31 - [GET /2] Correct content ok 32 - Only App2's before_template hook was called (full PSGI app) ok t/named_apps.t ......................................... ok 1 - Got app content path foo ok 2 - Got app content path bar 1..2 ok t/plugin_import.t ...................................... ok 1 - Got app ok 2 - the plugin exported its keyword ok 3 - the original import method of the plugin is still there # Subtest: import flags ok 1 - with :no_dsl, the Dancer's dsl is not imported. ok 2 - without any import flag, the DSL is imported 1..2 ok 4 - import flags 1..4 ok t/plugin_multiple_apps.t ............................... ok 1 - Got app ok 2 - /subapp1 ok 3 - /subapp2 1..3 ok t/plugin_register.t .................................... # Subtest: reserved keywords ok 1 - Can't use Dancer2's reserved keywords ok 2 - Can't use invalid names for keywords 1..2 ok 1 - reserved keywords # Subtest: plugin reserved keywords ok 1 - can register a new keyword ok 2 - cant register a keyword already registered by another plugin 1..2 ok 2 - plugin reserved keywords 1..2 ok t/plugin_syntax.t ...................................... # Subtest: global and route keywords ok 1 - Got app ok 2 - route defined by a plugin ok 3 - DSL keyword wrapped by a plugin ok 4 - plugin_setting returned the expected config ok 5 - app name is correct 1..5 ok 1 - global and route keywords # Subtest: plugin old syntax ok 1 - Got app ok 2 - foo plugin 1..2 ok 2 - plugin old syntax # Subtest: caller_dsl ok 1 - Got app ok 2 - Correct content 1..2 ok 3 - caller_dsl # Subtest: hooks in plugins ok 1 - Got app ok 2 - the hook has not been executed ok 3 - ... route is rendered ok 4 - ... and the hook has been executed exactly once ok 5 - ... hook does not influence rendered content by return value ok 6 - Vars preserved from hooks ok 7 - hooks added by on_plugin_import dont stop hooks being added later 1..7 ok 4 - hooks in plugins 1..4 ok t/psgi_app.t ........................................... 1..25 # All Apps ok 1 - 'Got PSGI app' isa 'CODE' ok 2 - App1 available ok 3 - App2 available ok 4 - App3 available # Specific Apps by parameters ok 5 - Took two apps from the Runner ok 6 - 'Got PSGI app' isa 'CODE' ok 7 - App1 available ok 8 - App3 available ok 9 - App2 is not available # Specific Apps via App objects ok 10 - 'Got PSGI app' isa 'CODE' ok 11 - App2 available ok 12 - App1 is not available ok 13 - App3 is not available # Specific apps by App names ok 14 - 'Got PSGI app' isa 'CODE' ok 15 - App2 is not available ok 16 - App1 available ok 17 - App3 available # Specific apps by App names with regular expression, v1 ok 18 - 'Got PSGI app' isa 'CODE' ok 19 - App2 is not available ok 20 - App1 available ok 21 - App3 available # Specific apps by App names with regular expression, v2 ok 22 - 'Got PSGI app' isa 'CODE' ok 23 - App1 is not available ok 24 - App2 available ok 25 - App3 available ok t/psgi_app_forward_and_pass.t .......................... 1..4 ok 1 - A reference of type 'CODE' isa 'CODE' ok 2 - Simple request ok 3 - Passing from App to App works ok 4 - Forwarding from App to App works ok t/redirect.t ........................................... # Subtest: basic redirects ok 1 - Got app ok 2 - [GET /] Correct code ok 3 - [GET /] Correct content ok 4 - [GET /] Correct content-type ok 5 - [GET /bounce] Correct code ok 6 - [GET /redirect] Correct code ok 7 - Correct Location header ok 8 - Correct X-Foo header ok 9 - [GET /redirect_querystring] Correct code ok 10 - Correct Location header 1..10 ok 1 - basic redirects # Subtest: absolute and relative redirects ok 1 - Got app ok 2 - Correct Location header ok 3 - Correct Location header ok 4 - Correct Location header 1..4 ok 2 - absolute and relative redirects # Subtest: redirect behind a proxy ok 1 - Got app ok 2 - behind a proxy, host() is read from X_FORWARDED_HOST ok 3 - ... and the scheme is read from HTTP_FORWARDED_PROTO ok 4 - ... or from X_FORWARDED_PROTOCOL ok 5 - ... or from X_FORWARDED_PROTO 1..5 ok 3 - redirect behind a proxy # Subtest: redirect behind multiple proxies ok 1 - Got app ok 2 - behind multiple proxies, host() is read from X_FORWARDED_HOST ok 3 - ... and the scheme is read from HTTP_FORWARDED_PROTO ok 4 - ... or from X_FORWARDED_PROTOCOL 1..4 ok 4 - redirect behind multiple proxies 1..4 ok t/release-distmeta.t ................................... skipped: these tests are for release candidate testing t/release-pod-syntax.t ................................. skipped: these tests are for release candidate testing t/request.t ............................................ # Run test with XS_URL_DECODE # Run test with XS_PARSE_QUERY_STRING # tests for accessors 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 ok 18 ok 19 ok 20 ok 21 ok 22 ok 23 ok 24 ok 25 # tests params ok 26 # tests cookies ok 27 - multiple cookies extracted ok 28 ok 29 # tests for uri_for ok 30 ok 31 ok 32 ok 33 - uri_for returns a URI (with $dont_escape) ok 34 ok 35 ok 36 ok 37 ok 38 # testing behind proxy ok 39 ok 40 ok 41 # testing behind proxy when optional headers are not set ok 42 ok 43 ok 44 # testing path, dispatch_path and uri_base ok 45 - path corrent when empty PATH_INFO ok 46 - uri_base correct when empty PATH_INFO ok 47 - dispatch_path correct when empty PATH_INFO ok 48 - path corrent when empty SCRIPT_NAME ok 49 - uri_base handles empty SCRIPT_NAME ok 50 - dispatch_path handles empty SCRIPT_NAME ok 51 - path corrent when both PATH_INFO and SCRIPT_NAME set ok 52 - uri_base correct when both PATH_INFO and SCRIPT_NAME set ok 53 - dispatch_path correct when both PATH_INFO and SCRIPT_NAME set ok 54 - path corrent when calculated from REQUEST_URI ok 55 - uri_base correct when calculated from REQUEST_URI ok 56 - dispatch_path correct when calculated from REQUEST_URI # testing forward ok 57 - path is / ok 58 - method is get ok 59 - params are parsed ok 60 - path is changed ok 61 - method is unchanged ok 62 - params are not touched ok 63 - path is changed ok 64 - method is changed ok 65 - params are not touched # testing unicode params ok 66 - multi byte unicode chars work in param keys and values # Run test without XS_PARSE_QUERY_STRING # tests for accessors ok 67 ok 68 ok 69 ok 70 ok 71 ok 72 ok 73 ok 74 ok 75 ok 76 ok 77 ok 78 ok 79 ok 80 ok 81 ok 82 ok 83 ok 84 ok 85 ok 86 ok 87 ok 88 ok 89 ok 90 ok 91 # tests params ok 92 # tests cookies ok 93 - multiple cookies extracted ok 94 ok 95 # tests for uri_for ok 96 ok 97 ok 98 ok 99 - uri_for returns a URI (with $dont_escape) ok 100 ok 101 ok 102 ok 103 ok 104 # testing behind proxy ok 105 ok 106 ok 107 # testing behind proxy when optional headers are not set ok 108 ok 109 ok 110 # testing path, dispatch_path and uri_base ok 111 - path corrent when empty PATH_INFO ok 112 - uri_base correct when empty PATH_INFO ok 113 - dispatch_path correct when empty PATH_INFO ok 114 - path corrent when empty SCRIPT_NAME ok 115 - uri_base handles empty SCRIPT_NAME ok 116 - dispatch_path handles empty SCRIPT_NAME ok 117 - path corrent when both PATH_INFO and SCRIPT_NAME set ok 118 - uri_base correct when both PATH_INFO and SCRIPT_NAME set ok 119 - dispatch_path correct when both PATH_INFO and SCRIPT_NAME set ok 120 - path corrent when calculated from REQUEST_URI ok 121 - uri_base correct when calculated from REQUEST_URI ok 122 - dispatch_path correct when calculated from REQUEST_URI # testing forward ok 123 - path is / ok 124 - method is get ok 125 - params are parsed ok 126 - path is changed ok 127 - method is unchanged ok 128 - params are not touched ok 129 - path is changed ok 130 - method is changed ok 131 - params are not touched # testing unicode params ok 132 - multi byte unicode chars work in param keys and values # Run test without XS_URL_DECODE # tests for accessors ok 133 ok 134 ok 135 ok 136 ok 137 ok 138 ok 139 ok 140 ok 141 ok 142 ok 143 ok 144 ok 145 ok 146 ok 147 ok 148 ok 149 ok 150 ok 151 ok 152 ok 153 ok 154 ok 155 ok 156 ok 157 # tests params ok 158 # tests cookies ok 159 - multiple cookies extracted ok 160 ok 161 # tests for uri_for ok 162 ok 163 ok 164 ok 165 - uri_for returns a URI (with $dont_escape) ok 166 ok 167 ok 168 ok 169 ok 170 # testing behind proxy ok 171 ok 172 ok 173 # testing behind proxy when optional headers are not set ok 174 ok 175 ok 176 # testing path, dispatch_path and uri_base ok 177 - path corrent when empty PATH_INFO ok 178 - uri_base correct when empty PATH_INFO ok 179 - dispatch_path correct when empty PATH_INFO ok 180 - path corrent when empty SCRIPT_NAME ok 181 - uri_base handles empty SCRIPT_NAME ok 182 - dispatch_path handles empty SCRIPT_NAME ok 183 - path corrent when both PATH_INFO and SCRIPT_NAME set ok 184 - uri_base correct when both PATH_INFO and SCRIPT_NAME set ok 185 - dispatch_path correct when both PATH_INFO and SCRIPT_NAME set ok 186 - path corrent when calculated from REQUEST_URI ok 187 - uri_base correct when calculated from REQUEST_URI ok 188 - dispatch_path correct when calculated from REQUEST_URI # testing forward ok 189 - path is / ok 190 - method is get ok 191 - params are parsed ok 192 - path is changed ok 193 - method is unchanged ok 194 - params are not touched ok 195 - path is changed ok 196 - method is changed ok 197 - params are not touched # testing unicode params ok 198 - multi byte unicode chars work in param keys and values 1..198 ok t/request_upload.t ..................................... # Run test with XS_URL_DECODE # Run test with XS_PARSE_QUERY_STRING ok 1 - non-existent upload as array is empty ok 2 - ... and non-existent upload as scalar is undef ok 3 - content for first upload is ok, via 'upload' ok 4 - ... content for second as well ok 5 - ... content for other also good # headers ok 6 # type ok 7 ok 8 - content for upload \#3 as a scalar is good, via req->upload ok 9 - content for upload \#6 is good ok 10 ok 11 - An object of class 'Dancer2::Core::Request::Upload' isa 'Dancer2::Core::Request::Upload' ok 12 - filename is ok ok 13 - file handle is defined ok 14 - filename is accessible via params ok 15 - file '/tmp/v4ZHlXoZ9H/yappo6.txt' has been copied ok 16 - hardlink '/tmp/v4ZHlXoZ9H/hardlink' has been created ok 17 - temp file exists while HTTP::Body lives ok 18 - temp file is removed when HTTP::Body object dies # testing failing open for tempfile ok 19 # Run test without XS_PARSE_QUERY_STRING ok 20 - non-existent upload as array is empty ok 21 - ... and non-existent upload as scalar is undef ok 22 - content for first upload is ok, via 'upload' ok 23 - ... content for second as well ok 24 - ... content for other also good # headers ok 25 # type ok 26 ok 27 - content for upload \#3 as a scalar is good, via req->upload ok 28 - content for upload \#6 is good ok 29 ok 30 - An object of class 'Dancer2::Core::Request::Upload' isa 'Dancer2::Core::Request::Upload' ok 31 - filename is ok ok 32 - file handle is defined ok 33 - filename is accessible via params ok 34 - file '/tmp/zZHLs40V9e/yappo6.txt' has been copied ok 35 - hardlink '/tmp/zZHLs40V9e/hardlink' has been created ok 36 - temp file exists while HTTP::Body lives ok 37 - temp file is removed when HTTP::Body object dies # testing failing open for tempfile ok 38 # Run test without XS_URL_DECODE ok 39 - non-existent upload as array is empty ok 40 - ... and non-existent upload as scalar is undef ok 41 - content for first upload is ok, via 'upload' ok 42 - ... content for second as well ok 43 - ... content for other also good # headers ok 44 # type ok 45 ok 46 - content for upload \#3 as a scalar is good, via req->upload ok 47 - content for upload \#6 is good ok 48 ok 49 - An object of class 'Dancer2::Core::Request::Upload' isa 'Dancer2::Core::Request::Upload' ok 50 - filename is ok ok 51 - file handle is defined ok 52 - filename is accessible via params ok 53 - file '/tmp/37DnTocgNc/yappo6.txt' has been copied ok 54 - hardlink '/tmp/37DnTocgNc/hardlink' has been created ok 55 - temp file exists while HTTP::Body lives ok 56 - temp file is removed when HTTP::Body object dies # testing failing open for tempfile ok 57 1..57 ok t/response.t ........................................... ok 1 ok 2 # content_type ok 3 ok 4 - An object of class 'HTTP::Headers::Fast' isa 'HTTP::Headers' ok 5 ok 6 ok 7 ok 8 ok 9 ok 10 ok 11 ok 12 ok 13 ok 14 ok 15 ok 16 1..16 ok t/roles/hook.t ......................................... 1..8 ok 1 ok 2 ok 3 - execute_hook needs a hook name ok 4 - Supported hook can be installed ok 5 - Unsupported hook cannot be installed ok 6 ok 7 - Nonexistent hook fails ok 8 - replaced hooks were installed and executed ok t/route-pod-coverage/route-pod-coverage.t .............. # Subtest: t::lib::TestPodis pod covered ok 1 - post /in_testpod/* is documented ok 2 - post /me:id is documented ok 3 - get /in_testpod is documented ok 4 - get /hello is documented ok 5 - get /me:id is documented 1..5 ok 1 - t::lib::TestPodis pod covered ok 2 - my pod looks like expected 1..2 ok t/scope_problems/dispatcher_internal_request.t ......... # [Test::App:26530] error @2015-09-12 00:13:34> Exception caught in 'core.app.before_request' filter: Hook error: Nope, Nope, Nope at t/scope_problems/dispatcher_internal_request.t line 18. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm line 969. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 540 # [Test::App:26530] error @2015-09-12 00:13:34> Route exception: Exception caught in 'core.app.before_request' filter: Hook error: Nope, Nope, Nope at t/scope_problems/dispatcher_internal_request.t line 18. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm line 969. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 ok 1 - Runner internal request cleaned up 1..1 ok t/scope_problems/keywords_before_template_hook.t ....... # [Test::App:26531] error @2015-09-12 00:13:35> Route exception: Yes yes YES! at t/scope_problems/keywords_before_template_hook.t line 31. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 ok 1 - Got 500 response ok 2 - with the template content 1..2 ok t/scope_problems/session_is_cleared.t .................. ok 1 - /normal_route does not error # [MyTestApp:26532] error @2015-09-12 00:13:36> Route exception: Hook error: VfPQoAAAZ6Q_8Qss20rO0kqUdajOYzbJ at t/scope_problems/session_is_cleared.t line 17. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 # [MyTestApp:26532] warning @2015-09-12 00:13:36> Hook error: VfPQoAAAZ6Q_8Qss20rO0kqUdajOYzbJ at t/scope_problems/session_is_cleared.t line 17. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1387 ok 2 - /route_with_renderer_error errors errors ok 3 - /normal_route does not error ok 4 - 3rd route does not have session value from second route 1..4 ok t/scope_problems/with_return_dies.t .................... ok 1 - /normal_route does not error # [MyTestApp:26533] error @2015-09-12 00:13:37> Route exception: Hook error: 225074376 at t/scope_problems/with_return_dies.t line 19. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1276 # [MyTestApp:26533] warning @2015-09-12 00:13:37> Hook error: 225074376 at t/scope_problems/with_return_dies.t line 19. # at /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/Role/Hookable.pm line 114. in /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib/Dancer2/Core/App.pm l. 1387 ok 2 - /route_with_renderer_error errors errors ok 3 - /normal_route does not error ok 4 - The 3rd request has a different with_return from the first run ok 5 - The 3rd request has a different with_return from the second run 1..5 ok t/serializer.t ......................................... 1..5 ok 1 - Got app ok 2 - [/json] Correct status ok 3 - [/json] Correct content ok 4 - [/json] Correct content-type headers ok 5 - content-type is set correctly ok t/serializer_json.t .................................... ok 1 - to_json: basic hash ok 2 - serialize: basic hash ok 3 - serialized content in response: basic hash ok 4 - to_json: nested ok 5 - serialize: nested ok 6 - serialized content in response: nested 1..6 ok t/serializer_mutable.t ................................. 1..41 ok 1 - Got app # Format: yaml ok 2 - [/yaml] Correct status ok 3 - [/yaml] Correct content ok 4 - [/yaml] Correct content-type headers ok 5 - [/yaml] Correct status ok 6 - [/yaml] Correct content ok 7 - [/yaml] Correct content-type headers ok 8 - [/yaml] Correct status ok 9 - [/yaml] Correct content ok 10 - [/yaml] Correct status ok 11 - [/yaml] Correct content ok 12 - [/yaml] Correct content-type headers ok 13 - [/yaml] Correct status ok 14 - [/yaml] Correct content ok 15 - [/yaml] Correct content-type headers ok 16 - [/yaml] Correct status ok 17 - [/yaml] Correct content # Format: dumper ok 18 - [/dumper] Correct status ok 19 - [/dumper] Correct content ok 20 - [/dumper] Correct content-type headers ok 21 - [/dumper] Correct status ok 22 - [/dumper] Correct content ok 23 - [/dumper] Correct content-type headers ok 24 - [/dumper] Correct status ok 25 - [/dumper] Correct content # Format: json ok 26 - [/json] Correct status ok 27 - [/json] Correct content ok 28 - [/json] Correct content-type headers ok 29 - [/json] Correct status ok 30 - [/json] Correct content ok 31 - [/json] Correct content-type headers ok 32 - [/json] Correct status ok 33 - [/json] Correct content ok 34 - [/json] Correct status ok 35 - [/json] Correct content ok 36 - [/json] Correct content-type headers ok 37 - [/json] Correct status ok 38 - [/json] Correct content ok 39 - [/json] Correct content-type headers ok 40 - [/json] Correct status ok 41 - [/json] Correct content ok t/session_config.t ..................................... # Subtest: Set session ok 1 - /foo/set_session/larry ok 2 - session cookie set ok 3 - cookie expiration is in future ok 4 - cookie domain set ok 5 - cookie path set ok 6 - cookie has not set HttpOnly 1..6 ok 1 - Set session # Subtest: Read session ok 1 - /foo/read_session ok 2 - session value looks good 1..2 ok 2 - Read session 1..2 ok t/session_engines.t .................................... # Subtest: [YAML][one] Empty session ok 1 - empty session for client one 1..1 ok 1 - [YAML][one] Empty session # Subtest: [YAML][one] set_session ok 1 - set_session for client one 1..1 ok 2 - [YAML][one] set_session # Subtest: [YAML][one] session for client ok 1 - session looks good for client one 1..1 ok 3 - [YAML][one] session for client # Subtest: [YAML][one] delete session ok 1 - deleted session key 1..1 ok 4 - [YAML][one] delete session # Subtest: [YAML][one] cleanup ok 1 - cleanup done for one ok 2 - session hook triggered 1..2 ok 5 - [YAML][one] cleanup # Subtest: [YAML][two] Empty session ok 1 - empty session for client two 1..1 ok 6 - [YAML][two] Empty session # Subtest: [YAML][two] set_session ok 1 - set_session for client two 1..1 ok 7 - [YAML][two] set_session # Subtest: [YAML][two] session for client ok 1 - session looks good for client two 1..1 ok 8 - [YAML][two] session for client # Subtest: [YAML][two] delete session ok 1 - deleted session key 1..1 ok 9 - [YAML][two] delete session # Subtest: [YAML][two] cleanup ok 1 - cleanup done for two ok 2 - session hook triggered 1..2 ok 10 - [YAML][two] cleanup # Subtest: [YAML][three] Empty session ok 1 - empty session for client three 1..1 ok 11 - [YAML][three] Empty session # Subtest: [YAML][three] set_session ok 1 - set_session for client three 1..1 ok 12 - [YAML][three] set_session # Subtest: [YAML][three] session for client ok 1 - session looks good for client three 1..1 ok 13 - [YAML][three] session for client # Subtest: [YAML][three] delete session ok 1 - deleted session key 1..1 ok 14 - [YAML][three] delete session # Subtest: [YAML][three] cleanup ok 1 - cleanup done for three ok 2 - session hook triggered 1..2 ok 15 - [YAML][three] cleanup # Subtest: [Simple][one] Empty session ok 1 - empty session for client one 1..1 ok 16 - [Simple][one] Empty session # Subtest: [Simple][one] set_session ok 1 - set_session for client one 1..1 ok 17 - [Simple][one] set_session # Subtest: [Simple][one] session for client ok 1 - session looks good for client one 1..1 ok 18 - [Simple][one] session for client # Subtest: [Simple][one] delete session ok 1 - deleted session key 1..1 ok 19 - [Simple][one] delete session # Subtest: [Simple][one] cleanup ok 1 - cleanup done for one ok 2 - session hook triggered 1..2 ok 20 - [Simple][one] cleanup # Subtest: [Simple][two] Empty session ok 1 - empty session for client two 1..1 ok 21 - [Simple][two] Empty session # Subtest: [Simple][two] set_session ok 1 - set_session for client two 1..1 ok 22 - [Simple][two] set_session # Subtest: [Simple][two] session for client ok 1 - session looks good for client two 1..1 ok 23 - [Simple][two] session for client # Subtest: [Simple][two] delete session ok 1 - deleted session key 1..1 ok 24 - [Simple][two] delete session # Subtest: [Simple][two] cleanup ok 1 - cleanup done for two ok 2 - session hook triggered 1..2 ok 25 - [Simple][two] cleanup # Subtest: [Simple][three] Empty session ok 1 - empty session for client three 1..1 ok 26 - [Simple][three] Empty session # Subtest: [Simple][three] set_session ok 1 - set_session for client three 1..1 ok 27 - [Simple][three] set_session # Subtest: [Simple][three] session for client ok 1 - session looks good for client three 1..1 ok 28 - [Simple][three] session for client # Subtest: [Simple][three] delete session ok 1 - deleted session key 1..1 ok 29 - [Simple][three] delete session # Subtest: [Simple][three] cleanup ok 1 - cleanup done for three ok 2 - session hook triggered 1..2 ok 30 - [Simple][three] cleanup 1..30 ok t/session_forward.t .................................... # Subtest: Forwards within a single app ok 1 - session value preserved after chained forwards ok 2 - session values preserved between calls ok 3 - session value preserved after forward from route 1..3 ok 1 - Forwards within a single app # Subtest: Forwards between multiple apps using the same cookie name ok 1 - session value preserved after chained forwards between apps ok 2 - session value preserved after forward from route 1..2 ok 2 - Forwards between multiple apps using the same cookie name # Subtest: Forwards between multiple apps using different cookie names ok 1 - session value only from forwarded app 1..1 ok 3 - Forwards between multiple apps using different cookie names # Subtest: Forwards between multiple apps using multiple different cookie names ok 1 - session value only from apps with same session cookie name 1..1 ok 4 - Forwards between multiple apps using multiple different cookie names 1..4 ok t/session_hooks.t ...................................... ok 1 - Make sure flag hash is clear # Subtest: set_session ok 1 - An object of class 'Dancer2::Core::Session' isa 'Dancer2::Core::Session' ok 2 - An object of class 'Dancer2::Core::Session' isa 'Dancer2::Core::Session' ok 3 - set_session ran ok 1..3 ok 2 - set_session # Subtest: verify hooks for session create and session flush ok 1 - session.before_create called ok 2 - session.after_create called ok 3 - session.before_flush called ok 4 - session.after_flush called ok 5 - session.before_retrieve not called ok 6 - session.after_retrieve not called ok 7 - session.before_destroy not called ok 8 - session.after_destroy not called 1..8 ok 3 - verify hooks for session create and session flush # Subtest: verify Handler::File (static content) does not retrieve session ok 1 - session.before_create not called ok 2 - session.after_create not called ok 3 - session.before_retrieve not called ok 4 - session.after_retrieve not called 1..4 ok 4 - verify Handler::File (static content) does not retrieve session # Subtest: get_session ok 1 - An object of class 'Dancer2::Core::Session' isa 'Dancer2::Core::Session' ok 2 - Got the right session back ok 3 - get_session ran ok 1..3 ok 5 - get_session # Subtest: verify hooks for session retrieve ok 1 - session.before_retrieve called ok 2 - session.after_retrieve called ok 3 - session.before_create not called ok 4 - session.after_create not called ok 5 - session.before_flush not called ok 6 - session.after_flush not called ok 7 - session.before_destroy not called ok 8 - session.after_destroy not called 1..8 ok 6 - verify hooks for session retrieve # Subtest: destroy_session ok 1 - An object of class 'Dancer2::Core::Session' isa 'Dancer2::Core::Session' ok 2 - destroy_session ran ok 1..2 ok 7 - destroy_session # Subtest: verify session destroy hooks ok 1 - session.before_destroy called ok 2 - session.after_destroy called ok 3 - session.before_retrieve called ok 4 - session.after_retrieve called ok 5 - session.before_create not called ok 6 - session.after_create not called ok 7 - session.before_flush not called ok 8 - session.after_flush not called 1..8 ok 8 - verify session destroy hooks 1..8 ok t/session_in_template.t ................................ ok 1 - Got app ok 2 - Successful request ok 3 ok 4 - Successful request ok 5 ok 6 - Successful request ok 7 ok 8 - Successful request ok 9 ok 10 - Successful request ok 11 1..11 ok t/session_lifecycle.t .................................. # Subtest: No cookie set if session not referenced ok 1 - /no_session_data ok 2 - No cookie set 1..2 ok 1 - No cookie set if session not referenced # Subtest: No empty session created if session read attempted ok 1 - /read_session ok 2 - No cookie set 1..2 ok 2 - No empty session created if session read attempted # Subtest: Set value into session ok 1 - /set_session/larry ok 2 - Cookie set ok 3 - Got SID from cookie 1..3 ok 3 - Set value into session # Subtest: Read value back ok 1 - /read_session ok 2 - Jar cleared ok 3 - session cookie set again ok 4 - session value looks good 1..4 ok 4 - Read value back # Subtest: Session cookie persists even if we do not touch sessions ok 1 - /no_session_data ok 2 - Jar cleared ok 3 - session cookie set again 1..3 ok 5 - Session cookie persists even if we do not touch sessions # Subtest: Destroy session and check that cookies expiration is set ok 1 - /destroy_session ok 2 - We have a cookie before reading response ok 3 - Cookie was removed from jar 1..3 ok 6 - Destroy session and check that cookies expiration is set # Subtest: Session cookie not sent after session destruction ok 1 - /no_session_data ok 2 - Jar is empty ok 3 - Jar still empty (no new session cookie) 1..3 ok 7 - Session cookie not sent after session destruction # Subtest: Set value into session again ok 1 - /set_session/larry ok 2 - session cookie set ok 3 - New session has different ID 1..3 ok 8 - Set value into session again # Subtest: Destroy and create a session in one request ok 1 - /churn_session ok 2 - session cookie set ok 3 - Changed session has different ID 1..3 ok 9 - Destroy and create a session in one request # Subtest: Read value back ok 1 - /read_session ok 2 - session cookie set ok 3 - session value looks good 1..3 ok 10 - Read value back 1..10 ok t/session_object.t ..................................... # Crypto strength tokens # Subtest: session attributes ok 1 - id is defined ok 2 - id can be set ok 3 - ... new value found for id ok 4 - IDs are not the same 1..4 ok 1 - session attributes # Subtest: 10000 session IDs and no dups ok 1 - no duplicate ID after 10000 iterations (done 10000) 1..1 ok 2 - 10000 session IDs and no dups 1..2 ok t/shared_engines.t ..................................... ok 1 - session is set in main ok 2 - Got cookie ok 3 - session is set in foo ok 4 - the session engine in subapp is the same 1..4 ok t/template.t ........................................... ok 1 - use Dancer2::Template::TemplateToolkit; ok 2 - An object of class 'Dancer2::Template::TemplateToolkit' isa 'Dancer2::Template::TemplateToolkit' ok 3 ok 4 - [GET /] Correct content with template hooks ok 5 - Got app ok 6 - [GET /default_views] Correct content ok 7 - [GET /get_views_via_settings] Correct content 1..7 ok t/template_default_tokens.t ............................ ok 1 - Got app ok 2 - Response contains all expected tokens 1..2 ok t/template_ext.t ....................................... ok 1 - An object of class 'Dancer2::Template::TemplateToolkit' isa 'Dancer2::Template::TemplateToolkit' ok 2 - Template extension is 'foo' as configured ok 3 - view('foo') gives filename with right extension as configured 1..3 ok t/template_name.t ...................................... ok 1 - Got app ok 2 - template name 1..2 ok t/template_simple.t .................................... 1..9 ok 1 - template got processed successfully ok 2 - prototype failure detected ok 3 - processed a template given as a scalar ref ok 4 - object are interpolated in templates ok 5 - code ref are interpolated in templates ok 6 - arrayref are interpolated in templates ok 7 - true boolean condition matched ok 8 - false boolean condition matched ok 9 - multiline template processed ok t/template_tiny/01_compile.t ........................... 1..1 ok 1 - use Dancer2::Template::Implementation::ForkedTiny; ok t/template_tiny/02_trivial.t ........................... 1..1 ok 1 - Trivial ok ok t/template_tiny/03_samples.t ........................... 1..54 ok 1 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.tt ok 2 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.txt ok 3 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.var ok 4 - 01_hello: Loaded stash from file ok 5 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 6 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x12f901d8): Output matches expected ok 7 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.tt ok 8 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.txt ok 9 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.var ok 10 - 02_null: Loaded stash from file ok 11 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 12 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x1337ae20): Output matches expected ok 13 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.tt ok 14 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.txt ok 15 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.var ok 16 - 03_chomp: Loaded stash from file ok 17 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 18 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x133859c0): Output matches expected ok 19 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.tt ok 20 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.txt ok 21 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.var ok 22 - 04_nested: Loaded stash from file ok 23 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 24 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x13385c78): Output matches expected ok 25 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.tt ok 26 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.txt ok 27 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.var ok 28 - 05_condition: Loaded stash from file ok 29 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 30 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x13374fe0): Output matches expected ok 31 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.tt ok 32 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.txt ok 33 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.var ok 34 - 06_object: Loaded stash from file ok 35 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 36 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x13375598): Output matches expected ok 37 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.tt ok 38 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.txt ok 39 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.var ok 40 - 07_nesting: Loaded stash from file ok 41 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 42 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x13375a78): Output matches expected ok 43 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.tt ok 44 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.txt ok 45 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.var ok 46 - 08_foreach: Loaded stash from file ok 47 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 48 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x1337f590): Output matches expected ok 49 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.tt ok 50 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.txt ok 51 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.var ok 52 - 09_trim: Loaded stash from file ok 53 - An object of class 'Dancer2::Template::Implementation::ForkedTiny' isa 'Dancer2::Template::Implementation::ForkedTiny' ok 54 - Dancer2::Template::Implementation::ForkedTiny=HASH(0x1337f728): Output matches expected ok t/template_tiny/04_compat.t ............................ 1..63 ok 1 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.tt ok 2 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.txt ok 3 - 01_hello: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/01_hello.var ok 4 - 01_hello: Loaded stash from file ok 5 - An object of class 'Template' isa 'Template' ok 6 - 01_hello: ->process returns true ok 7 - 01_hello: Output matches expected ok 8 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.tt ok 9 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.txt ok 10 - 02_null: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/02_null.var ok 11 - 02_null: Loaded stash from file ok 12 - An object of class 'Template' isa 'Template' ok 13 - 02_null: ->process returns true ok 14 - 02_null: Output matches expected ok 15 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.tt ok 16 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.txt ok 17 - 03_chomp: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/03_chomp.var ok 18 - 03_chomp: Loaded stash from file ok 19 - An object of class 'Template' isa 'Template' ok 20 - 03_chomp: ->process returns true ok 21 - 03_chomp: Output matches expected ok 22 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.tt ok 23 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.txt ok 24 - 04_nested: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/04_nested.var ok 25 - 04_nested: Loaded stash from file ok 26 - An object of class 'Template' isa 'Template' ok 27 - 04_nested: ->process returns true ok 28 - 04_nested: Output matches expected ok 29 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.tt ok 30 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.txt ok 31 - 05_condition: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/05_condition.var ok 32 - 05_condition: Loaded stash from file ok 33 - An object of class 'Template' isa 'Template' ok 34 - 05_condition: ->process returns true ok 35 - 05_condition: Output matches expected ok 36 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.tt ok 37 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.txt ok 38 - 06_object: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/06_object.var ok 39 - 06_object: Loaded stash from file ok 40 - An object of class 'Template' isa 'Template' ok 41 - 06_object: ->process returns true ok 42 - 06_object: Output matches expected ok 43 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.tt ok 44 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.txt ok 45 - 07_nesting: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/07_nesting.var ok 46 - 07_nesting: Loaded stash from file ok 47 - An object of class 'Template' isa 'Template' ok 48 - 07_nesting: ->process returns true ok 49 - 07_nesting: Output matches expected ok 50 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.tt ok 51 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.txt ok 52 - 08_foreach: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/08_foreach.var ok 53 - 08_foreach: Loaded stash from file ok 54 - An object of class 'Template' isa 'Template' ok 55 - 08_foreach: ->process returns true ok 56 - 08_foreach: Output matches expected ok 57 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.tt ok 58 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.txt ok 59 - 09_trim: Found /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/t/template_tiny/samples/09_trim.var ok 60 - 09_trim: Loaded stash from file ok 61 - An object of class 'Template' isa 'Template' ok 62 - 09_trim: ->process returns true ok 63 - 09_trim: Output matches expected ok t/template_tiny/05_preparse.t .......................... 1..6 ok 1 - Simple IF ok 2 - ->proprocess does not modify original template variable ok 3 - Simple UNLESS ok 4 - ->proprocess does not modify original template variable ok 5 - Simple FOREACH ok 6 - ->proprocess does not modify original template variable ok t/time.t ............................................... # Subtest: Expression: "1h" ok 1 - "1h" is 3600 seconds ok 2 - ... its epoch is 1355679844 ok 3 - ... and its GMT string is Sun, 16-Dec-2012 17:44:04 GMT 1..3 ok 1 - Expression: "1h" # Subtest: Expression: "1 hour" ok 1 - "1 hour" is 3600 seconds ok 2 - ... its epoch is 1355679844 ok 3 - ... and its GMT string is Sun, 16-Dec-2012 17:44:04 GMT 1..3 ok 2 - Expression: "1 hour" # Subtest: Expression: "+1 hour" ok 1 - "+1 hour" is 3600 seconds ok 2 - ... its epoch is 1355679844 ok 3 - ... and its GMT string is Sun, 16-Dec-2012 17:44:04 GMT 1..3 ok 3 - Expression: "+1 hour" # Subtest: Expression: "-1h" ok 1 - "-1h" is -3600 seconds ok 2 - ... its epoch is 1355672644 ok 3 - ... and its GMT string is Sun, 16-Dec-2012 15:44:04 GMT 1..3 ok 4 - Expression: "-1h" # Subtest: Expression: "1 hours" ok 1 - "1 hours" is 3600 seconds ok 2 - ... its epoch is 1355679844 ok 3 - ... and its GMT string is Sun, 16-Dec-2012 17:44:04 GMT 1..3 ok 5 - Expression: "1 hours" # Subtest: Expression: "1d" ok 1 - "1d" is 86400 seconds ok 2 - ... its epoch is 1355762644 ok 3 - ... and its GMT string is Mon, 17-Dec-2012 16:44:04 GMT 1..3 ok 6 - Expression: "1d" # Subtest: Expression: "1 day" ok 1 - "1 day" is 86400 seconds ok 2 - ... its epoch is 1355762644 ok 3 - ... and its GMT string is Mon, 17-Dec-2012 16:44:04 GMT 1..3 ok 7 - Expression: "1 day" # Subtest: Forcing another epoch in the object should work ok 1 - ...1h is still 3600 seconds ok 2 - ... epoch is 1 ok 3 - ... and is expressed as Thu, 01-Jan-1970 00:00:01 GMT 1..3 ok 8 - Forcing another epoch in the object should work # Subtest: unparsable strings should be kept ok 1 - "something silly" is something silly seconds ok 2 - ... its epoch is something silly ok 3 - ... and its GMT string is something silly ok 4 - "+2 something" is +2 something seconds ok 5 - ... its epoch is +2 something ok 6 - ... and its GMT string is +2 something 1..6 ok 9 - unparsable strings should be kept 1..9 ok t/types.t .............................................. 1..46 ok 1 - Str does not accept undef value ok 2 - Str ok 3 - Str ok 4 - Num ok 5 - Num does not accept undef value ok 6 - Num fail ok 7 - Bool true value ok 8 - Bool false value ok 9 - Bool does accepts undef value ok 10 - Bool fail ok 11 - Regexp ok 12 - Regexp fail ok 13 - Regexp does not accept undef value ok 14 - HashRef ok 15 - HashRef fail ok 16 - HashRef does not accept undef value ok 17 - ArrayRef ok 18 - ArrayRef fail ok 19 - ArrayRef does not accept undef value ok 20 - CodeRef ok 21 - CodeRef fail ok 22 - CodeRef does not accept undef value ok 23 - InstanceOf ok 24 - InstanceOf fail ok 25 - InstanceOf does not accept undef value ok 26 - Dancer2Prefix ok 27 - Dancer2Prefix fail ok 28 - Dancer2Prefix does not accept undef value ok 29 - Dancer2AppName ok 30 - Dancer2AppName ok 31 - Dancer2AppName ok 32 - Dancer2AppName fails with single colons ok 33 - Dancer2AppName fails with tripe colons ok 34 - Dancer2AppName fails with beginning number ok 35 - Dancer2AppName fails with beginning number ok 36 - Dancer2AppName fails with special character ok 37 - Dancer2AppName fails with special character ok 38 - Dancer2AppName fails with special character ok 39 - Dancer2AppName does not accept undef value ok 40 - Dancer2AppName fails an empty string value ok 41 - Dancer2Method ok 42 - Dancer2Method fail ok 43 - Dancer2Method does not accept undef value ok 44 - Dancer2HTTPMethod ok 45 - Dancer2HTTPMethod fail ok 46 - Dancer2Method does not accept undef value ok t/uri_for.t ............................................ ok 1 - Got app ok 2 - /foo code okay ok 3 - uri_for works as expected 1..3 ok t/vars.t ............................................... 1..3 ok 1 - Got app ok 2 - foo ok 3 - ugh ok All tests successful. Files=127, Tests=1533, 85 wallclock secs ( 0.63 usr 0.54 sys + 75.62 cusr 6.99 csys = 83.78 CPU) Result: PASS XSAWYERX/Dancer2-0.162000.tar.gz make test TEST_VERBOSE=1 -- OK PPD for Dancer2-0.162000 already made Running make for D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz Prepending /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/arch /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib to PERL5LIB for 'get' Has already been unwrapped into directory /home/fly1800/var/cpan/build/Dancer2-Plugin-Growler-0.03-5sYhaw Prepending /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/arch /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib to PERL5LIB for 'make' CPAN.pm: Building D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz >>> make cp lib/Dancer2/Plugin/Growler.pm blib/lib/Dancer2/Plugin/Growler.pm Manifying 1 pod document DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz make -- OK Prepending /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/arch /home/fly1800/var/cpan/build/Dancer2-0.162000-lwMgtQ/blib/lib to PERL5LIB for 'test' Running make test >>> make test TEST_VERBOSE=1 PERL_DL_NONLAZY=1 "/home/fly1800/ap1800-297235/bin/perl-static" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing Dancer2::Plugin::Growler 0.03 t/00.load.t ....... 1..4 ok 1 - first call growls() is undef ok 2 - calling growls() returns expected list ok 3 - growls() did clear out the list ok 4 - sanity: request happened without issue ok t/perlcritic.t .... skipped: Critic tests are only run in RELEASE_TESTING mode. t/perltidy.t ...... skipped: PerlTidy tests are only run in RELEASE_TESTING mode. t/pkg-changes.t ... skipped: pkg/Changes tests are only run in RELEASE_TESTING mode. t/pkg-readme.t .... skipped: pkg/README tests are only run in RELEASE_TESTING mode. t/pod-coverage.t .. skipped: POD tests are only run in RELEASE_TESTING mode. t/pod-encoding.t .. skipped: POD tests are only run in RELEASE_TESTING mode. t/pod-spelling.t .. skipped: POD tests are only run in RELEASE_TESTING mode. t/pod-version.t ... skipped: POD tests are only run in RELEASE_TESTING mode. t/pod.t ........... skipped: POD tests are only run in RELEASE_TESTING mode. All tests successful. Files=10, Tests=4, 1 wallclock secs ( 0.05 usr 0.03 sys + 0.89 cusr 0.09 csys = 1.06 CPU) Result: PASS DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz make test TEST_VERBOSE=1 -- OK Daniel Muey <dmuey@cpan.org> Growl multiple messages of varying types to the user on their next hit. >>> (cd /home/fly1800/var/cpan/build/Dancer2-Plugin-Growler-0.03-5sYhaw && tar cvf - Dancer2-Plugin-Growler-0.03.ppd blib) | gzip -c >/home/fly1800/var/REPO/D/DM/DMUEY/Dancer2-Plugin-Growler-0.03.tar.gz Dancer2-Plugin-Growler-0.03.ppd blib/ blib/lib/ blib/lib/Dancer2/ blib/lib/Dancer2/Plugin/ blib/lib/Dancer2/Plugin/Growler.pm blib/man3/ blib/man3/Dancer2::Plugin::Growler.3 >>> mv /home/fly1800/var/cpan/build/Dancer2-Plugin-Growler-0.03-5sYhaw/Dancer2-Plugin-Growler-0.03.ppd /home/fly1800/var/REPO/D/DM/DMUEY VmSize: 312740 kB Finished 2015-09-12T00:13:54