Skip to content

Commit ea9f863

Browse files
committed
Test updates
1 parent e2c620b commit ea9f863

File tree

3 files changed

+32
-4
lines changed

3 files changed

+32
-4
lines changed

.vscode/settings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898
],
9999
"python.analysis.typeCheckingMode": "basic",
100100
"python.testing.pytestArgs": [
101-
"--cov=servicex",
101+
"--cov=servicex",
102102
"tests"
103103
],
104104
"python.testing.unittestEnabled": false,

servicex/query.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,7 @@ class QueryStringGenerator(ABC):
540540
'''This abstract class just defines an interface to give the selection string'''
541541
@abc.abstractmethod
542542
def generate_selection_string(self) -> str:
543-
pass
543+
""" override with the selection string to send to ServiceX """
544544

545545

546546
class GenericQueryStringGenerator(QueryStringGenerator):

tests/test_databinder.py

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,13 +179,14 @@ def test_funcadl_query(transformed_result):
179179
spec = ServiceXSpec.model_validate({
180180
"General": {
181181
"ServiceX": "testing4",
182-
"Codegen": "uproot-raw",
182+
"Codegen": "uproot",
183183
},
184184
"Sample": [
185185
{
186186
"Name": "sampleA",
187187
"RucioDID": "user.ivukotic:user.ivukotic.single_top_tW__nominal",
188-
"Query": FuncADLQuery().Select(lambda e: {"lep_pt": e["lep_pt"]})
188+
"Query": FuncADLQuery().Select(lambda e: {"lep_pt": e["lep_pt"]}),
189+
"Tree": "nominal"
189190
}
190191
]
191192
})
@@ -217,3 +218,30 @@ def run_query(input_filenames=None):
217218
with patch('servicex.dataset_group.DatasetGroup.as_files',
218219
return_value=[transformed_result]):
219220
deliver(spec, config_path='tests/example_config.yaml')
221+
222+
223+
def test_generic_query():
224+
from servicex.servicex_client import ServiceXClient
225+
spec = ServiceXSpec.model_validate({
226+
"General": {
227+
"ServiceX": "testing4",
228+
"Codegen": "uproot-raw",
229+
},
230+
"Sample": [
231+
{
232+
"Name": "sampleA",
233+
"RucioDID": "user.ivukotic:user.ivukotic.single_top_tW__nominal",
234+
"Query": "[{'treename': 'nominal'}]"
235+
}
236+
]
237+
})
238+
sx = ServiceXClient(backend=spec.General.ServiceX, config_path='tests/example_config.yaml')
239+
query = sx.generic_query(dataset_identifier=spec.Sample[0].RucioDID,
240+
codegen=spec.General.Codegen, query=spec.Sample[0].Query)
241+
assert query.generate_selection_string() == "[{'treename': 'nominal'}]"
242+
with pytest.raises(ValueError):
243+
query = sx.generic_query(dataset_identifier=spec.Sample[0].RucioDID,
244+
codegen=spec.General.Codegen, query=5)
245+
with pytest.raises(NameError):
246+
query = sx.generic_query(dataset_identifier=spec.Sample[0].RucioDID,
247+
codegen='nonsense', query=spec.Sample[0].Query)

0 commit comments

Comments
 (0)