CGI-Application-Plugin-REST
view release on metacpan or search on metacpan
t/lib/Test/CAPRESTResource.pm view on Meta::CPAN
package Test::CAPRESTResource;
use strict;
use warnings;
use base 'CGI::Application';
use CGI::Application::Plugin::REST qw( :all );
sub setup {
my ($self) = @_;
$self->run_modes([ 'default' ]);
$self->rest_error_mode('error');
$self->start_mode('default');
$self->rest_resource('widget');
$self->rest_resource(resource => 'fidget', prefix => 'foo',
identifier => 'num',
in_types => ['application/xml'], out_types => ['text/html']);
if (defined $self->query->param('noargs')) {
$self->rest_resource();
}
if (defined $self->query->param('bogusargs')) {
$self->rest_resource('midget', 'gidget', 'apt-get');
}
if (defined $self->query->param('bogusresource')) {
my $resource = {
prefix => 'foo',
identifier => 'num',
};
$self->rest_resource($resource);
}
if (defined $self->query->param('bogusintypes')) {
my $resource = {
resource => 'midget',
in_types => 'foo',
};
$self->rest_resource($resource);
}
if (defined $self->query->param('bogusouttypes')) {
my $resource = {
resource => 'midget',
out_types => 'foo',
};
$self->rest_resource($resource);
}
return;
}
sub default {
my ($self) = @_;
my $q = $self->query;
return $q->start_html('default') .
$q->end_html;
}
sub error {
my ($self) = @_;
my $q = $self->query;
return $q->start_html('error') .
$q->end_html;
}
sub widget_create {
my ($self) = @_;
my $q = $self->query;
return $q->start_html('widget create') .
$q->end_html;
}
sub widget_destroy {
my ($self) = @_;
( run in 0.586 second using v1.01-cache-2.11-cpan-5735350b133 )