def __init__(self, *args, **kwargs): """ An object just responsible for Keeping overlord queries and doing some serialization stuff if any ... """ #some initialization stuff here ... fact_query = None if kwargs.has_key('fact_query'): fact_query = kwargs['fact_query'] self.fact_query = fact_query or FuncLogicQuery()
def deserialize(self, q_list): """ Method gets the lists that is sent from overlord (pure string or list) and converts into a FuncLogicQuery so facts can be pulled from prewritten modules... @type q_list : list @param q_list : Query list """ q_result = self.__traverse_deserialize(q_list) if not self.fact_query: self.fact_query = FuncLogicQuery(q_result, self.pull_facts) else: if self.fact_query.q.connector == "OR": self.fact_query = self.fact_query | FuncLogicQuery( q_result, self.pull_facts) else: self.fact_query = self.fact_query & FuncLogicQuery( q_result, self.pull_facts) return q_result
def setUp(self): self.q1 = FuncLogicQuery(Q(a=True, b=True)) self.q2 = FuncLogicQuery(Q(a=False, b=True)) self.q3 = FuncLogicQuery(Q(a=True, b=False)) self.q4 = FuncLogicQuery(Q(a=False, b=False)) self.q_negated = FuncLogicQuery(~Q(a=False, b=False))