blob: a952965f14dd946da1bafa7eb8130a53f2f44428 [file] [log] [blame]
Mike Frysingerf1ba7ad2022-09-12 05:42:57 -04001# Copyright 2020 The ChromiumOS Authors
Tatsuhisa Yamaguchic439ce62020-07-08 10:58:26 +00002# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5"""Test fetch_cipd."""
6
7from chromite.lib import cros_test_lib
8from chromite.scripts import fetch_cipd
9
10
11class FetchCipdTest(cros_test_lib.TestCase):
Alex Klein1699fab2022-09-08 08:46:06 -060012 """Tests for fetch_cipd script."""
Tatsuhisa Yamaguchic439ce62020-07-08 10:58:26 +000013
Alex Klein1699fab2022-09-08 08:46:06 -060014 def testParseCipdUri(self):
15 uri = "cipd://chromiumos/infra/tclint/linux-amd64:abcdefghijklm"
16 path, version = fetch_cipd.ParseCipdUri(uri)
17 self.assertEqual("chromiumos/infra/tclint/linux-amd64", path)
18 self.assertEqual("abcdefghijklm", version)
Tatsuhisa Yamaguchic439ce62020-07-08 10:58:26 +000019
Alex Klein1699fab2022-09-08 08:46:06 -060020 def testParseCipdUriWrongScheme(self):
21 uri = "gs://chromiumos/infra/tclint/linux-amd64:abcdefghijklm"
22 with self.assertRaises(ValueError):
23 fetch_cipd.ParseCipdUri(uri)
Tatsuhisa Yamaguchic439ce62020-07-08 10:58:26 +000024
Alex Klein1699fab2022-09-08 08:46:06 -060025 def testParseCipdUriNoVersion(self):
26 uri = "cipd://chromiumos/infra/tclint/linux-amd64"
27 with self.assertRaises(ValueError):
28 fetch_cipd.ParseCipdUri(uri)
Mike Frysinger32703542023-01-18 21:41:15 -050029
30 def testParseCipdUriGitVersion(self):
31 uri = "cipd://chromiumos/infra/tclint/linux-amd64:git_version:1234"
32 path, version = fetch_cipd.ParseCipdUri(uri)
33 self.assertEqual("chromiumos/infra/tclint/linux-amd64", path)
34 self.assertEqual("git_version:1234", version)