@@ -994,9 +994,13 @@ def test_unpause_snapshots_remove_intervals(
994994
995995
996996def test_get_version (state_sync : EngineAdapterStateSync ) -> None :
997+ from sqlmesh import __version__ as SQLMESH_VERSION
998+
997999 # fresh install should not raise
9981000 assert state_sync .get_versions () == Versions (
999- schema_version = SCHEMA_VERSION , sqlglot_version = SQLGLOT_VERSION
1001+ schema_version = SCHEMA_VERSION ,
1002+ sqlglot_version = SQLGLOT_VERSION ,
1003+ sqlmesh_version = SQLMESH_VERSION ,
10001004 )
10011005
10021006 # Start with a clean slate.
@@ -1014,7 +1018,10 @@ def test_get_version(state_sync: EngineAdapterStateSync) -> None:
10141018
10151019 # migration version is behind, always raise
10161020 state_sync ._update_versions (schema_version = SCHEMA_VERSION + 1 )
1017- error = rf"SQLMesh \(local\) is using version '{ SCHEMA_VERSION } ' which is behind '{ SCHEMA_VERSION + 1 } '"
1021+ error = (
1022+ rf"SQLMesh \(local\) is using version '{ SCHEMA_VERSION } ' which is behind '{ SCHEMA_VERSION + 1 } ' \(remote\). "
1023+ rf"""Please upgrade SQLMesh \('pip install --upgrade "sqlmesh=={ SQLMESH_VERSION } "' command\)."""
1024+ )
10181025
10191026 with pytest .raises (SQLMeshError , match = error ):
10201027 state_sync .get_versions ()
@@ -1037,14 +1044,17 @@ def test_get_version(state_sync: EngineAdapterStateSync) -> None:
10371044 state_sync ._update_versions (sqlglot_version = sqlglot_version )
10381045 state_sync .get_versions (validate = False )
10391046
1040- # sqlmesh version is behind, always raise
1047+ # sqlglot version is behind, always raise
10411048 sqlglot_version = f"{ major } .{ int (minor ) + 1 } .{ patch } "
1042- error = rf"SQLGlot \(local\) is using version '{ SQLGLOT_VERSION } ' which is behind '{ sqlglot_version } '"
1049+ error = (
1050+ rf"SQLGlot \(local\) is using version '{ SQLGLOT_VERSION } ' which is behind '{ sqlglot_version } ' \(remote\). "
1051+ rf"""Please upgrade SQLGlot \('pip install --upgrade "sqlglot=={ sqlglot_version } "' command\)."""
1052+ )
10431053 state_sync ._update_versions (sqlglot_version = sqlglot_version )
10441054 with pytest .raises (SQLMeshError , match = error ):
10451055 state_sync .get_versions (validate = False )
10461056
1047- # sqlmesh version is ahead, only raise with validate is true
1057+ # sqlglot version is ahead, only raise with validate is true
10481058 sqlglot_version = f"{ major } .{ int (minor ) - 1 } .{ patch } "
10491059 error = rf"SQLGlot \(local\) is using version '{ SQLGLOT_VERSION } ' which is ahead of '{ sqlglot_version } '"
10501060 state_sync ._update_versions (sqlglot_version = sqlglot_version )
@@ -1054,6 +1064,8 @@ def test_get_version(state_sync: EngineAdapterStateSync) -> None:
10541064
10551065
10561066def test_migrate (state_sync : EngineAdapterStateSync , mocker : MockerFixture ) -> None :
1067+ from sqlmesh import __version__ as SQLMESH_VERSION
1068+
10571069 migrate_rows_mock = mocker .patch ("sqlmesh.core.state_sync.EngineAdapterStateSync._migrate_rows" )
10581070 backup_state_mock = mocker .patch ("sqlmesh.core.state_sync.EngineAdapterStateSync._backup_state" )
10591071 state_sync .migrate ()
@@ -1069,7 +1081,9 @@ def test_migrate(state_sync: EngineAdapterStateSync, mocker: MockerFixture) -> N
10691081 migrate_rows_mock .assert_called_once ()
10701082 backup_state_mock .assert_called_once ()
10711083 assert state_sync .get_versions () == Versions (
1072- schema_version = SCHEMA_VERSION , sqlglot_version = SQLGLOT_VERSION
1084+ schema_version = SCHEMA_VERSION ,
1085+ sqlglot_version = SQLGLOT_VERSION ,
1086+ sqlmesh_version = SQLMESH_VERSION ,
10731087 )
10741088
10751089
0 commit comments