예제 #1
0
        public void TestRegExReplace()
        {
            var tstr = new TVariable("")
            {
                regex_pattern = new Regex(@"(\S+)а,\s*(\S+)"),
                regex_replace = "район $2 города $1ы"
            };

            tstr.Set("Москва, ЦАО");
            Assert.AreEqual("район ЦАО города Москвы", tstr.value);


            var tnumeric = new TNumeric("")
            {
                regex_pattern = new Regex(@"(\d)(\d)(\d)"),
                regex_replace = "$2$3$1"
            };

            ((TVariable)tnumeric).Set("123");
            Assert.AreEqual(231f, tnumeric.value);


            var tdate = new TDate("")
            {
                regex_pattern = new Regex(@".* (\d{4}) года за (\d) месяц"),
                regex_replace = "1.$2.$1",
                format        = "d.M.yyyy",
                lastday       = true
            };

            tdate.Set("отчёт 2020 года за 2 месяц");
            Assert.AreEqual(new DateTime(2020, 2, 29), tdate.value);
        }
예제 #2
0
        public void TestTDateWithDateValue()
        {
            var tdate = new TDate("DATE");

            tdate.Set(new DateTime(2001, 11, 22));
            Assert.AreEqual(new DateTime(2001, 11, 22), tdate.value);

            tdate = new TDate("DATE")
            {
                lastday = true
            };
            tdate.Set(new DateTime(2001, 11, 22));
            Assert.AreEqual(new DateTime(2001, 11, DateTime.DaysInMonth(2001, 11)), tdate.value);
        }
예제 #3
0
        public void TestTDate()
        {
            var tdate = new TDate("DATE");

            tdate.Set("22.11.2001");
            Assert.AreEqual(new DateTime(2001, 11, 22), tdate.value);

            tdate = new TDate("DATE")
            {
                lastday = true
            };
            tdate.Set("01.02.2004");
            Assert.AreEqual(new DateTime(2004, 2, 29), tdate.value);

            tdate = new TDate("DATE")
            {
                format = "yyyy.dd.MM"
            };
            tdate.Set("2005.15.05");
            Assert.AreEqual(new DateTime(2005, 5, 15), tdate.value);
        }
예제 #4
0
        public static Dictionary <string, TVariable> getVariables()
        {
            Dictionary <string, TVariable> data = new Dictionary <string, TVariable>();

            var tvariable = new TVariable("FIO");

            tvariable.Set("Ivanov Ivan Ivanovich");
            data.Add(tvariable.name, tvariable);

            var tnumeric = new TNumeric("SUMMA");

            tnumeric.Set(12.3456f);
            data.Add(tnumeric.name, tnumeric);

            var tdate = new TDate("DATE");

            tdate.Set("22.11.2001");
            data.Add(tdate.name, tdate);

            return(data);
        }