=cut
+my $message_driven_request = sub {
+ my ($app, $path, $req_message) = @_;
+ my $url = "message://localhost:61613/$path";
+
+ my $request = HTTP::Request->new( POST => $url );
+ $request->content($req_message);
+ $request->content_length(length $req_message);
+ $request->content_type('application/octet-stream');
+
+ my $response;
+ $app->handle_request($request, \$response);
+
+ return $response;
+};
+
my $build_exports = sub {
my ($self, $meth, $args, $defaults) = @_;
$class->import;
my $app = $class->run();
- $request = sub { message_driven_request( $app, @_ ) };
+ $request = sub { $message_driven_request->( $app, @_ ) };
}
return {
}
}
-sub message_driven_request {
- my ($app, $path, $req_message) = @_;
- my $url = "message://localhost:61613/$path";
-
- my $request = HTTP::Request->new( POST => $url );
- $request->content($req_message);
- $request->content_length(length $req_message);
- $request->content_type('application/octet-stream');
-
- my $response;
- $app->handle_request($request, \$response);
-
- return $response;
-}
-
package # Hide from PAUSE
Catalyst::Engine::Test::MessageDriven;
use base 'Catalyst::Engine::Embeddable';