def test_do_member_images(self):
        class FakeClient():
            def __init__(self):
                self.image_members = ImageMembers()

        class ImageMembers():
            def __init__(self):
                self.member_id = 'test'
                self.can_share = True
                self.dry_run = True
                self.image_id = "fake_image_id"

            def list(self, member):
                return [ImageMembers(), ImageMembers()]

        test_shell.do_member_images(FakeClient(), ImageMembers())
    def test_do_member_images(self):
        class FakeClient():
            def __init__(self):
                self.image_members = ImageMembers()

        class ImageMembers():
            def __init__(self):
                self.member_id = 'test'
                self.can_share = True
                self.dry_run = True
                self.image_id = "fake_image_id"

            def list(self, member):
                return [ImageMembers(), ImageMembers()]

        test_shell.do_member_images(FakeClient(), ImageMembers())
    def test_do_member_images_empty_result(self):
        class FakeImage1():
            def __init__(self):
                self.member_id = 'test'

        gc = client.Client('1', 'http://is.invalid')
        with mock.patch.object(gc.image_members, 'list') as mocked_list:
            mocked_list.return_value = []
            actual = test_shell.do_member_images(gc, FakeImage1())
            self.assertEqual(0, actual)