File tree 2 files changed +19
-1
lines changed
2 files changed +19
-1
lines changed Original file line number Diff line number Diff line change @@ -56,8 +56,12 @@ def sqlmesh_config(
56
56
if register_comments is not None :
57
57
target_to_sqlmesh_args ["register_comments" ] = register_comments
58
58
59
+ loader = kwargs .pop ("loader" , DbtLoader )
60
+ if not issubclass (loader , DbtLoader ):
61
+ raise ConfigError ("The loader must be a DbtLoader." )
62
+
59
63
return Config (
60
- loader = DbtLoader ,
64
+ loader = loader ,
61
65
model_defaults = model_defaults ,
62
66
variables = variables or {},
63
67
** {
Original file line number Diff line number Diff line change @@ -901,6 +901,20 @@ def test_connection_args(tmp_path):
901
901
assert not config .gateways ["in_memory" ].connection .register_comments
902
902
903
903
904
+ def test_custom_dbt_loader ():
905
+ from sqlmesh .core .loader import SqlMeshLoader
906
+ from sqlmesh .dbt .loader import DbtLoader
907
+
908
+ dbt_project_dir = "tests/fixtures/dbt/sushi_test"
909
+ with pytest .raises (ConfigError , match = "The loader must be a DbtLoader." ):
910
+ sqlmesh_config (dbt_project_dir , loader = SqlMeshLoader )
911
+
912
+ class CustomDbtLoader (DbtLoader ):
913
+ pass
914
+
915
+ sqlmesh_config (dbt_project_dir , loader = CustomDbtLoader )
916
+
917
+
904
918
@pytest .mark .cicdonly
905
919
def test_db_type_to_relation_class ():
906
920
from dbt .adapters .bigquery .relation import BigQueryRelation
You can’t perform that action at this time.
0 commit comments