Esempio n. 1
0
 def mock_get_transfer_appliance_helper(ctx, from_json, id, appliance_lbl):
     if appliance_lbl == 'XA-test-1':
         return Response(200, {}, TransferAppliance(transfer_job_id='test-job-id', label='XA-test-1', serial_number='test-serial-no-1',
                                                    lifecycle_state='PREPARING', upload_status_log_uri='fakepath/upload_summary1.txt'), Request("mock.method", "mock.url"))
     else:
         return Response(200, {}, TransferAppliance(transfer_job_id='test-job-id', label='XA-test-2', serial_number='test-serial-no-2',
                                                    lifecycle_state='PREPARING', upload_status_log_uri='fakepath/upload_summary2.txt'), Request("mock.method", "mock.url"))
Esempio n. 2
0
def list_objects_side_effect(namespace, bucket, prefix, start, end, fields):
    response = Response(200, {}, ListObjects(), {})
    if start == "start_object":
        objects = [
            ObjectSummary(name="first_object",
                          size=10,
                          md5="abc123",
                          time_created=datetime.datetime.now(),
                          etag="tag1")
        ]
        response.data.next_start_with = "second_object"
    elif start == "start_empty_object":
        objects = [
            ObjectSummary(name="first_object",
                          size=10,
                          md5="abc123",
                          time_created=datetime.datetime.now(),
                          etag="tag1")
        ]
        response.data.next_start_with = "second_empty_object"
    elif start == "second_empty_object":
        objects = []
    else:
        objects = [
            ObjectSummary(name="second_object",
                          size=20,
                          md5="def456",
                          time_created=datetime.datetime.now(),
                          etag="tag2")
        ]
    response.data.objects = objects
    return response
 def mock_get_bucket(namespace_name, bucket_name):
     return Response(
         200, {},
         Bucket(namespace="test-namespace",
                compartment_id="test-compartment-id",
                name="test-bucket-name",
                storage_tier=OBJECT_STORAGE_BUCKET_TYPE_ARCHIVE),
         Request("mock.method", "mock.url"))
Esempio n. 4
0
    def call_api(self,
                 resource_path,
                 method,
                 path_params=None,
                 query_params=None,
                 header_params=None,
                 body=None,
                 response_type=None,
                 enforce_content_headers=True):
        """
        Makes the HTTP request and return the deserialized data.

        :param resource_path: Path to the resource (e.g. /instance)
        :param method: HTTP method
        :param path_params: (optional) Path parameters in the url.
        :param query_params: (optional) Query parameters in the url.
        :param header_params: (optional) Request header params.
        :param body: (optional) Request body.
        :param response_type: (optional) Response data type.
        :param enforce_content_headers: (optional) Whether content headers should be added for
            PUT and POST requests when not present.  Defaults to True.
        :return: A Response object, or throw in the case of an error.

        """

        if path_params is not None:
            for k, v in path_params.items():
                replacement = six.moves.urllib.parse.quote(v)
                resource_path = resource_path.\
                    replace('{' + k + '}', replacement)

        response = self.pool_manager.request(
            method,
            '{}{}{}'.format(self._endpoint, self._base_path, resource_path),
            body=json.dumps(body),
            headers=header_params)

        request = Request(method=method,
                          url=self._endpoint + self._base_path + resource_path,
                          query_params=query_params,
                          header_params=header_params,
                          body=body,
                          response_type=response_type,
                          enforce_content_headers=enforce_content_headers)
        if not 200 <= response.status <= 299:
            raise exceptions.ServiceError(response.status,
                                          None,
                                          response.headers,
                                          str(response.data),
                                          original_request=request)

        data = response.data
        try:
            data = json.loads(response.data.decode("utf-8"))
        except Exception as e:
            pass
        return Response(response.status, dict(response.getheaders()), data,
                        request)
 def mock_get_transfer_job_helper(ctx, from_json, id):
     return Response(
         200, {},
         TransferJob(id='test-job-id',
                     compartment_id='test-compartment-id',
                     label='test-transfer-job',
                     device_type='APPLIANCE',
                     lifecycle_state='PREPARING',
                     attached_transfer_appliance_labels=[
                         'XA-test-1', 'XA_test-2'
                     ],
                     upload_bucket_name='test-bucket'),
         Request("mock.method", "mock.url"))
def get_transfer_appliance_entitlement_extended(ctx, **kwargs):
    list_kwargs = {
        'opc_request_id': cli_util.use_or_generate_request_id(ctx.obj['request_id'])
    }
    client = cli_util.build_client('transfer_appliance_entitlement', ctx)
    compartment_id = kwargs['compartment_id']
    entitlements_list = client.list_transfer_appliance_entitlement(compartment_id=compartment_id, **list_kwargs)
    if len(entitlements_list.data) < 1:
        raise exceptions.RequestException(
            "Unable to find Transfer Appliance Entitlement in compartment {}".format(compartment_id))
    # The entitlement ID can be None when the entitlement was created in let's say PHX but accessed from IAD
    if entitlements_list.data[0].id is None:
        custom_response = Response(200, {}, entitlements_list.data[0], None)
        cli_util.render_response(custom_response, ctx)
    else:
        kwargs['id'] = entitlements_list.data[0].id
        del kwargs['compartment_id']
        ctx.invoke(transferapplianceentitlement_cli.get_transfer_appliance_entitlement, **kwargs)
 def method_side_effect(**kwargs):
     return Response(v[0], v[1], v[2], Request("mock.method", "mock.url"))
Esempio n. 8
0
 def mock_get_namespace():
     return Response(200, {}, "test-namespace", Request("mock.method", "mock.url"))