public static Or ( |
||
left | ||
right | ||
return |
public void BooleanOr(bool a, bool b, bool expected) { var exp1 = SqlExpression.Constant(Field.Boolean(new SqlBoolean(a))); var exp2 = SqlExpression.Constant(Field.Boolean(new SqlBoolean(b))); var orExp = SqlExpression.Or(exp1, exp2); SqlExpression resultExp = null; Assert.DoesNotThrow(() => resultExp = orExp.Evaluate()); Assert.IsNotNull(resultExp); Assert.IsInstanceOf <SqlConstantExpression>(resultExp); var constExp = (SqlConstantExpression)resultExp; Assert.IsNotNull(constExp.Value.Value); Assert.IsInstanceOf <BooleanType>(constExp.Value.Type); Assert.IsInstanceOf <SqlBoolean>(constExp.Value.Value); var actual = ((SqlBoolean)constExp.Value.Value); var expectedResult = new SqlBoolean(expected); Assert.AreEqual(expectedResult, actual); }
public void NumericOr(long a, long b, long expected) { var exp1 = SqlExpression.Constant(Field.Number(new SqlNumber(a))); var exp2 = SqlExpression.Constant(Field.Number(new SqlNumber(b))); var orExp = SqlExpression.Or(exp1, exp2); SqlExpression resultExp = null; Assert.DoesNotThrow(() => resultExp = orExp.Evaluate()); Assert.IsNotNull(resultExp); Assert.IsInstanceOf <SqlConstantExpression>(resultExp); var constExp = (SqlConstantExpression)resultExp; Assert.IsNotNull(constExp.Value.Value); Assert.IsInstanceOf <NumericType>(constExp.Value.Type); Assert.IsInstanceOf <SqlNumber>(constExp.Value.Value); var actual = ((SqlNumber)constExp.Value.Value); var expectedResult = new SqlNumber(expected); Assert.AreEqual(expectedResult, actual); }