INNER CODE UNIT · Python
validate_build_settings
RockxyApp/Rockxy · releases/validate_metadata.py:459
def validate_build_settings(path: Path, expected: dict[str, Any]) -> None:
settings = load_xcconfig(path)
checks = {
"ROCKXY_APP_VERSION": expected["version"],
"ROCKXY_APP_BUILD": expected["build"],
}
for key, expected_value in checks.items():
if str(settings.get(key, "")) != str(expected_value):
fail(f"{path} {key} is {settings.get(key)!r}, expected {expected_value!r}")
release_date = settings.get("ROCKXY_BUILD_RELEASE_DATE") or settings.get("ROCKXY_RELEASE_BUILD_DATE")
if release_date in ("", None):
fail(f"{path} must set ROCKXY_BUILD_RELEASE_DATE or ROCKXY_RELEASE_BUILD_DATE for release builds")
actual_date = validate_utc_release_date(release_date, f"{path} build release date")
expected_date = validate_utc_release_date(expected["release_date"], "expected release_date")
if actual_date != expected_date:
fail(f"{path} build release date is {actual_date}, expected {expected_date}")