Example #1
0
        public void ItShouldBePossibleToCreateASimpleSelectQueryWithOr()
        {
            var id = Guid.NewGuid();
            const string userName = "******";
            var table = new QueryTable("Users");
            var creator = new SqLiteQueryCreator();
            var expected = PurgeQuery(string.Format("SELECT {0}.Id AS {0}_Id,{0}.UserName AS {0}_UserName," +
                "{0}.Password AS {0}_Password FROM Users AS {0} WHERE" +
                "  ( {0}.UserName = '******' OR {0}.Id = '{2}' )", table.Alias, userName, id));

            table.AddField("Id");
            table.AddField("UserName");
            table.AddField("Password");

            table.Or(
                table.Eq(userName).SetFieldName("UserName"),
                table.Eq(id).SetFieldName("Id")
                );

            var result = PurgeQuery(creator.CreateQuery<string>(table));
            Assert.AreEqual(expected, result);
        }