def test_main_calls(self, keep_images_like_patched, get_auth_schemes_patched): # check if keep_images_like is called when passed --images-like main_loop(parse_args(('-r', 'localhost:8989', '--images-like', 'me'))) keep_images_like_patched.assert_called_with(['a', 'b', 'c'], ['me']) # check if keep_images_like is *not* called when passed --images-like keep_images_like_patched.reset_mock() args = parse_args(('-r', 'localhost:8989')) args.image = [] # this makes the for loop in main_loop not run at all main_loop(args) keep_images_like_patched.assert_not_called()
def test_all_args(self): args_list = ["-r", "hostname", "-l", "loginstring", "-d", "-n", "15", "--dry-run", "-i", "imagename1", "imagename2", "--keep-tags", "keep1", "keep2", "--tags-like", "tags_like_text", "--no-validate-ssl", "--delete-all", "--layers", "--delete-by-hours", "24", "--keep-by-hours", "24", "--digest-method", "GET", "--order-by-date"] args = parse_args(args_list) self.assertTrue(args.delete) self.assertTrue(args.layers) self.assertTrue(args.no_validate_ssl) self.assertTrue(args.delete_all) self.assertTrue(args.layers) self.assertTrue(args.order_by_date) self.assertEqual(args.image, ["imagename1", "imagename2"]) self.assertEqual(args.num, "15") self.assertEqual(args.login, "loginstring") self.assertEqual(args.tags_like, ["tags_like_text"]) self.assertEqual(args.host, "hostname") self.assertEqual(args.keep_tags, ["keep1", "keep2"]) self.assertEqual(args.delete_by_hours, "24") self.assertEqual(args.keep_by_hours, "24") self.assertEqual(args.digest_method, "GET")
def test_default_args(self): args_list = ["-r", "hostname", "-l", "loginstring"] args = parse_args(args_list) self.assertEqual(args.digest_method, "HEAD")
def test_no_args(self): with self.assertRaises(SystemExit): parse_args("")
def test_keep_tags(self, delete_tags_patched, get_auth_schemes_patched): # Check if delete_tags is called from main_loop (directly or indirectly # through delete_tags_by_age) with `keep_tags` set to the tags we want to keep. main_loop(parse_args(('--delete', '--num', '5', '-r', 'localhost:8989', '--keep-tags', '1'))) delete_tags_patched.assert_called_with(TestKeepTags.mock_registry, 'a', False, ['1', '2'], ['1', '3', '4', '5', '6', '7'])