Skip to content

Commit ddc2191

Browse files
authored
cp_unity_testapp.py: fix bug where command-line flags were ignored. (#319)
1 parent f04a4a8 commit ddc2191

File tree

1 file changed

+33
-1
lines changed

1 file changed

+33
-1
lines changed

firestore/scripts/cp_unity_testapp.py

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ class ParsedFlags:
155155

156156
def parse(self) -> ParsedFlags:
157157
self._load_defaults_file()
158+
self._load_flag_values()
158159
return self._to_parsed_flags()
159160

160161
def _to_parsed_flags(self) -> ParsedFlags:
@@ -194,6 +195,33 @@ def _load_defaults_file(self) -> None:
194195
raise self.DefaultsFileParseError(
195196
f"line {line_number}: expected line after this line: {line}")
196197

198+
def _load_flag_values(self) -> None:
199+
if FLAG_GIT_REPO_DIR.value:
200+
self._log_using_flag_from_command_line(FLAG_GIT_REPO_DIR)
201+
self.git_repo_dir = pathlib.Path(FLAG_GIT_REPO_DIR.value)
202+
if FLAG_DEST_DIR_2017.value:
203+
self._log_using_flag_from_command_line(FLAG_DEST_DIR_2017)
204+
self.dest_dir_2017 = pathlib.Path(FLAG_DEST_DIR_2017.value)
205+
if FLAG_DEST_DIR_2020.value:
206+
self._log_using_flag_from_command_line(FLAG_DEST_DIR_2020)
207+
self.dest_dir_2020 = pathlib.Path(FLAG_DEST_DIR_2020.value)
208+
if FLAG_GOOGLE_SERVICES_JSON_FILE.value:
209+
self._log_using_flag_from_command_line(FLAG_GOOGLE_SERVICES_JSON_FILE)
210+
self.google_services_json_file = pathlib.Path(FLAG_GOOGLE_SERVICES_JSON_FILE.value)
211+
if FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE.value:
212+
self._log_using_flag_from_command_line(FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE)
213+
self.google_service_info_plist_file = pathlib.Path(FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE.value)
214+
if FLAG_ANDROID_PACKAGE_NAME.value:
215+
self._log_using_flag_from_command_line(FLAG_ANDROID_PACKAGE_NAME)
216+
self.android_package_name = FLAG_ANDROID_PACKAGE_NAME.value
217+
if FLAG_APPLE_DEVELOPER_TEAM_ID.value:
218+
self._log_using_flag_from_command_line(FLAG_APPLE_DEVELOPER_TEAM_ID)
219+
self.apple_developer_team_id = FLAG_APPLE_DEVELOPER_TEAM_ID.value
220+
221+
@classmethod
222+
def _log_using_flag_from_command_line(cls, flag: flags.Flag) -> None:
223+
logging.info("Using flag from command line: --%s=%s", flag.name, flag.value)
224+
197225
@classmethod
198226
def _flag_from_flag_name(cls, flag_name: str) -> Optional[flags.Flag]:
199227
known_flags = (
@@ -363,7 +391,11 @@ def _load_android_package_name(self, file_path: pathlib.Path) -> str:
363391
if self.android_package_name is None:
364392
package_name = package_names[0]
365393
elif self.android_package_name not in package_names:
366-
raise self.Error(f"Android package name {self.android_package_name} not found in {file_path}")
394+
raise self.Error(
395+
f"Android package name {self.android_package_name} not found in {file_path}; "
396+
f"consider instead using one of the following {len(package_names)} package "
397+
f"names that were found: "
398+
+ ", ".join(sorted(package_names)))
367399
else:
368400
package_name = self.android_package_name
369401

0 commit comments

Comments
 (0)