def test_expr_paren_multi2(self): self.assertParse( qSelect([qp.Target( qp.Not(qp.Equal( qp.Column('a'), qp.Not(qp.Equal( qp.Column('b'), qp.And(qp.Constant(42), qp.Constant(17)))))), None)]), "SELECT a != (b != (42 AND 17));")
def test_expr_function__and_eq(self): self.assertParse( qSelect(qp.Wildcard(), where_clause=qp.And( qp.Equal(qp.Column('a'), qp.Constant(2)), qp.Not(qp.Equal(qp.Column('b'), qp.Constant(3))))), "SELECT * WHERE a = 2 AND b != 3;")
def test_expr_unaryop(self): self.assertEqual( qc.EvalNot(qe.AccountColumn()), qc.compile_expression(qp.Not(qp.Column('account')), qe.TargetsEnvironment()))
def test_unary(self): self.assertEqual('not_account', qp.get_expression_name(qp.Not(qp.Column('account'))))
def test_expr_function__and_not(self): self.assertParse( qSelect(qp.Wildcard(), where_clause=qp.And(qp.Not(qp.Column('a')), qp.Column('b'))), "SELECT * WHERE not a AND b;")
def test_expr_not(self): self.assertParse(qSelect([qp.Target(qp.Not(qp.Column('a')), None)]), "SELECT NOT a;")
def test_expr_paren_multi(self): self.assertParse( qSelect([ qp.Target(qp.Not(qp.Equal(qp.Column('a'), qp.Constant(42))), None) ]), "SELECT not (a = 42);")
def test_expr_ne(self): self.assertParse( qSelect([ qp.Target(qp.Not(qp.Equal(qp.Column('a'), qp.Constant(42))), None) ]), "SELECT a != 42;")