예제 #1
0
 def test_push(self, mock_image_inspect, mock_image_tag, mock_v2_registry_ping, mock_docker_image_push):
     mock_v2_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_v2_registry_ping.return_value = True
     mock_docker_image_push.return_value = {}
     image = Image(client=self.docker_client, identifier='123')
     image.push(registry=mock_v2_registry, repository_tag='foo', tag='bar')
     self.assertTrue(True)  # TODO: ...
예제 #2
0
 def test_push(self, mock_image_inspect, mock_image_tag,
               mock_v2_registry_ping, mock_docker_image_push):
     mock_v2_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_v2_registry_ping.return_value = True
     mock_docker_image_push.return_value = {}
     image = Image(client=self.docker_client, identifier='123')
     image.push(registry=mock_v2_registry, repository_tag='foo', tag='bar')
     self.assertTrue(True)  # TODO: ...
예제 #3
0
 def test_tag_failure(self, mock_image_inspect, mock_docker_image_tag):
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.tag(repository_tag=False, tags=[])
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.tag(repository_tag='foo', tags=False)
     mock_docker_image_tag.side_effect = Exception
     with self.assertRaises(Exception):
         image = Image(client=self.docker_client, identifier='123')
         image.id = '123'
         image.tag(repository_tag='foo:bar', tags=['abc'])
         self.assertEqual(image.repo_tags, ('foo:abc', 'foo:bar'))
예제 #4
0
 def test_pull(self, mock_image_inspect, mock_request_session_close, mock_docker_image_pull):
     mock_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_registry.ping.return_value = True
     mock_registry.location = ''
     mock_docker_image_pull.return_value = []
     image = Image.pull(client=self.docker_client, registry=mock_registry, repository_tag='foo:bar')
     self.assertIsInstance(image, Image)
     self.assertEqual(image.identifier, '/foo:bar')
예제 #5
0
 def test_build_failure(self, mock_os):
     mock_os.path.exists.return_value = True
     with self.assertRaises(TypeError):
         Image.build(client=False, repository_tag='foo', docker_file='abc')
     with self.assertRaises(Exception):
         Image.build(client=self.docker_client, repository_tag='foo', docker_file=False)
     with self.assertRaises(TypeError):
         Image.build(client=self.docker_client, repository_tag=False, docker_file='abc')
     with self.assertRaises(TypeError):
         Image.build(client=self.docker_client, repository_tag='foo', docker_file='abc', use_cache='yes')
예제 #6
0
 def test_build(self, mock_os, mock_image_inspect, mock_request_session_close, mock_docker_build):
     mock_os.path.exists.return_value = True
     mock_os.path.isfile.return_value = True
     mock_os.getcwd.return_value = '/'
     mock_os.path.realpath.return_value = '/'
     mock_docker_build.return_value = []
     image = Image.build(client=self.docker_client, repository_tag='foo', docker_file='abc')
     self.assertIsInstance(image, Image)
     self.assertEqual(image.identifier, 'foo:latest')
예제 #7
0
    def test_delete_failure(self, mock_image_inspect,
                            mock_docker_image_remove):
        mock_docker_image_remove.return_value = True
        image = Image(client=self.docker_client, identifier='123')
        image.id = '123'
        self.assertFalse(image.delete())

        mock_docker_image_remove.side_effect = Exception
        mock_docker_image_remove.return_value = True
        image = Image(client=self.docker_client, identifier='123')
        image.id = '123'
        self.assertFalse(image.delete())
예제 #8
0
 def test_pull(self, mock_image_inspect, mock_request_session_close,
               mock_docker_image_pull):
     mock_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_registry.ping.return_value = True
     mock_registry.location = ''
     mock_docker_image_pull.return_value = []
     image = Image.pull(client=self.docker_client,
                        registry=mock_registry,
                        repository_tag='foo:bar')
     self.assertIsInstance(image, Image)
     self.assertEqual(image.identifier, '/foo:bar')
예제 #9
0
 def test_build(self, mock_os, mock_image_inspect,
                mock_request_session_close, mock_docker_build):
     mock_os.path.exists.return_value = True
     mock_os.path.isfile.return_value = True
     mock_os.getcwd.return_value = '/'
     mock_os.path.realpath.return_value = '/'
     mock_docker_build.return_value = []
     image = Image.build(client=self.docker_client,
                         repository_tag='foo',
                         docker_file='abc')
     self.assertIsInstance(image, Image)
     self.assertEqual(image.identifier, 'foo:latest')
예제 #10
0
 def test_all(self, mock_image_inspect, mock_docker_image_images):
     mock_docker_image_images.return_value = [{
         'VirtualSize': 817117650,
         'RepoTags': [],
         'Labels': {},
         'Size': 0,
         'Created': 1453314552,
         'Id': '123',
         'ParentId': '456',
         'RepoDigests': []
     }]
     images = Image.all(client=self.docker_client)
     self.assertIsInstance(images['123'], Image)
예제 #11
0
 def test_all(self, mock_image_inspect, mock_docker_image_images):
     mock_docker_image_images.return_value = [{
         'VirtualSize': 817117650,
         'RepoTags': [],
         'Labels': {},
         'Size': 0,
         'Created': 1453314552,
         'Id': '123',
         'ParentId': '456',
         'RepoDigests': []
     }]
     images = Image.all(client=self.docker_client)
     self.assertIsInstance(images['123'], Image)
예제 #12
0
 def test_find_all_by_name(self, mock_image_inspect, mock_docker_image_images):
     mock_docker_image_images.return_value = [{
         'VirtualSize': 817117650,
         'RepoTags': ['foo'],
         'Labels': {},
         'Size': 0,
         'Created': 1453314552,
         'Id': '123',
         'ParentId': '456',
         'RepoDigests': []
     }]
     images = Image.find_all_by_name(client=self.docker_client, name='foo')
     self.assertIsInstance(images['123'], Image)
     self.assertEqual(images['123'].identifier, 'foo')
예제 #13
0
 def test_find_by_name(self, mock_image_inspect, mock_docker_image_images):
     mock_docker_image_images.return_value = [{
         'VirtualSize': 817117650,
         'RepoTags': ['foo'],
         'Labels': {},
         'Size': 0,
         'Created': 1453314552,
         'Id': '123',
         'ParentId': '456',
         'RepoDigests': []
     }]
     image = Image.find_by_name(client=self.docker_client, name='foo')
     self.assertIsInstance(image, Image)
     self.assertEqual(image.identifier, 'foo')
예제 #14
0
 def test_build_failure(self, mock_os):
     mock_os.path.exists.return_value = True
     with self.assertRaises(TypeError):
         Image.build(client=False, repository_tag='foo', docker_file='abc')
     with self.assertRaises(Exception):
         Image.build(client=self.docker_client,
                     repository_tag='foo',
                     docker_file=False)
     with self.assertRaises(TypeError):
         Image.build(client=self.docker_client,
                     repository_tag=False,
                     docker_file='abc')
     with self.assertRaises(TypeError):
         Image.build(client=self.docker_client,
                     repository_tag='foo',
                     docker_file='abc',
                     use_cache='yes')
예제 #15
0
    def test_delete_failure(self, mock_image_inspect, mock_docker_image_remove):
        mock_docker_image_remove.return_value = True
        image = Image(client=self.docker_client, identifier='123')
        image.id = '123'
        self.assertFalse(image.delete())

        mock_docker_image_remove.side_effect = Exception
        mock_docker_image_remove.return_value = True
        image = Image(client=self.docker_client, identifier='123')
        image.id = '123'
        self.assertFalse(image.delete())
예제 #16
0
 def test_inspect_and_map(self, mock_container_config,
                          mock_docker_image_inspect):
     mock_container_config.return_value = mock.Mock(spec=Config())
     mock_docker_image_inspect.return_value = {
         'Comment': '',
         'Id': '123',
         'VirtualSize': 491552314,
         'Container': '123',
         'Os': 'linux',
         'Parent': '456',
         'Created': '2015-11-23T23:11:31.282086214Z',
         'Architecture': 'amd64',
         'DockerVersion': '1.8.2',
         'Size': 0,
     }
     image = Image(client=self.docker_client, identifier='123')
     self.assertEqual(image.parent, '456')
예제 #17
0
 def test_push_failure_invalid_tag(self, mock_image_inspect):
     mock_v2_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_v2_registry.return_value.ping.return_value = True
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.push(registry=mock_v2_registry, repository_tag=False)
예제 #18
0
 def test_create_image(self, mock_image_inspect):
     image = Image(client=self.docker_client, identifier='123')
     self.assertEqual(image.identifier, '123')
     self.assertIsInstance(image, Image)
예제 #19
0
 def test_inspect_and_map_failure(self, mock_docker_image_inspect):
     mock_docker_image_inspect.side_effect = Exception
     with self.assertRaises(Exception):
         Image(client=self.docker_client, identifier='123')
예제 #20
0
 def test_all_failure(self):
     with self.assertRaises(TypeError):
         Image.all(client=False)
예제 #21
0
 def test_pull_failure(self):
     mock_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_registry.ping.return_value = False
     with self.assertRaises(TypeError):
         Image.pull(client=False, registry=mock_registry, repository_tag='foo')
     with self.assertRaises(Exception):
         Image.pull(client=self.docker_client, registry=False, repository_tag='foo')
     with self.assertRaises(TypeError):
         Image.pull(client=self.docker_client, registry=mock_registry, repository_tag=False)
     with self.assertRaises(AttributeError):
         Image.pull(client=self.docker_client, registry=mock_registry, repository_tag='foo:bar', tag='abc')
     with self.assertRaises(ValueError):
         Image.pull(client=self.docker_client, registry=mock_registry, repository_tag='foo:bar:abc')
     with self.assertRaises(Exception):
         Image.pull(client=self.docker_client, registry=mock_registry, repository_tag='foo:bar')
예제 #22
0
 def test_find_by_name_failure(self):
     with self.assertRaises(TypeError):
         Image.find_by_name(client=False, name='foo')
예제 #23
0
 def test_create_image_failure(self):
     with self.assertRaises(Exception):
         Image(client=False, identifier='123')
     with self.assertRaises(TypeError):
         Image(client=self.docker_client, identifier=False)
예제 #24
0
 def test_find_by_name_failure(self):
     with self.assertRaises(TypeError):
         Image.find_by_name(client=False, name='foo')
예제 #25
0
 def test_all_failure(self):
     with self.assertRaises(TypeError):
         Image.all(client=False)
예제 #26
0
 def test_push_failure_invalid_registry(self, mock_image_inspect):
     with self.assertRaises(Exception):
         image = Image(client=self.docker_client, identifier='123')
         image.push(registry=False, repository_tag='foo')
예제 #27
0
 def test_delete(self, mock_image_inspect, mock_docker_image_remove):
     mock_docker_image_remove.return_value = None
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     self.assertTrue(image.delete())
예제 #28
0
 def test_pull_failure(self):
     mock_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_registry.ping.return_value = False
     with self.assertRaises(TypeError):
         Image.pull(client=False,
                    registry=mock_registry,
                    repository_tag='foo')
     with self.assertRaises(Exception):
         Image.pull(client=self.docker_client,
                    registry=False,
                    repository_tag='foo')
     with self.assertRaises(TypeError):
         Image.pull(client=self.docker_client,
                    registry=mock_registry,
                    repository_tag=False)
     with self.assertRaises(AttributeError):
         Image.pull(client=self.docker_client,
                    registry=mock_registry,
                    repository_tag='foo:bar',
                    tag='abc')
     with self.assertRaises(ValueError):
         Image.pull(client=self.docker_client,
                    registry=mock_registry,
                    repository_tag='foo:bar:abc')
     with self.assertRaises(Exception):
         Image.pull(client=self.docker_client,
                    registry=mock_registry,
                    repository_tag='foo:bar')
예제 #29
0
 def test_push_failure_invalid_registry(self, mock_image_inspect):
     with self.assertRaises(Exception):
         image = Image(client=self.docker_client, identifier='123')
         image.push(registry=False, repository_tag='foo')
예제 #30
0
 def test_tag(self, mock_image_inspect, mock_docker_image_tag):
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     image.tag(repository_tag='foo:bar', tags=['abc'])
     self.assertEqual(image.repo_tags, ('foo:abc', 'foo:bar'))
예제 #31
0
 def test_push_failure_invalid_tag(self, mock_image_inspect):
     mock_v2_registry = mock.Mock(spec=V2(address='https://v2.com'))
     mock_v2_registry.return_value.ping.return_value = True
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.push(registry=mock_v2_registry, repository_tag=False)
예제 #32
0
 def test_tag(self, mock_image_inspect, mock_docker_image_tag):
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     image.tag(repository_tag='foo:bar', tags=['abc'])
     self.assertEqual(image.repo_tags, ('foo:abc', 'foo:bar'))
예제 #33
0
 def test_tag_no_tags(self, mock_image_inspect, mock_docker_image_tag):
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     image.tag(repository_tag='foo')
     self.assertEqual(image.repo_tags, ('foo:latest',))
예제 #34
0
 def test_tag_no_tags(self, mock_image_inspect, mock_docker_image_tag):
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     image.tag(repository_tag='foo')
     self.assertEqual(image.repo_tags, ('foo:latest', ))
예제 #35
0
 def test_delete(self, mock_image_inspect, mock_docker_image_remove):
     mock_docker_image_remove.return_value = None
     image = Image(client=self.docker_client, identifier='123')
     image.id = '123'
     self.assertTrue(image.delete())
예제 #36
0
 def test_tag_failure(self, mock_image_inspect, mock_docker_image_tag):
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.tag(repository_tag=False, tags=[])
     with self.assertRaises(TypeError):
         image = Image(client=self.docker_client, identifier='123')
         image.tag(repository_tag='foo', tags=False)
     mock_docker_image_tag.side_effect = Exception
     with self.assertRaises(Exception):
         image = Image(client=self.docker_client, identifier='123')
         image.id = '123'
         image.tag(repository_tag='foo:bar', tags=['abc'])
         self.assertEqual(image.repo_tags, ('foo:abc', 'foo:bar'))