コード例 #1
0
 public void InitialiseConversionTest(string stringDate)
 {
     dateAsParam   = new DateAsParam(stringDate);
     actualDate    = DateTime.Parse(stringDate);
     convertedDate = actualDate.ToString("yyyy-MM-dd");
     expected      = $"'{convertedDate}'";
 }
コード例 #2
0
        public static void TestDateAsParamImplicit()
        {
            DateAsParam test = new DateAsParam("2020-01-01");

            DateTime before = DateTime.Parse("2019-01-01");
            DateTime after  = DateTime.Parse("2021-01-01");
            DateTime same   = DateTime.Parse("2020-01-01");
        }
コード例 #3
0
        public void TestDateConversion(string stringDate)
        {
            InitialiseConversionTest(stringDate);

            dateAsParam = new DateAsParam(actualDate);

            Assert.AreEqual(expected, dateAsParam.ToString());
        }
コード例 #4
0
        public void TestGenericParamBetweenSameNumberDate(string testDate)
        {
            expected = $"BETWEEN '{testDate}' AND '{testDate}'";

            DateAsParam dateAsParam = new DateAsParam(testDate);

            searchParameter = new SearchParameterDecorator <DateAsParam>(dateAsParam, dateAsParam);
            searchParameter = new BetweenDecorator(searchParameter);

            Assert.AreEqual(expected, searchParameter.ToSQLString);
        }
コード例 #5
0
        public void TestGenericParamSmallerThanDate(string testDate)
        {
            expected = $"<= '{testDate}'";

            DateAsParam dateAsParam = new DateAsParam(testDate);

            searchParameter = new SearchParameterDecorator <DateAsParam>(dateAsParam);
            searchParameter = new SmallerThanDecorator(searchParameter);

            Assert.AreEqual(expected, searchParameter.ToSQLString);
        }
コード例 #6
0
        public void TestDateAsParamCompare(string lowDateString, string highDateString)
        {
            DateAsParam lowDateAsParam  = new DateAsParam(lowDateString);
            DateAsParam highDateAsParam = new DateAsParam(highDateString);

            DateTime lowDateTime  = DateTime.Parse(lowDateString);
            DateTime highDateTime = DateTime.Parse(highDateString);

            Assert.AreEqual(lowDateTime.CompareTo(highDateTime), lowDateAsParam.CompareTo(highDateAsParam));
            Assert.AreEqual(highDateTime.CompareTo(lowDateTime), highDateAsParam.CompareTo(lowDateAsParam));
        }
コード例 #7
0
        public void TestGenericParamBetweenDate(string lowDate, string highDate)
        {
            expected = $"BETWEEN '{lowDate}' AND '{highDate}'";

            DateAsParam low  = new DateAsParam(lowDate);
            DateAsParam high = new DateAsParam(highDate);

            searchParameter = new SearchParameterDecorator <DateAsParam>(low, high);
            searchParameter = new BetweenDecorator(searchParameter);

            Assert.AreEqual(expected, searchParameter.ToSQLString);
        }
コード例 #8
0
        public void TestCompareToDifferentType()
        {
            int         testYear    = 2020;
            YearAsParam yearAsParam = new YearAsParam(testYear);

            DateAsParam lowCompareDate      = new DateAsParam("2010-01-01");
            DateAsParam highCompareDate     = new DateAsParam("2021-01-01");
            DateAsParam sameYearCompareDate = new DateAsParam("2020-01-01");

            Assert.AreEqual(1, yearAsParam.CompareTo(lowCompareDate));          // lowCompareDate is before than the startDate of the testYear
            Assert.AreEqual(-1, yearAsParam.CompareTo(highCompareDate));        // lowCompareDate is after the endDate of the testYear
            Assert.AreEqual(0, yearAsParam.CompareTo(sameYearCompareDate));     // sameYearCompare date is in the same year
        }
コード例 #9
0
        public void TestImplicitConversionDateAsParam()
        {
            DateAsParam dateAsParam = new DateAsParam("2020-01-01");

            DateTime before = DateTime.Parse("2019-01-01");
            DateTime after  = DateTime.Parse("2021-01-01");
            DateTime same   = DateTime.Parse("2020-01-01");

            Assert.AreEqual(-1, before.CompareTo(dateAsParam));
            Assert.AreEqual(1, after.CompareTo(dateAsParam));
            Assert.AreEqual(0, same.CompareTo(dateAsParam));

            Assert.AreEqual(1, dateAsParam.CompareTo(before));
            Assert.AreEqual(-1, dateAsParam.CompareTo(after));
            Assert.AreEqual(0, dateAsParam.CompareTo(same));
        }