@@ -865,7 +865,10 @@ def test_promote_snapshots_parent_plan_id_mismatch(
865865 state_sync .promote (stale_new_environment )
866866
867867
868- def test_promote_environment_expired (state_sync : EngineAdapterStateSync , make_snapshot : t .Callable ):
868+ @pytest .mark .parametrize ("environment_name" , ["dev" , "prod" ])
869+ def test_promote_environment_expired (
870+ state_sync : EngineAdapterStateSync , make_snapshot : t .Callable , environment_name : str
871+ ):
869872 snapshot = make_snapshot (
870873 SqlModel (
871874 name = "a" ,
@@ -880,7 +883,7 @@ def test_promote_environment_expired(state_sync: EngineAdapterStateSync, make_sn
880883 state_sync .invalidate_environment ("dev" )
881884
882885 new_environment = Environment (
883- name = "dev" ,
886+ name = environment_name ,
884887 snapshots = [snapshot .table_info ],
885888 start_at = "2022-01-01" ,
886889 end_at = "2022-01-01" ,
@@ -901,10 +904,15 @@ def test_promote_environment_expired(state_sync: EngineAdapterStateSync, make_sn
901904 new_environment .previous_plan_id = new_environment .plan_id
902905 new_environment .plan_id = "another_plan_id"
903906 promotion_result = state_sync .promote (new_environment )
907+
904908 # Should be empty since the environment is no longer expired and nothing has changed
905- assert promotion_result .added == []
906909 assert promotion_result .removed == []
907910 assert promotion_result .removed_environment_naming_info is None
911+ if environment_name == "prod" :
912+ assert promotion_result .added == []
913+ else :
914+ # We should always recreate views in dev environments
915+ assert promotion_result .added == [snapshot .table_info ]
908916
909917
910918def test_promote_snapshots_no_gaps (state_sync : EngineAdapterStateSync , make_snapshot : t .Callable ):
0 commit comments