@@ -51,11 +51,11 @@ def create_test_suite(
5151 * ,
5252 description : str | None = None ,
5353 severity_default : str | None = None ,
54+ dq_score_exclude : bool = False ,
5455 export_to_observability : bool = False ,
5556 component_key : str | None = None ,
5657 component_type : str | None = "dataset" ,
5758 component_name : str | None = None ,
58- dq_score_exclude : bool = False ,
5959) -> str :
6060 """Create a test suite under a table group.
6161
@@ -67,14 +67,14 @@ def create_test_suite(
6767 description: Optional free-text description.
6868 severity_default: Optional default severity applied to tests that do
6969 not set their own. Accepts `Fail` or `Warning`.
70+ dq_score_exclude: Whether to exclude this suite's results from data
71+ quality scoring. Defaults to False.
7072 export_to_observability: Whether to export test results to the
71- configured DataOps Observability backend . Defaults to False.
73+ configured DataOps Observability API . Defaults to False.
7274 component_key: Component identifier in DataOps Observability.
7375 component_type: Component type in DataOps Observability
7476 (e.g. `dataset`). Defaults to `dataset`.
7577 component_name: Component display name in DataOps Observability.
76- dq_score_exclude: Whether to exclude this suite's results from data
77- quality scoring. Defaults to False.
7878 """
7979 name = test_suite_name .strip () if test_suite_name else ""
8080 errors : list [str ] = []
@@ -93,11 +93,11 @@ def create_test_suite(
9393 test_suite = name ,
9494 test_suite_description = _empty_to_none (description ),
9595 severity = parsed_severity .value if parsed_severity is not None else None ,
96+ dq_score_exclude = dq_score_exclude ,
9697 export_to_observability = export_to_observability ,
9798 component_key = _empty_to_none (component_key ),
9899 component_type = _empty_to_none (component_type ),
99100 component_name = _empty_to_none (component_name ),
100- dq_score_exclude = dq_score_exclude ,
101101 is_monitor = False ,
102102 )
103103 session = get_current_session ()
@@ -116,11 +116,11 @@ def update_test_suite(
116116 test_suite_name : str | None = None ,
117117 description : str | None = None ,
118118 severity_default : str | None = None ,
119+ dq_score_exclude : bool | None = None ,
119120 export_to_observability : bool | None = None ,
120121 component_key : str | None = None ,
121122 component_type : str | None = None ,
122123 component_name : str | None = None ,
123- dq_score_exclude : bool | None = None ,
124124) -> str :
125125 """Update fields on a test suite. Atomic — nothing saved unless every supplied value is valid.
126126
@@ -130,26 +130,26 @@ def update_test_suite(
130130 description: New free-text description. Pass an empty string to clear.
131131 severity_default: New default severity for tests that do not set their
132132 own. Accepts `Fail` or `Warning`.
133+ dq_score_exclude: Whether this suite's results are excluded from data
134+ quality scoring.
133135 export_to_observability: Whether test results are exported to the
134- configured DataOps Observability backend .
136+ configured DataOps Observability API .
135137 component_key: Component identifier in DataOps Observability.
136138 Pass an empty string to clear.
137139 component_type: Component type in DataOps Observability
138140 (e.g. `dataset`). Pass an empty string to clear.
139141 component_name: Component display name in DataOps Observability.
140142 Pass an empty string to clear.
141- dq_score_exclude: Whether this suite's results are excluded from data
142- quality scoring.
143143 """
144144 supplied = {
145145 "test_suite_name" : test_suite_name ,
146146 "description" : description ,
147147 "severity_default" : severity_default ,
148+ "dq_score_exclude" : dq_score_exclude ,
148149 "export_to_observability" : export_to_observability ,
149150 "component_key" : component_key ,
150151 "component_type" : component_type ,
151152 "component_name" : component_name ,
152- "dq_score_exclude" : dq_score_exclude ,
153153 }
154154 if all (value is None for value in supplied .values ()):
155155 raise MCPUserError ("No fields supplied to update." )
@@ -175,6 +175,8 @@ def update_test_suite(
175175 if parsed is not None :
176176 updates ["severity" ] = parsed .value
177177
178+ if dq_score_exclude is not None :
179+ updates ["dq_score_exclude" ] = dq_score_exclude
178180 if export_to_observability is not None :
179181 updates ["export_to_observability" ] = export_to_observability
180182 if component_key is not None :
@@ -183,8 +185,6 @@ def update_test_suite(
183185 updates ["component_type" ] = _empty_to_none (component_type )
184186 if component_name is not None :
185187 updates ["component_name" ] = _empty_to_none (component_name )
186- if dq_score_exclude is not None :
187- updates ["dq_score_exclude" ] = dq_score_exclude
188188
189189 if errors :
190190 raise_validation_error (errors , "Update rejected. No changes saved." )
@@ -230,14 +230,14 @@ def _render_created_suite(suite: TestSuite, *, table_group_name: str) -> str:
230230 doc .field ("Description" , suite .test_suite_description )
231231 if suite .severity :
232232 doc .field ("Default severity" , suite .severity )
233+ doc .field ("Exclude from quality scoring" , suite .dq_score_exclude )
233234 doc .field ("Export to Observability" , suite .export_to_observability )
234235 if suite .component_key :
235236 doc .field ("Component key" , suite .component_key )
236237 if suite .component_type :
237238 doc .field ("Component type" , suite .component_type )
238239 if suite .component_name :
239240 doc .field ("Component name" , suite .component_name )
240- doc .field ("Exclude from quality scoring" , suite .dq_score_exclude )
241241 return doc .render ()
242242
243243
@@ -247,20 +247,20 @@ def _render_created_suite(suite: TestSuite, *, table_group_name: str) -> str:
247247 "test_suite" ,
248248 "test_suite_description" ,
249249 "severity" ,
250+ "dq_score_exclude" ,
250251 "export_to_observability" ,
251252 "component_key" ,
252253 "component_type" ,
253254 "component_name" ,
254- "dq_score_exclude" ,
255255)
256256
257257_DIFF_LABELS : dict [str , str ] = {
258258 "test_suite" : "Name" ,
259259 "test_suite_description" : "Description" ,
260260 "severity" : "Default severity" ,
261+ "dq_score_exclude" : "Exclude from quality scoring" ,
261262 "export_to_observability" : "Export to Observability" ,
262263 "component_key" : "Component key" ,
263264 "component_type" : "Component type" ,
264265 "component_name" : "Component name" ,
265- "dq_score_exclude" : "Exclude from quality scoring" ,
266266}
0 commit comments