diff --git a/sdk/python/feast/infra/registry/sql.py b/sdk/python/feast/infra/registry/sql.py index 55412b33be..7867cdff4c 100644 --- a/sdk/python/feast/infra/registry/sql.py +++ b/sdk/python/feast/infra/registry/sql.py @@ -695,7 +695,7 @@ def _apply_object( ): self._maybe_init_project_metadata(project) - name = name or obj.name if hasattr(obj, "name") else None + name = name or (obj.name if hasattr(obj, "name") else None) assert name, f"name needs to be provided for {obj}" with self.engine.connect() as conn: diff --git a/sdk/python/tests/unit/test_sql_registry.py b/sdk/python/tests/unit/test_sql_registry.py index c1b45848ce..877811d0f3 100644 --- a/sdk/python/tests/unit/test_sql_registry.py +++ b/sdk/python/tests/unit/test_sql_registry.py @@ -551,3 +551,25 @@ def test_apply_data_source(sql_registry): assert registry_batch_source == batch_source sql_registry.teardown() + + +@pytest.mark.skipif( + sys.platform == "darwin" and "GITHUB_REF" in os.environ, + reason="does not run on mac github actions", +) +@pytest.mark.parametrize( + "sql_registry", + [ + lazy_fixture("mysql_registry"), + lazy_fixture("pg_registry"), + lazy_fixture("sqlite_registry"), + ], +) +def test_update_infra(sql_registry): + # Create infra object + project = "project" + infra = sql_registry.get_infra(project=project) + + # Should run update infra successfully + sql_registry.update_infra(infra, project) + sql_registry.teardown()