Пример #1
0
    def test_parse_month_long(self):
        """ Test cases where user enter a month string
        """
        self.assertFalse(
            DateStringParser.parse("February",
                                   current_month=1,
                                   current_year=2014,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("february",
                                   current_month=1,
                                   current_year=2014,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("FebRuaRy",
                                   current_month=1,
                                   current_year=2014,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("February",
                                   current_month=1,
                                   current_year=2014,
                                   current_day=29))

        date_obj = DateStringParser.parse("February",
                                          current_month=1,
                                          current_year=2016,
                                          current_day=29)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #2
0
    def test_parse_day(self):
        """ Test cases where the user enters only a day.
        """
        # Not leap year, so 2/29/2014 doesn't exist
        self.assertFalse(DateStringParser.parse("29", current_month=2, current_year=2014, current_day=0))

        # Leap year, so 2/29/2016 exists.
        date_obj = DateStringParser.parse("29", current_month=2, current_year=2016, current_day=0)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #3
0
    def test_parse_month_short(self):
        """ Test cases where user enter a month string
        """
        self.assertFalse(DateStringParser.parse("Feb", current_month=1, current_year=2014, current_day=29))
        self.assertFalse(DateStringParser.parse("feb", current_month=1, current_year=2014, current_day=29))
        self.assertFalse(DateStringParser.parse("fEb", current_month=1, current_year=2014, current_day=29))
        self.assertFalse(DateStringParser.parse("FEB", current_month=1, current_year=2014, current_day=29))

        date_obj = DateStringParser.parse("Feb", current_month=1, current_year=2016, current_day=29)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #4
0
 def test_slash_format(self):
     # Test mm/dd/yy
     date_obj = DateStringParser.parse("12/12/98")
     self.assertEqual(date_obj.year, 1998)
     self.assertEqual(date_obj.month, 12)
     self.assertEqual(date_obj.day, 12)
     # Test mm/dd/YYYY
     date_obj = DateStringParser.parse("12/12/2014")
     self.assertEqual(date_obj.year, 2014)
     self.assertEqual(date_obj.month, 12)
     self.assertEqual(date_obj.day, 12)
     # Should Fail
     self.assertFalse(DateStringParser.parse("12/12/1"))
     self.assertFalse(DateStringParser.parse("12/12/988"))
Пример #5
0
 def test_slash_format(self):
     # Test mm/dd/yy
     date_obj = DateStringParser.parse("12/12/98")
     self.assertEqual(date_obj.year, 1998)
     self.assertEqual(date_obj.month, 12)
     self.assertEqual(date_obj.day, 12)
     # Test mm/dd/YYYY
     date_obj = DateStringParser.parse("12/12/2014")
     self.assertEqual(date_obj.year, 2014)
     self.assertEqual(date_obj.month, 12)
     self.assertEqual(date_obj.day, 12)
     # Should Fail
     self.assertFalse(DateStringParser.parse("12/12/1"))
     self.assertFalse(DateStringParser.parse("12/12/988"))
Пример #6
0
    def test_dash_format(self):
        # Test mm-dd-yy
        date_obj = DateStringParser.parse("12-12-98")
        self.assertEqual(date_obj.year, 1998)
        self.assertEqual(date_obj.month, 12)
        self.assertEqual(date_obj.day, 12)
        # Test mm-dd-YYYY
        date_obj = DateStringParser.parse("12-12-2014")
        self.assertEqual(date_obj.year, 2014)
        self.assertEqual(date_obj.month, 12)
        self.assertEqual(date_obj.day, 12)

        # Should Fail
        self.assertFalse(DateStringParser.parse("12-12-1"))
        self.assertFalse(DateStringParser.parse("12-12-988"))
Пример #7
0
    def test_dash_format(self):
        # Test mm-dd-yy
        date_obj = DateStringParser.parse("12-12-98")
        self.assertEqual(date_obj.year, 1998)
        self.assertEqual(date_obj.month, 12)
        self.assertEqual(date_obj.day, 12)
        # Test mm-dd-YYYY
        date_obj = DateStringParser.parse("12-12-2014")
        self.assertEqual(date_obj.year, 2014)
        self.assertEqual(date_obj.month, 12)
        self.assertEqual(date_obj.day, 12)

        # Should Fail
        self.assertFalse(DateStringParser.parse("12-12-1"))
        self.assertFalse(DateStringParser.parse("12-12-988"))            
Пример #8
0
    def test_parse_day(self):
        """ Test cases where the user enters only a day.
        """
        # Not leap year, so 2/29/2014 doesn't exist
        self.assertFalse(
            DateStringParser.parse("29",
                                   current_month=2,
                                   current_year=2014,
                                   current_day=0))

        # Leap year, so 2/29/2016 exists.
        date_obj = DateStringParser.parse("29",
                                          current_month=2,
                                          current_year=2016,
                                          current_day=0)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #9
0
    def test_parse_year(self):
        self.assertFalse(
            DateStringParser.parse("2014",
                                   current_month=2,
                                   current_year=2010,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("1899",
                                   current_month=2,
                                   current_year=2010,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("10000",
                                   current_month=2,
                                   current_year=2010,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("201",
                                   current_month=2,
                                   current_year=2010,
                                   current_day=29))
        self.assertFalse(
            DateStringParser.parse("98",
                                   current_month=2,
                                   current_year=2010,
                                   current_day=29))

        date_obj = DateStringParser.parse("2016",
                                          current_month=2,
                                          current_year=2014,
                                          current_day=29)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #10
0
 def do_go(self, arg):
     """\
     'go' is a simple command you enter to set the current date.
     On initialization the date is set to the current date.\
     """
     if not arg:
          print "Usage: go <date>"
     else:
         date_obj = DateStringParser.parse(arg, self.year, self.month, self.day)
         if (date_obj):
             self.set_date(date_obj)
         else:
             print "Invalid date, please enter a date in the following format: \n"
             print "    go mm/dd/yy"
             print "    go mm/dd/YYYY"
Пример #11
0
 def do_go(self, arg):
     """\
     'go' is a simple command you enter to set the current date.
     On initialization the date is set to the current date.\
     """
     if not arg:
         print "Usage: go <date>"
     else:
         date_obj = DateStringParser.parse(arg, self.year, self.month,
                                           self.day)
         if (date_obj):
             self.set_date(date_obj)
         else:
             print "Invalid date, please enter a date in the following format: \n"
             print "    go mm/dd/yy"
             print "    go mm/dd/YYYY"
Пример #12
0
    def test_parse_year(self):
        self.assertFalse(DateStringParser.parse("2014", current_month=2, current_year=2010, current_day=29))
        self.assertFalse(DateStringParser.parse("1899", current_month=2, current_year=2010, current_day=29))
        self.assertFalse(DateStringParser.parse("10000", current_month=2, current_year=2010, current_day=29))
        self.assertFalse(DateStringParser.parse("201", current_month=2, current_year=2010, current_day=29))
        self.assertFalse(DateStringParser.parse("98", current_month=2, current_year=2010, current_day=29))

        date_obj = DateStringParser.parse("2016", current_month=2, current_year=2014, current_day=29)
        self.assertEqual(date_obj.year, 2016)
        self.assertEqual(date_obj.month, 2)
        self.assertEqual(date_obj.day, 29)
Пример #13
0
    def do_ls(self, arg):
        """\
        List events of the day.
        """
        json_root = self.storage_manager.get_json_object()
        target_year = str(self.year)
        target_month = str(self.month)
        target_day = str(self.day)
        try:
            event_list = json_root[target_year][target_month][target_day]
            print "These are the events of " + Globals.MONTH_DICT[
                self.month] + " " + DateStringParser.get_ordinal(
                    self.day) + ", " + target_year + ":"
            for i, val in enumerate(event_list):
                print "        - " + val

        except Exception:
            print "There are no events on this day."
Пример #14
0
 def test_extra_strings(self):
     self.assertFalse(DateStringParser.parse("This is a date string"))
     self.assertFalse(DateStringParser.parse(""))
     self.assertFalse(DateStringParser.parse(None))
Пример #15
0
 def test_leap_year(self):
     self.assertFalse(DateStringParser.parse("2-29-2014"))
     date_obj = DateStringParser.parse("2-29-2016")
     self.assertEqual(date_obj.year, 2016)
     self.assertEqual(date_obj.month, 2)
     self.assertEqual(date_obj.day, 29)
Пример #16
0
 def test_get_ordinal(self):
     self.assertEqual(DateStringParser.get_ordinal(1), "1st")
     self.assertEqual(DateStringParser.get_ordinal(2), "2nd")
     self.assertEqual(DateStringParser.get_ordinal(3), "3rd")
     self.assertEqual(DateStringParser.get_ordinal(4), "4th")
Пример #17
0
 def test_get_ordinal(self):
     self.assertEqual(DateStringParser.get_ordinal(1), "1st")
     self.assertEqual(DateStringParser.get_ordinal(2), "2nd")
     self.assertEqual(DateStringParser.get_ordinal(3), "3rd")
     self.assertEqual(DateStringParser.get_ordinal(4), "4th")
Пример #18
0
 def test_leap_year(self):
     self.assertFalse(DateStringParser.parse("2-29-2014"))
     date_obj = DateStringParser.parse("2-29-2016")
     self.assertEqual(date_obj.year, 2016)
     self.assertEqual(date_obj.month, 2)
     self.assertEqual(date_obj.day, 29)
Пример #19
0
 def test_extra_strings(self):
     self.assertFalse(DateStringParser.parse("This is a date string"))
     self.assertFalse(DateStringParser.parse(""))
     self.assertFalse(DateStringParser.parse(None))
Пример #20
0
    def do_ls(self, arg):
        """\
        List events of the day.
        """
        json_root = self.storage_manager.get_json_object()
        target_year = str(self.year)
        target_month = str(self.month)
        target_day = str(self.day)
        try:
            event_list = json_root[target_year][target_month][target_day]
            print "These are the events of " + Globals.MONTH_DICT[self.month] + " " + DateStringParser.get_ordinal(self.day) + ", " + target_year + ":"
            for i, val in enumerate(event_list):
                print "        - " + val

        except Exception:
            print "There are no events on this day."