Esempio n. 1
0
        public void RequestFilterCleanProp()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "; DROP ALL TABLES; --",
                Value     = 15
            };

            Assert.Throws <RequestException>(() => request.FilterSql());
        }
Esempio n. 2
0
        public void RequestFilterLessThanToSingleNumber()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "LessThan",
                Prop      = "UserId",
                Value     = 15
            };

            Assert.Equal("UserId < 15", request.FilterSql());
        }
Esempio n. 3
0
        public void RequestFilterLikeSingleString()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "contains",
                Prop      = "UserName",
                Value     = "ste"
            };

            Assert.Equal("UserName LIKE \"%ste%\"", request.FilterSql());
        }
Esempio n. 4
0
        public void RequestFilterStartsWithSingleString()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "StartsWith",
                Prop      = "UserName",
                Value     = "ste"
            };

            Assert.Equal("UserName LIKE \"%ste\"", request.FilterSql());
        }
Esempio n. 5
0
        public void RequestFilterEqualToSingleString()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "UserName",
                Value     = "steven"
            };

            Assert.Equal("UserName == \"steven\"", request.FilterSql());
        }
Esempio n. 6
0
        public void RequestBetweenNumbers()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "LessThan",
                Prop      = "UserId",
                Value     = 15,
                Value2    = 17
            };

            Assert.Equal("UserId >= 15 AND UserId <= 17", request.FilterSql());
        }
Esempio n. 7
0
        public void RequestFilterCleanValue()
        {
            var request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "UserName",
                Value     = "; DROP ALL TABLES; --"
            };

            Assert.Throws <RequestException>(() => request.FilterSql());

            request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "UserName",
                Value     = ";DROP ALL TABLES; --"
            };
            Assert.Throws <RequestException>(() => request.FilterSql());

            request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "UserName",
                Value     = ";drop table 'batman'; --"
            };
            Assert.Throws <RequestException>(() => request.FilterSql());

            request = new RequestFilter
            {
                AndOr     = RequestFilterAndOr.And,
                Operation = "Equals",
                Prop      = "UserName",
                Value     = ";update table set 'isactive' = 0; --"
            };
            Assert.Throws <RequestException>(() => request.FilterSql());
        }