JIRA-REST-Class
view release on metacpan or search on metacpan
t/inline-tests/jira_rest_class.t view on Meta::CPAN
use_ok('JIRA::REST::Class');
sub get_test_client {
state $test =
JIRA::REST::Class->new(TestServer_url(), 'username', 'password');
$test->REST_CLIENT->setTimeout(5);
return $test;
};
is( Test::Builder->new->current_test - $::__tc, 1,
'1 test was run in the section' );
# =begin testing new 5
$::__tc = Test::Builder->new->current_test;
{
my $jira;
try {
$jira = JIRA::REST::Class->new({
url => TestServer_url(),
username => 'user',
password => 'pass',
proxy => '',
anonymous => 0,
ssl_verify_none => 1,
rest_client_config => {},
});
}
catch {
$jira = $_; # as good a place as any to stash the error, because
# isa_ok() will complain that it's not an object.
};
isa_ok($jira, 'JIRA::REST::Class', 'JIRA::REST::Class->new');
my $needs_url_regexp = qr/'?url'? argument must be defined/i;
throws_ok(
sub {
JIRA::REST::Class->new();
},
$needs_url_regexp,
'JIRA::REST::Class->new with no parameters throws an exception',
);
throws_ok(
sub {
JIRA::REST::Class->new({
username => 'user',
password => 'pass',
});
},
$needs_url_regexp,
'JIRA::REST::Class->new with no url throws an exception',
);
throws_ok(
sub {
JIRA::REST::Class->new('http://not.a.good.server.com');
},
qr/No credentials found/,
q{JIRA::REST::Class->new with just url tries to find credentials},
);
lives_ok(
sub {
JIRA::REST::Class->new(TestServer_url(), 'user', 'pass');
},
q{JIRA::REST::Class->new with url, username, and password does't croak!},
);
}
is( Test::Builder->new->current_test - $::__tc, 5,
'5 tests were run in the section' );
# =begin testing get
{
validate_wrapper_method( sub { get_test_client()->get('/test'); },
{ GET => 'SUCCESS' }, 'get() method works' );
}
# =begin testing post
{
validate_wrapper_method( sub { get_test_client()->post('/test', "key=value"); },
{ POST => 'SUCCESS' }, 'post() method works' );
}
# =begin testing put
{
validate_wrapper_method( sub { get_test_client()->put('/test', "key=value"); },
{ PUT => 'SUCCESS' }, 'put() method works' );
}
# =begin testing delete
{
validate_wrapper_method( sub { get_test_client()->delete('/test'); },
{ DELETE => 'SUCCESS' }, 'delete() method works' );
}
# =begin testing data_upload
{
my $expected = {
"Content-Disposition" => "form-data; name=\"file\"; filename=\"file.txt\"",
POST => "SUCCESS",
data => "An OO Class module built atop L<JIRA::REST|JIRA::REST> for dealing with "
. "JIRA issues and their data as objects.",
name => "file.txt"
};
my $test1_name = 'return value from data_upload()';
my $test2_name = 'data_upload() method succeeded';
my $test3_name = 'data_upload() method returned expected data';
( run in 0.519 second using v1.01-cache-2.11-cpan-df04353d9ac )