SdkService/Uprev: Uprev TC_PATH, too

BUG=b:259445595
TEST=./run_tests

Change-Id: I8b0a75940e78786de1d561459578af8a230c5920
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/4507935
Tested-by: Greg Edelston <gredelston@google.com>
Reviewed-by: Ram Chandrasekar <rchandrasekar@google.com>
Auto-Submit: Greg Edelston <gredelston@google.com>
Commit-Queue: Greg Edelston <gredelston@google.com>
diff --git a/api/controller/sdk_unittest.py b/api/controller/sdk_unittest.py
index 5110056..53b2ddb 100644
--- a/api/controller/sdk_unittest.py
+++ b/api/controller/sdk_unittest.py
@@ -569,11 +569,14 @@
             "uprev_sdk_and_prebuilts",
         )
 
-    def NewRequest(self, version: str = ""):
+    def NewRequest(
+        self, version: str = "", toolchain_tarball_template: str = ""
+    ):
         """Return a new UprevRequest with standard inputs."""
         return sdk_pb2.UprevRequest(
             binhost_gs_bucket=self._binhost_gs_bucket,
             version=version,
+            toolchain_tarball_template=toolchain_tarball_template,
         )
 
     @staticmethod
@@ -588,12 +591,17 @@
         version specified in the UprevRequest.
         """
         specified_version = "1970.01.01.000000"
-        request = self.NewRequest(version=specified_version)
+        toolchain_tarball_template = "path/to/%(version)s/toolchain"
+        request = self.NewRequest(
+            version=specified_version,
+            toolchain_tarball_template=toolchain_tarball_template,
+        )
         response = self.NewResponse()
         sdk_controller.Uprev(request, response, self.api_config)
         self._uprev_patch.assert_called_with(
             binhost_gs_bucket=self._binhost_gs_bucket,
             version=specified_version,
+            toolchain_tarball_template=toolchain_tarball_template,
         )
 
     def testWithoutVersion(self):
@@ -604,10 +612,21 @@
         fetched via sdk_controller.GetLatestUprevTargetVersionVersion
         (mocked here in setUp()).
         """
-        request = self.NewRequest()
+        toolchain_tarball_template = "path/to/%(version)s/toolchain"
+        request = self.NewRequest(
+            toolchain_tarball_template=toolchain_tarball_template
+        )
         response = self.NewResponse()
         sdk_controller.Uprev(request, response, self.api_config)
         self._uprev_patch.assert_called_with(
             binhost_gs_bucket=self._binhost_gs_bucket,
             version=self._latest_uprev_target_version,
+            toolchain_tarball_template=toolchain_tarball_template,
         )
+
+    def testWithoutToolchainTarballTemplate(self):
+        """Test the endpoint with `toolchain_tarball_template` not specified."""
+        request = self.NewRequest(version="1234")
+        response = self.NewResponse()
+        with self.assertRaises(cros_build_lib.DieSystemExit):
+            sdk_controller.Uprev(request, response, self.api_config)