from importlib.util import module_from_spec, spec_from_file_location from pathlib import Path MIGRATION_PATH = Path(__file__).parents[1] / "alembic" / "versions" / "0037_detail_price_config.py" SPEC = spec_from_file_location("detail_price_config_migration", MIGRATION_PATH) assert SPEC and SPEC.loader MIGRATION = module_from_spec(SPEC) SPEC.loader.exec_module(MIGRATION) def test_price_columns_are_added_only_when_missing(): assert MIGRATION.missing_price_columns(set()) == { "priceStartingValue", "priceUnit", "pricePeopleRange", "priceDescription", } assert MIGRATION.missing_price_columns({"priceStartingValue", "priceUnit"}) == { "pricePeopleRange", "priceDescription", } assert MIGRATION.missing_price_columns({ "priceStartingValue", "priceUnit", "pricePeopleRange", "priceDescription", }) == set()