def test_submit_editform(self):
        foo = DatetimeTest()
        request = TestRequest()

        request.form["form.d1"] = u"2003-02-01 00:00:00+00:00"
        request.form["form.d2"] = u"2003-02-02 00:00:00+00:00"
        request.form["form.d3"] = u"2003-10-15 00:00:00+00:00"
        request.form["form.actions.apply"] = u""

        Form(foo, request)()

        self.assertEqual(foo.d1, datetime(2003, 2, 1, tzinfo=tzinfo(0)))
        self.assertEqual(foo.d2, datetime(2003, 2, 2, tzinfo=tzinfo(0)))
        self.assertEqual(foo.d3, datetime(2003, 10, 15, tzinfo=tzinfo(0)))
Exemple #2
0
    def test(self):

        for minutes in 1439, 600, 1, 0, -1, -600, -1439:
            info1 = tzinfo(minutes)
            info2 = tzinfo(minutes)

            self.assertEqual(info1, info2)
            self.assert_(info1 is info2)
            self.assert_(pickle.loads(pickle.dumps(info1)) is info1)

            self.assertEqual(info1.utcoffset(None), datetime.timedelta(minutes=minutes))

            self.assertEqual(info1.dst(None), None)
            self.assertEqual(info1.tzname(None), None)

        for minutes in 900000, 1440 * 60, -1440 * 60, -900000:
            self.assertRaises(ValueError, tzinfo, minutes)
Exemple #3
0
def _conv_timestamptz(s, cursor):
    if s:
        from zope.datetime import tzinfo
        y, m, d, hr, mn, sc, tz = parse_datetimetz(s)
        sc, micro = divmod(sc, 1.0)
        micro = round(micro * 1000000)
        if tz: tz = tzinfo(tz)
        return datetime(y, m, d, hr, mn, int(sc), int(micro), tz)
 def test_getLongInputValue(self):
     self._widget.displayStyle = "long"
     self.test_getDefaultInputValue(
         value=(u'26 \u043c\u0430\u0440\u0442\u0430 2004 \u0433.'
             u' 12:58:59 +030'),
         check_value=datetime.datetime(2004, 3, 26, 12, 58, 59,
             tzinfo=tzinfo(30))
         )
 def test_getFullInputValue(self):
     self._widget.displayStyle = "full"
     self.test_getDefaultInputValue(
         value=(u'26 \u043c\u0430\u0440\u0442\u0430 2004 \u0433.'
             u' 12:58:59 +030'),
         check_value=datetime.datetime(2004, 3, 26, 12, 58, 59,
             tzinfo=tzinfo(30))
         )
    def test(self):

        for minutes in 1439, 600, 1, 0, -1, -600, -1439:
            info1 = tzinfo(minutes)
            info2 = tzinfo(minutes)

            self.assertEqual(info1, info2)
            self.assertIs(info1, info2)
            self.assertIs(pickle.loads(pickle.dumps(info1)), info1)

            self.assertEqual(info1.utcoffset(None),
                             datetime.timedelta(minutes=minutes))

            self.assertEqual(info1.dst(None), None)
            self.assertEqual(info1.tzname(None), None)

        for minutes in 900000, 1440 * 60, -1440 * 60, -900000:
            self.assertRaises(ValueError, tzinfo, minutes)
    def test_submit_editform(self):
        self.getRootFolder()['test'] = DatetimeTest()
        transaction.commit()

        # submit edit view
        response = self.publish('/test/edit.html',
                                form={
                                    'UPDATE_SUBMIT': '',
                                    'field.d1': u'2003-02-01 00:00:00+00:00',
                                    'field.d2': u'2003-02-02 00:00:00+00:00',
                                    'field.d3': u'2003-10-15 00:00:00+00:00'
                                },
                                env={"HTTP_ACCEPT_LANGUAGE": "en"})
        self.assertEqual(response.getStatus(), 200)
        self.assert_(updatedMsgExists(response.getBody()))

        # check new values in object
        object = traverse(self.getRootFolder(), 'test')

        self.assertEqual(object.d1, datetime(2003, 2, 1, tzinfo=tzinfo(0)))
        self.assertEqual(object.d2, datetime(2003, 2, 2, tzinfo=tzinfo(0)))
        self.assertEqual(object.d3, datetime(2003, 10, 15, tzinfo=tzinfo(0)))
    def test_missing_value(self):
        foo = DatetimeTest()
        request = TestRequest()

        # submit missing values for d2 and d3
        request.form['form.d2'] = ''
        request.form['form.d3-empty-marker'] = ''

        request.form['form.actions.apply'] = u''
        Form(foo, request)()

        self.assert_(foo.d2 is None)  # default missing_value for dates
        # 2000-1-1 is missing_value for d3
        self.assertEqual(foo.d3, datetime(2000, 1, 1, tzinfo=tzinfo(0)))
    def test_missing_value(self):
        foo = DatetimeTest()
        request = TestRequest()

        # submit missing values for d2 and d3
        request.form["form.d2"] = ""
        request.form["form.d3-empty-marker"] = ""

        request.form["form.actions.apply"] = u""
        Form(foo, request)()

        self.assert_(foo.d2 is None)  # default missing_value for dates
        # 2000-1-1 is missing_value for d3
        self.assertEqual(foo.d3, datetime(2000, 1, 1, tzinfo=tzinfo(0)))
    def test_missing_value(self):
        self.getRootFolder()['test'] = DatetimeTest()
        transaction.commit()

        # submit missing values for d2 and d3
        response = self.publish('/test/edit.html',
                                form={
                                    'UPDATE_SUBMIT': '',
                                    'field.d2': '',
                                    'field.d3-empty-marker': ''
                                })
        self.assertEqual(response.getStatus(), 200)
        self.assert_(updatedMsgExists(response.getBody()))

        # check new values in object
        object = traverse(self.getRootFolder(), 'test')
        self.assert_(object.d2 is None)  # default missing_value for dates
        # 2000-1-1 is missing_value for d3
        self.assertEqual(object.d3, datetime(2000, 1, 1, tzinfo=tzinfo(0)))
Exemple #11
0
 def testParseDatetimetz(self):
     self.assertEqual(parseDatetimetz('1999-12-31T01:02:03.037-00:30'),
                      datetime(1999, 12, 31, 1, 2, 3, 37000, tzinfo(-30)))
     self.assertEqual(parseDatetimetz('2003 6 4 00:00:00 ', local=False),
                      datetime(2003, 6, 4))
 def __init__(self):
     self.d1 = datetime(2003, 4, 6, tzinfo=tzinfo(0))
     self.d2 = datetime(2003, 8, 6, tzinfo=tzinfo(0))
     self.d3 = None
 def testParseDatetimetz(self):
     self.assertEqual(parseDatetimetz('1999-12-31T01:02:03.037-00:30'),
                      datetime(1999, 12, 31, 1, 2, 3, 37000, tzinfo(-30)))
     self.assertEqual(parseDatetimetz('2003 6 4 00:00:00 ', local=False),
                      datetime(2003, 6, 4))
 def __init__(self):
     self.d1 = datetime(2003, 4, 6, tzinfo=tzinfo(0))
     self.d2 = datetime(2003, 8, 6, tzinfo=tzinfo(0))
     self.d3 = None
 def test_getLongInputValue(self):
     self._widget.displayStyle = "long"
     self.test_getDefaultInputValue(
         value=(u"26 \u043c\u0430\u0440\u0442\u0430 2004 \u0433." u" 12:58:59 +030"),
         check_value=datetime.datetime(2004, 3, 26, 12, 58, 59, tzinfo=tzinfo(30)),
     )