Exemplo n.º 1
0
 def test_validate_content(self):
     assert self.api_handler.validate_content(None) is None
     assert self.api_handler.validate_content({'foo':
                                               'bar'}) == "{'foo': 'bar'}"
     assert self.api_handler.validate_content(
         "{'foo': 'bar'}") == "{'foo': 'bar'}"
     assert self.api_handler.validate_content(
         BuildJobConfig()) == '{}'.format(BuildJobConfig().to_dict())
Exemplo n.º 2
0
    def test_update_build(self):
        job = BuildJobConfig().to_dict()
        httpretty.register_uri(httpretty.PATCH,
                               BaseApiHandler.build_url(
                                   self.api_config.base_url, '/', 'username',
                                   'project_name', 'builds', 1),
                               body=json.dumps(job),
                               content_type='application/json',
                               status=200)

        # Schema response
        result = self.api_handler.update_build('username', 'project_name', 1,
                                               {'name': 'new'})
        assert result.to_dict() == job

        # Raw response
        self.set_raw_response()
        result = self.api_handler.update_build('username', 'project_name', 1,
                                               {'name': 'new'})
        assert result == job

        # Async
        self.assert_async_call(api_handler_call=lambda: self.api_handler.
                               update_build('username',
                                            'project_name',
                                            1, {'name': 'new'},
                                            background=True),
                               method='patch')
Exemplo n.º 3
0
    def test_get_build(self):
        job = BuildJobConfig().to_dict()
        httpretty.register_uri(httpretty.GET,
                               BaseApiHandler.build_url(
                                   self.api_config.base_url, '/', 'username',
                                   'project_name', 'builds', 1),
                               body=json.dumps(job),
                               content_type='application/json',
                               status=200)

        # Schema response
        result = self.api_handler.get_build('username', 'project_name', 1)
        assert result.to_dict() == job

        # Raw response
        self.set_raw_response()
        result = self.api_handler.get_build('username', 'project_name', 1)
        assert result == job
Exemplo n.º 4
0
    def test_create_build(self):
        project_uuid = uuid.uuid4().hex
        obj = BuildJobConfig(project=project_uuid, config={})
        httpretty.register_uri(httpretty.POST,
                               BaseApiHandler.build_url(
                                   self.api_config.base_url, '/', 'user',
                                   'project', 'builds'),
                               body=json.dumps(obj.to_dict()),
                               content_type='application/json',
                               status=200)

        # Schema response
        result = self.api_handler.create_build('user', 'project', obj)
        assert result.to_dict() == obj.to_dict()

        # Raw response
        self.set_raw_response()
        result = self.api_handler.create_build('user', 'project', obj)
        assert result == obj.to_dict()

        # Async
        self.assert_async_call(
            api_handler_call=lambda: self.api_handler.create_build(
                'user', 'project', obj, background=True),
            method='post')

        # Test create experiment with dict
        httpretty.register_uri(httpretty.POST,
                               BaseApiHandler.build_url(
                                   self.api_config.base_url, '/', 'user',
                                   'project', 'builds'),
                               body=json.dumps(obj.to_dict()),
                               content_type='application/json',
                               status=200)

        # Schema response
        self.set_schema_response()
        result = self.api_handler.create_build('user', 'project',
                                               obj.to_dict())
        assert result.to_dict() == obj.to_dict()

        # Raw response
        self.set_raw_response()
        result = self.api_handler.create_build('user', 'project',
                                               obj.to_dict())
        assert result == obj.to_dict()

        # Async
        self.assert_async_call(
            api_handler_call=lambda: self.api_handler.create_build(
                'user', 'project', obj.to_dict(), background=True),
            method='post')