public void GetFiltersSqlTest() { TestData TestData = new TestData(DbAccessor.Instance); var expression = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", TestData.TestUser.Email); var expression2 = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", "*****@*****.**"); DbFilterGroup or = new DbOrFilterGroup(expression, expression2); var gateway = new DbGateway(DbAccessor.Instance); //TODO: implement below approach // DataTable table = DbQuery.Create(gateway, "SELECT * FROM Users", or).LoadDataTable(); }
public void LoadListFilterExpressionTreeTest() { User user = TestData.TestUser; user.Email = "*****@*****.**"; gateway.Insert(user); user.Email = "*****@*****.**"; gateway.Insert(user); var expression = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", TestData.TestUser.Email); var expression2 = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", "*****@*****.**"); DbFilterGroup or = new DbOrFilterGroup(expression, expression2); User[] list = gateway.Select(or).Load <User>(); Assert.AreEqual(2, list.Length); expression.Value = "*****@*****.**"; list = gateway.Select(or).Load <User>(); Assert.AreEqual(1, list.Length); //and expression = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", TestData.TestUser.Email); expression2 = new DbColumnFilterExpression( DbExpressionType.Equal, "Email", "*****@*****.**"); or = new DbAndFilterGroup(expression, expression2); list = gateway.Select(or).Load <User>(); Assert.AreEqual(0, list.Length); }