def test_eval_match_file_name_match_relative(): part = rulePart(match_type='file.name', match_param='*.txt') args = part.gen(file_={'name': 'file.txt'}) result = rules.eval_match(*args) assert result == True args = part.gen(file_={'name': 'file.log'}) result = rules.eval_match(*args) assert result == False
def test_eval_match_container_measurement(): part = rulePart(match_type='container.measurement', container={'measurement': 'diffusion'}) args = part.gen(match_param='diffusion') result = rules.eval_match(*args) assert result == True args = part.gen(match_param='c') result = rules.eval_match(*args) assert result == False
def test_eval_match_file_name_match_relative(): part = rulePart(match_type='file.name', match_param='*.txt') args = part.gen(file_={'name': 'file.txt' }) result = rules.eval_match(*args) assert result == True args = part.gen(file_={'name': 'file.log' }) result = rules.eval_match(*args) assert result == False
def test_eval_match_container_has_type(): part = rulePart(match_type='container.has-type', container={'files': [ {'measurements': ['a', 'diffusion', 'b']}, {'measurements': ['c', 'other', 'b']}, ]}) args = part.gen(match_param='other') result = rules.eval_match(*args) assert result == True args = part.gen(match_param='d') result = rules.eval_match(*args) assert result == False
def test_eval_match_file_measurements(): part = rulePart(match_type='file.measurements', file_={'measurements': ['a', 'diffusion', 'b'] }) args = part.gen(match_param='diffusion') result = rules.eval_match(*args) assert result == True args = part.gen(match_param='c') result = rules.eval_match(*args) assert result == False # Check match returns false without raising when not given a file.type args = part.gen(file_={'a': 'b'}, container={'a': 'b'}) result = rules.eval_match(*args) assert result == False
def test_eval_match_file_type(): part = rulePart(match_type='file.type', match_param='dicom') args = part.gen(file_={'type': 'dicom' }) result = rules.eval_match(*args) assert result == True args = part.gen(file_={'type': 'nifti' }) result = rules.eval_match(*args) assert result == False # Check match returns false without raising when not given a file.type args = part.gen(file_={'a': 'b'}, container={'a': 'b'}) result = rules.eval_match(*args) assert result == False
def test_eval_match_file_type(): part = rulePart(match_type='file.type', match_param='dicom') args = part.gen(file_={'type': 'dicom'}) result = rules.eval_match(*args) assert result == True args = part.gen(file_={'type': 'nifti'}) result = rules.eval_match(*args) assert result == False # Check match returns false without raising when not given a file.type args = part.gen(file_={'a': 'b'}, container={'a': 'b'}) result = rules.eval_match(*args) assert result == False
def test_eval_match_file_measurements(): part = rulePart(match_type='file.measurements', file_={'measurements': ['a', 'diffusion', 'b']}) args = part.gen(match_param='diffusion') result = rules.eval_match(*args) assert result == True args = part.gen(match_param='c') result = rules.eval_match(*args) assert result == False # Check match returns false without raising when not given a file.type args = part.gen(file_={'a': 'b'}, container={'a': 'b'}) result = rules.eval_match(*args) assert result == False
def test_eval_match_container_has_type(): part = rulePart(match_type='container.has-type', container={ 'files': [ { 'measurements': ['a', 'diffusion', 'b'] }, { 'measurements': ['c', 'other', 'b'] }, ] }) args = part.gen(match_param='other') result = rules.eval_match(*args) assert result == True args = part.gen(match_param='d') result = rules.eval_match(*args) assert result == False
def test_eval_match_unknown_type(): with pytest.raises(Exception): rules.eval_match('does-not-exist', None, None, None)