view release on metacpan or search on metacpan
and IO-Async based event loops. Examples will follow.
5.90049_003 - 2013-09-20
- Documented the new body_data method added in the previous release
- Merged from master many important bugfixes and forward compatibility
updates, including:
- Use modern preferred method for Moose metaclass access and many other
small changes to how we use Moose for better forward compat (ether++)
- Killed some evil use of $@ (ether++)
- spelling fixes and documentation updates (ether++), (gerda++)
- use Test::Fatal over Test::Exception (ether++)
- Misc. test case fixes to modernize code (ether++)
- Added a first pass cpanfile, to try and make it easier to bootstrap
a development setup (ether++)
5.90049_002 - 2013-08-20
- Fixed loading middleware from project directory
- Fixed some pointless warnings when middleware class lacked VERSION
- NEW FEATURE: Declare global 'data_handlers' for parsing HTTP POST/PUT
alternative content, and created default JSON handler. Yes, now Catalyst
handles JSON request content out of the box! More docs eventually but
"URI" : "1.65",
"URI::ws" : "0.03",
"namespace::clean" : "0.23",
"perl" : "5.008003"
}
},
"test" : {
"requires" : {
"HTTP::Request::Common" : "0",
"HTTP::Status" : "0",
"Test::Fatal" : "0",
"Test::More" : "0.88"
}
}
},
"release_status" : "stable",
"resources" : {
"bugtracker" : {
"web" : "https://github.com/perl-catalyst/catalyst-runtime/issues"
},
"homepage" : "https://github.com/perl-catalyst/catalyst-runtime",
---
abstract: 'The Catalyst Framework Runtime'
author:
- 'Sebastian Riedel <sri@cpan.org>'
build_requires:
HTTP::Request::Common: '0'
HTTP::Status: '0'
Test::Fatal: '0'
Test::More: '0.88'
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 7.70, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
name: Catalyst-Runtime
Makefile.PL view on Meta::CPAN
name => 'Catalyst-Runtime',
license => 'perl_5',
prereqs => {
configure => { requires => {
'ExtUtils::MakeMaker' => 0,
} },
build => { requires => {
} },
test => {
requires => {
'Test::Fatal' => 0,
'Test::More' => '0.88',
'HTTP::Request::Common' => 0,
'HTTP::Status' => 0,
},
},
runtime => {
requires => {
'perl' => 5.008003,
'List::Util' => '1.45',
'namespace::clean' => '0.23',
t/aggregate/c3_appclass_bug.t view on Meta::CPAN
use Moose;
use Catalyst::Runtime 5.80;
use base qw/Catalyst/;
use Catalyst qw/
+TestPlugin
/;
}
use Test::Fatal;
is exception {
TestAppC3ErrorUseMoose->setup();
}, undef, 'No C3 error';
1;
t/aggregate/error_page_dump.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Fatal;
use Catalyst::Engine;
my $m = sub { Catalyst::Engine->_dump_error_page_element(@_) };
is exception { $m->('Scalar' => ['foo' => 'bar']) }, undef;
is exception { $m->('Array' => ['foo' => []]) }, undef;
is exception { $m->('Hash' => ['foo' => {}]) }, undef;
done_testing;
t/aggregate/unit_core_script_cgi.t view on Meta::CPAN
use strict;
use warnings;
use FindBin qw/$Bin/;
use lib "$Bin/../lib";
use Test::More;
use Test::Fatal;
use Catalyst::Script::CGI;
local @ARGV;
is exception {
Catalyst::Script::CGI->new_with_options(application_name => 'TestAppToTestScripts')->run;
}, undef, "new_with_options";
shift @TestAppToTestScripts::RUN_ARGS;
my $server = pop @TestAppToTestScripts::RUN_ARGS;
like ref($server), qr/^Plack::Handler/, 'Is a Plack::Handler';
t/aggregate/unit_core_script_create.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Fatal;
use FindBin qw/$Bin/;
use lib "$Bin/../lib";
{
package TestCreateScript;
use Moose;
extends 'Catalyst::Script::Create';
our $help;
sub print_usage_text { $help++ }
t/aggregate/unit_core_script_fastcgi.t view on Meta::CPAN
use strict;
use warnings;
use FindBin qw/$Bin/;
use lib "$Bin/../lib";
use Test::More;
use Test::Fatal;
use Catalyst::Script::FastCGI;
local our $fake_handler = \42;
{
package TestFastCGIScript;
use Moose;
use namespace::clean -except => [ 'meta' ];
t/aggregate/unit_core_script_help.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use Test::Fatal;
use FindBin qw/$Bin/;
use lib "$Bin/../lib";
no warnings 'once';
*CORE::GLOBAL::exit = sub {};
{
package TestHelpScript;
use Moose;
t/aggregate/unit_core_scriptrunner.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use FindBin qw/$Bin/;
use Test::Fatal;
use lib "$Bin/../lib";
use_ok('Catalyst::ScriptRunner');
is Catalyst::ScriptRunner->run('ScriptTestApp', 'Foo'), 'mooScriptTestApp::Script::Foo42',
'Script existing only in app got trait applied';
is Catalyst::ScriptRunner->run('ScriptTestApp', 'Bar'), 'mooScriptTestApp::Script::Bar23',
'Script existing in both app and Catalyst - prefers app';
is Catalyst::ScriptRunner->run('ScriptTestApp', 'Baz'), 'mooCatalyst::Script::Baz',
'Script existing only in Catalyst';
t/aggregate/unit_load_catalyst_test.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use FindBin qw/$Bin/;
use lib "$Bin/../lib";
use Catalyst::Utils;
use HTTP::Request::Common;
use Test::Fatal;
my $Class = 'Catalyst::Test';
my $App = 'TestApp';
my $Pkg = __PACKAGE__;
my $Url = 'http://localhost/';
my $Content = "root index";
my %Meth = (
$Pkg => [qw|get request ctx_request|], # exported
$Class => [qw|local_request remote_request|], # not exported
t/aggregate/unit_metaclass_compat_extend_non_moose_controller.t view on Meta::CPAN
use base qw/Catalyst/;
}
{
package TestApp::Controller::Base;
use base qw/Catalyst::Controller/;
}
{
package TestApp::Controller::Other;
use Moose;
use Test::More tests => 1;
use Test::Fatal;
is exception {
extends 'TestApp::Controller::Base';
}, undef;
}
t/aggregate/unit_metaclass_compat_non_moose_controller.t view on Meta::CPAN
use strict;
use warnings;
use FindBin;
use lib "$FindBin::Bin/../lib";
use Test::More tests => 1;
use Test::Fatal;
use TestAppNonMooseController;
# Metaclass init order causes fail.
# There are TODO tests in Moose for this, see
# f2391d17574eff81d911b97be15ea51080500003
# after which the evil kludge in core can die in a fire.
is exception {
TestAppNonMooseController::ControllerBase->get_action_methods
}, undef, 'Base class->get_action_methods ok when sub class initialized first';
t/custom_exception_class_simple.t view on Meta::CPAN
# HARNESS-NO-PRELOAD
use strict;
use warnings;
use FindBin qw/$Bin/;
use lib "$Bin/lib";
use Test::More tests => 2;
use Test::Fatal;
is exception {
require TestAppClassExceptionSimpleTest;
}, undef, 'Can load application';
is exception {
Catalyst::Exception->throw
}, undef, 'throw is properly stubbed out';
t/lib/TestAppPluginWithConstructor.pm view on Meta::CPAN
# See t/plugin_new_method_backcompat.t
package TestAppPluginWithConstructor;
use Test::More;
use Test::Fatal;
use Catalyst qw/+TestPluginWithConstructor/;
use Moose;
extends qw/Catalyst/;
__PACKAGE__->setup;
our $MODIFIER_FIRED = 0;
is exception {
before 'dispatch' => sub { $MODIFIER_FIRED = 1 }
}, undef, 'Can apply method modifier';
t/unit_core_script_test.t view on Meta::CPAN
use strict;
use warnings;
use Carp qw(croak);
use FindBin qw/$Bin/;
use lib "$Bin/lib";
use Test::More;
use Test::Fatal;
use Catalyst::Script::Test;
use File::Temp qw/tempfile/;
use IO::Handle;
is run_test('/'), "root index\n", 'correct content printed';
is run_test('/moose/get_attribute'), "42\n", 'Correct content printed for non root action';
done_testing;