Artifactory-Client
view release on metacpan or search on metacpan
t/01_unit.t view on Meta::CPAN
subtest 'promote_docker_image', sub {
my $client = setup();
my %data = (
targetRepo => "target_repo",
dockerRepository => "dockerRepository",
tag => "tag",
copy => 'false',
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->promote_docker_image(%data);
is( $resp->code, 200, 'promote_docker_image succeeded' );
};
subtest 'delete_builds', sub {
my $client = setup();
local *{'LWP::UserAgent::delete'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do {
\( my $o =
'http://example.com:7777/artifactory/api/build/api-test?buildNumbers=1&artifacts=0&deleteAll=0'
);
},
'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->delete_builds( name => 'api-test', buildnumbers => [1], artifacts => 0, deleteall => 0 );
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr/buildNumbers=1/, 'buildNumbers showed up' );
like( $url_in_response, qr/artifacts=0/, 'artifacts showed up' );
like( $url_in_response, qr/deleteAll=0/, 'deleteAll showed up' );
};
subtest 'build_rename', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->build_rename( 'api-test', 'something' );
is( $resp->code, 200, 'build_rename succeeded' );
};
subtest 'distribute_build', sub {
my $client = setup();
my %info = (
gpgPassphrase => 'foobar',
'targetRepo' => 'foobar',
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->distribute_build( 'build_name', 5, %info );
is( $resp->code, 200, 'distribute_build succeeded' );
};
subtest 'control_build_retention', sub {
my $client = setup();
my %info = (
deleteBuildArtifacts => 'true',
count => 2,
minimumBuildDate => 1407345768020,
buildNumbersNotToBeDiscarded => [8],
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->control_build_retention( 'build_name', %info );
is( $resp->code, 200, 'control_build_retention succeeded' );
};
subtest 'push_docker_tag_to_bintray', sub {
my $client = setup();
my %info = (
dockerImage => 'jfrog/ubuntu:latest',
bintraySubject => 'shayy',
bintrayRepo => 'containers',
async => 'false'
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->push_docker_tag_to_bintray(%info);
is( $resp->code, 200, 'push_docker_tag_to_bintray_succeeded' );
};
subtest 'folder_info', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->folder_info("/some_dir");
is( $resp->code, 200, 'folder_info succeeded' );
};
subtest 'file_info', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
t/01_unit.t view on Meta::CPAN
my $resp = $client->trace_artifact_retrieval('/unique_path');
is( $resp->code, 200, 'trace_artifact_retrieval succeeded' );
};
subtest 'archive_entry_download', sub {
my $client = setup();
my $path = '/unique_path';
my $archive_path = '/archive_path';
local *{'LWP::UserAgent::get'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/repo$path!$archive_path" ) },
'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->archive_entry_download( $path, $archive_path );
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr/$path!$archive_path/, 'archive_entry_download succeeded' );
};
subtest 'create_directory', sub {
my $client = setup();
my $dir = '/unique_dir/';
local *{'LWP::UserAgent::request'} = sub {
return $mock_responses{http_201};
};
my $resp = $client->create_directory( path => $dir );
is( $resp->code, 201, 'create_directory succeeded' );
};
subtest 'deploy_artifacts_from_archive', sub {
my $client = setup();
local *{'LWP::UserAgent::request'} = sub {
return $mock_responses{http_200};
};
local *{'Path::Tiny::slurp'} = sub {
# no-op, unit test reads no file
};
my $resp = $client->deploy_artifacts_from_archive( file => "$Bin/data/test.xml", path => '/some_path/test.zip' );
is( $resp->code, 200, 'deploy_artifacts_from_archive worked' );
};
subtest 'push_a_set_of_artifacts_to_bintray', sub {
my $client = setup();
my %info = (
descriptor => 'some_path',
gpgPassphrase => 'top_secret',
gpgSign => 'true'
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->push_a_set_of_artifacts_to_bintray(%info);
is( $resp->code, 200, 'push_a_set_of_artifacts_to_bintray' );
};
subtest 'distribute_artifact', sub {
my $client = setup();
my %info = (
publish => 'true',
gpgPassphrase => 'abc',
);
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->distribute_artifact(%info);
is( $resp->code, 200, 'distribute_artifact' );
};
subtest 'file_compliance_info', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/compliance/repo/some_path" ) },
'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->file_compliance_info('/some_path');
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/compliance|, 'requsted URL looks sane' );
};
subtest 'copy_item', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->copy_item( from => "/repo/some_path", to => "/repo2/some_path2" );
is( $resp->code, 200, 'copy_item worked' );
};
subtest 'move_item', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->move_item( from => "/repo/some_path", to => "/repo2/some_path2" );
is( $resp->code, 200, 'move_item worked' );
};
subtest 'request method call', sub {
my $client = setup();
my $req = HTTP::Request->new( GET => 'http://www.example.com/' );
local *{'LWP::UserAgent::request'} = sub {
return $mock_responses{http_200};
t/01_unit.t view on Meta::CPAN
do { \( my $o = "http://example.com:7777/artifactory/api/system/security" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->security_configuration();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/system/security|, 'requsted URL looks sane' );
};
subtest 'activate_master_key_encryption', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/system/encrypt" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->activate_master_key_encryption();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/system/encrypt|, 'requsted URL looks sane' );
};
subtest 'deactivate_master_key_encryption', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/system/decrypt" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->deactivate_master_key_encryption();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/system/decrypt|, 'requsted URL looks sane' );
};
subtest 'set_gpg_public_key', sub {
my $client = setup();
local *{'LWP::UserAgent::put'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/gpg/key/public" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->set_gpg_public_key();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/gpg/key/public|, 'requsted URL looks sane' );
};
subtest 'get_gpg_public_key', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/gpg/key/public" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->get_gpg_public_key();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/gpg/key/public|, 'requsted URL looks sane' );
};
subtest 'set_gpg_private_key', sub {
my $client = setup();
local *{'LWP::UserAgent::put'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/gpg/key/private" ) }, 'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->set_gpg_private_key();
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/gpg/key/private|, 'requsted URL looks sane' );
};
subtest 'set_gpg_pass_phrase', sub {
my $client = setup();
local *{'LWP::UserAgent::put'} = sub {
return bless(
{
'_request' => bless(
{
'_uri' => bless(
do { \( my $o = "http://example.com:7777/artifactory/api/gpg/key/passphrase" ) },
'URI::http'
),
},
'HTTP::Request'
)
},
'HTTP::Response'
);
};
my $resp = $client->set_gpg_pass_phrase('foobar');
my $url_in_response = $resp->request->uri;
like( $url_in_response, qr|/api/gpg/key/passphrase|, 'requsted URL looks sane' );
};
subtest 'create_token', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->create_token( username => 'johnq', scope => 'member-of-groups:readers' );
is( $resp->code, 200, 'create_token' );
};
subtest 'refresh_token', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->refresh_token( grant_type => 'refresh_token', refresh_token => 'fgsg53tg' );
is( $resp->code, 200, 'refresh_token' );
};
subtest 'revoke_token', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->revoke_token( token => 'fgsg53tg' );
is( $resp->code, 200, 'revoke_token' );
};
subtest 'get_service_id', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->get_service_id();
is( $resp->code, 200, 'get_service_id' );
};
subtest 'get_certificates', sub {
my $client = setup();
local *{'LWP::UserAgent::get'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->get_certificates();
is( $resp->code, 200, 'get_certificates' );
};
subtest 'add_certificate', sub {
my $client = setup();
local *{'LWP::UserAgent::post'} = sub {
return $mock_responses{http_200};
};
my $resp = $client->add_certificate( 'foobar', "$Bin/data/test.xml" );
is( $resp->code, 200, 'add_certificates' );
( run in 1.035 second using v1.01-cache-2.11-cpan-df04353d9ac )