Best Python code snippet using pyshould_python
test_query.py
Source:test_query.py  
1import pytest2from ukbcc import query3def test_basic_query_creation(main_csv, gp_csv):4    cohort_criteria = {'all_of': [('6070', '1')], 'any_of': [], 'none_of': []}5    obs_query = query.create_queries(cohort_criteria,6                                   main_filename=main_csv,7                                   gpc_path=gp_csv)8    exp_query={'gp_clinical': {'all_of': '', 'any_of': '', 'none_of': ''}, 'main': {'all_of': "(t6070_0_0 == '1')", 'any_of': '', 'none_of': ''}}9    assert obs_query == exp_query10#Check all of with a single field works11def test_all_query_basic(main_csv, gp_csv):12    cohort_criteria = {'all_of': [('6070', "1")], 'any_of': [], 'none_of': []}13    gen_query = query.create_queries(cohort_criteria,14                                   main_filename=main_csv,15                                   gpc_path=gp_csv)16    ids = query.query_databases(cohort_criteria=cohort_criteria,17                                queries=gen_query, main_filename=main_csv,18                                write_dir=None, gpc_path=gp_csv,19                                out_filename=None, write=False)20    exp_ids = set(["1041796", "1037058", "1024938", "1016017", "1038882", "1030520", "1003670", "1027017"])21    assert exp_ids == set(ids)22#Check that "all of" works over fields with multiple columns23def test_all_multiple_columns(main_csv, gp_csv):24    cohort_criteria = {'all_of': [('6148', "4")], 'any_of': [], 'none_of': []}25    gen_query = query.create_queries(cohort_criteria,26                                   main_filename=main_csv,27                                   gpc_path=gp_csv)28    ids = query.query_databases(cohort_criteria=cohort_criteria,29                                queries=gen_query, main_filename=main_csv,30                                write_dir=None, gpc_path=gp_csv,31                                out_filename=None, write=False)32    exp_ids = set(["1037918",  "1033149",  "1016017",  "1033388",  "1030520",  "1003670"])33    assert exp_ids == set(ids)34#Check any of with a single field works35def test_any_singleton_query(main_csv, gp_csv):36    cohort_criteria = {'any_of': [('6070', "1")], 'all_of': [], 'none_of': []}37    gen_query = query.create_queries(cohort_criteria,38                                   main_filename=main_csv,39                                   gpc_path=gp_csv)40    ids = query.query_databases(cohort_criteria=cohort_criteria,41                                queries=gen_query, main_filename=main_csv,42                                write_dir=None, gpc_path=gp_csv,43                                out_filename=None, write=False)44    exp_ids = set(["1041796", "1037058", "1024938", "1016017", "1038882", "1030520", "1003670", "1027017"])45    assert exp_ids == set(ids)46#Check that any of works over fields with multiple columns47def test_any_multiple_columns(main_csv, gp_csv):48    cohort_criteria = {'any_of': [('6148', "4")], 'all_of': [], 'none_of': []}49    gen_query = query.create_queries(cohort_criteria,50                                   main_filename=main_csv,51                                   gpc_path=gp_csv)52    ids = query.query_databases(cohort_criteria=cohort_criteria,53                                queries=gen_query, main_filename=main_csv,54                                write_dir=None, gpc_path=gp_csv,55                                out_filename=None, write=False)56    exp_ids = set(["1037918",  "1033149",  "1016017",  "1033388",  "1030520",  "1003670"])57    assert exp_ids == set(ids)58#Check any of with two values for the same field returns their union59def test_any_pair_same_field_query(main_csv, gp_csv):60    cohort_criteria = {'any_of': [('6070', "1"), ('6070', "2")], 'all_of': [], 'none_of': []}61    gen_query = query.create_queries(cohort_criteria,62                                   main_filename=main_csv,63                                   gpc_path=gp_csv)64    ids = query.query_databases(cohort_criteria=cohort_criteria,65                                queries=gen_query, main_filename=main_csv,66                                write_dir=None, gpc_path=gp_csv,67                                out_filename=None, write=False)68    exp_ids = set(["1037918", "1041796", "1037058", "1024938", "1016017", "1038882", "1030520", "1003670", "1027017"])69    assert exp_ids == set(ids)70#Check any of with two fields returns their union71def test_any_pair_diff_field_query(main_csv, gp_csv):72    cohort_criteria = {'any_of': [('6070', "1"), ('6119', "1")], 'all_of': [], 'none_of': []}73    gen_query = query.create_queries(cohort_criteria,74                                   main_filename=main_csv,75                                   gpc_path=gp_csv)76    ids = query.query_databases(cohort_criteria=cohort_criteria,77                                queries=gen_query, main_filename=main_csv,78                                write_dir=None, gpc_path=gp_csv,79                                out_filename=None, write=False)80    exp_ids = set(["1041796", "1037058", "1024938", "1016017", "1038882", "1030520", "1003670", "1027017"])81    assert exp_ids == set(ids)82# Check if a none only query returns values83def test_none_basic(main_csv, gp_csv):84    cohort_criteria = {'none_of': [('6070', "1")], 'all_of': [], 'any_of': []}85    gen_query = query.create_queries(cohort_criteria,86                                   main_filename=main_csv,87                                   gpc_path=gp_csv)88    print(gen_query)89    ids = query.query_databases(cohort_criteria=cohort_criteria,90                                queries=gen_query, main_filename=main_csv,91                                write_dir=None, gpc_path=gp_csv,92                                out_filename=None, write=False)93    print(ids)94    exp_ids = set(["1037918",  "1033149",  "1033388",  "1031625",  "1031595",  "1008947"])95    assert exp_ids == set(ids)96#Check that "all of" and "none_of" works over fields with multiple columns97def test_all__none_multiple_columns(main_csv, gp_csv):98    cohort_criteria = {'all_of': [('6148', "4")], 'any_of': [], 'none_of': [("6070", "2")]}99    gen_query = query.create_queries(cohort_criteria,100                                   main_filename=main_csv,101                                   gpc_path=gp_csv)102    ids = query.query_databases(cohort_criteria=cohort_criteria,103                                queries=gen_query, main_filename=main_csv,104                                write_dir=None, gpc_path=gp_csv,105                                out_filename=None, write=False)106    exp_ids = set([ "1033149",  "1016017",  "1033388",  "1030520",  "1003670"])107    assert exp_ids == set(ids)108#Check that "none_of" returns empty fields.109def test_none_returns_empty(main_csv, gp_csv):110    cohort_criteria = {'all_of': [('6148', "4")], 'any_of': [], 'none_of': [("6070", "2"), ("6070", "1")]}111    gen_query = query.create_queries(cohort_criteria,112                                   main_filename=main_csv,113                                   gpc_path=gp_csv)114    ids = query.query_databases(cohort_criteria=cohort_criteria,115                                queries=gen_query, main_filename=main_csv,116                                write_dir=None, gpc_path=gp_csv,117                                out_filename=None, write=False)118    exp_ids = set(["1033149",  "1033388"])119    assert exp_ids == set(ids)120#Check fields with spaces121def test_fields_with_spaces(main_csv, gp_csv):122    cohort_criteria = {'all_of': [('41270', "Block H40-H42")], 'any_of': [], 'none_of': []}123    gen_query = query.create_queries(cohort_criteria,124                                   main_filename=main_csv,125                                   gpc_path=gp_csv)126    ids = query.query_databases(cohort_criteria=cohort_criteria,127                                queries=gen_query, main_filename=main_csv,128                                write_dir=None, gpc_path=gp_csv,129                                out_filename=None, write=False)130    exp_ids = set(["1033149",  "1041796"])131    assert exp_ids == set(ids)132#What do we do with fields that don't exist133def test_missing_fields(main_csv, gp_csv):134    cohort_criteria = {'all_of': [('DoesNotExist', "X")], 'any_of': [], 'none_of': []}135    gen_query = query.create_queries(cohort_criteria,136                                   main_filename=main_csv,137                                   gpc_path=gp_csv)138    ids = query.query_databases(cohort_criteria=cohort_criteria,139                                queries=gen_query, main_filename=main_csv,140                                write_dir=None, gpc_path=gp_csv,141                                out_filename=None, write=False)142    exp_ids = set([])143    assert exp_ids == set(ids)144#What do we do when we query nan?145def test_missing_fields(main_csv, gp_csv):146    cohort_criteria = {'all_of': [('6070', "nan")], 'any_of': [], 'none_of': []}147    gen_query = query.create_queries(cohort_criteria,148                                   main_filename=main_csv,149                                   gpc_path=gp_csv)150    ids = query.query_databases(cohort_criteria=cohort_criteria,151                                queries=gen_query, main_filename=main_csv,152                                write_dir=None, gpc_path=gp_csv,153                                out_filename=None, write=False)154    exp_ids = set([])155    assert exp_ids == set(ids)156#Can we do a query on read2 at all?157def test_all_gp_clinical_read2(main_csv, gp_csv):158    cohort_criteria = {'all_of': [('read_2', "4662.")], 'any_of': [], 'none_of': []}159    gen_query = query.create_queries(cohort_criteria,160                                   main_filename=main_csv,161                                   gpc_path=gp_csv)162    ids = query.query_databases(cohort_criteria=cohort_criteria,163                                queries=gen_query, main_filename=main_csv,164                                write_dir=None, gpc_path=gp_csv,165                                out_filename=None, write=False)166    exp_ids = set(["1041796"])167    assert exp_ids == set(ids)168#Can we read read2 when multiple entries per person169def test_all_gp_clinical_read_2_multiple(main_csv, gp_csv):170    cohort_criteria = {'all_of': [('read_2', "XE0of")], 'any_of': [], 'none_of': []}171    gen_query = query.create_queries(cohort_criteria,172                                   main_filename=main_csv,173                                   gpc_path=gp_csv)174    ids = query.query_databases(cohort_criteria=cohort_criteria,175                                queries=gen_query, main_filename=main_csv,176                                write_dir=None, gpc_path=gp_csv,177                                out_filename=None, write=False)178    exp_ids = set(["1016017"])179    assert exp_ids == set(ids)180#Can we read read3181def test_all_gp_clinical_read_3(main_csv, gp_csv):182    cohort_criteria = {'all_of': [('read_3', "XE0Gu")], 'any_of': [], 'none_of': []}183    gen_query = query.create_queries(cohort_criteria,184                                   main_filename=main_csv,185                                   gpc_path=gp_csv)186    ids = query.query_databases(cohort_criteria=cohort_criteria,187                                queries=gen_query, main_filename=main_csv,188                                write_dir=None, gpc_path=gp_csv,189                                out_filename=None, write=False)190    exp_ids = set(["1037918"])191    assert exp_ids == set(ids)192#Can we query 2 and 3?193def test_all_gp_clinical_read2and3(main_csv, gp_csv):194    cohort_criteria = {'all_of': [], 'any_of': [('read_2', "XE0of"), ('read_3', 'XE0Gu')],  'none_of': []}195    gen_query = query.create_queries(cohort_criteria,196                                   main_filename=main_csv,197                                   gpc_path=gp_csv)198    ids = query.query_databases(cohort_criteria=cohort_criteria,199                                queries=gen_query, main_filename=main_csv,200                                write_dir=None, gpc_path=gp_csv,201                                out_filename=None, write=False)202    exp_ids = set(["1016017", "1037918"])203    assert exp_ids == set(ids)204#Complex query, use gp_clinical and main, and use all, not and any205def test_any_pair_same_field_query(main_csv, gp_csv):206    cohort_criteria = {'any_of': [('41270', "Block H40-H42"), ('6119', "3"), ('6148','4')], 'all_of': [(('6070', "1"))], 'none_of': [('read_2', "XE0of")]}207    gen_query = query.create_queries(cohort_criteria,208                                   main_filename=main_csv,209                                   gpc_path=gp_csv)210    ids = query.query_databases(cohort_criteria=cohort_criteria,211                                queries=gen_query, main_filename=main_csv,212                                write_dir=None, gpc_path=gp_csv,213                                out_filename=None, write=False)214    exp_ids = set(["1041796", "1037058",  "1030520",  "1003670"])...prim.py
Source:prim.py  
...59    return PrimitiveParser(f, pattern)60# def char() -> Parser:61#     """Char function."""62#     return regex(r"\S")63def none_of(s: str) -> Parser:64    """none_of function.65    As the dual of oneOf, none_of(cs) succeeds if the current character66    not in the supplied list of characters cs. Returns the parsed character.67    Example68    -------69    >>> from simpleparser import none_of, choice, token, many, transform, seq70    >>> p = none_of("abcdefg")71    >>> p.exec("hello")72    ['h']73    >>> chars = choice(token('""'), none_of('",'))74    >>> p = transform(many(chars), lambda x: ["".join(x)])75    >>> text = r'Shirt with ""Haskell"" text'76    >>> p.exec(text)77    ['Shirt with ""Haskell"" text']78    >>> dq = token('"')79    >>> p2 = transform(seq(dq, p, dq), lambda x: ["".join(x)])80    >>> text = r'"Shirt with ""Haskell"" text"'81    >>> p2.exec(text)82    ['"Shirt with ""Haskell"" text"']83    """  # noqa: E50184    name: str = f"none_of {s}"85    def f(target: str, position: int = 0) -> ParseResult:86        exists: bool = False87        targetChar: str = target[position:position + 1]...query.py
Source:query.py  
1from __future__ import annotations2from typing import *3from ecstremity.bit_util import *4from functools import reduce5if TYPE_CHECKING:6    from ecstremity.component import Component7    from ecstremity.world import World8def from_name(world: World, component_name: str) -> Component:9    return world.engine.components[component_name]10class Query:11    _cache = []12    def __init__(13            self,14            world: World,15            any_of: Optional[List[Union[Component, str]]] = None,16            all_of: Optional[List[Union[Component, str]]] = None,17            none_of: Optional[List[Union[Component, str]]] = None18    ) -> None:19        self._cache = []20        self.world = world21        self.any_of = any_of if any_of is not None else []22        self.all_of = all_of if all_of is not None else []23        self.none_of = none_of if none_of is not None else []24        self._any = reduce(lambda a, b: add_bit(a, b.cbit), self.any_of, 0)25        self._all = reduce(lambda a, b: add_bit(a, b.cbit), self.all_of, 0)26        self._none = reduce(lambda a, b: add_bit(a, b.cbit), self.none_of, 0)27        self.refresh()28    def idx(self, entity):29        try:30            return self._cache.index(entity)31        except ValueError:32            return -133    def matches(self, entity):34        bits = entity.cbits35        any_of = self._any == 0 or bit_intersection(bits, self._any) > 036        all_of = bit_intersection(bits, self._all) == self._all37        none_of = bit_intersection(bits, self._none) == 038        return any_of & all_of & none_of39    def candidate(self, entity):40        idx = self.idx(entity)41        is_tracking = idx >= 042        if self.matches(entity):43            if not is_tracking:44                self._cache.append(entity)45            return True46        if is_tracking:47            del self._cache[idx]48        return False49    def refresh(self):50        self._cache = []51        for entity in self.world.entities:52            self.candidate(entity)53    @property54    def result(self):...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
