API-Vultr

 view release on metacpan or  search on metacpan

t/01-test.t  view on Meta::CPAN

{
    "total": 2,
    "links": 
        {
            "next": "",
            "prev": ""
        }
    }
}';

$vultr_api->ua->map_response(
    qr{api.vultr.com/v2/applications},
    HTTP::Response->new(
        '200',                                    'OK',
        [ 'Content-Type' => 'application/json' ], $application_json
    )
);
ok $vultr_api->get_applications->is_success;
ok $vultr_api->get_applications->decoded_content, $application_json;

ok $vultr_api->ua->last_http_request_sent;
is $vultr_api->ua->last_http_request_sent->header('Authorization'),
  'Bearer 123';
is $vultr_api->ua->last_http_request_sent->uri,
  'https://api.vultr.com/v2/applications';
ok $vultr_api->ua->last_http_response_received->is_success;
is $vultr_api->ua->last_http_response_received->decoded_content,
  $application_json;

$vultr_api->ua->map_response(
    qr{api.vultr.com/v2/instances},
    HTTP::Response->new(
        '200',                                    'OK',
        [ 'Content-Type' => 'application/json' ], $application_json
    )
);

ok $vultr_api->create_instance( name => 'foo' )->is_success;
is $vultr_api->ua->last_http_request_sent->uri,
  'https://api.vultr.com/v2/instances';



( run in 0.401 second using v1.01-cache-2.11-cpan-49f99fa48dc )