def test_additions(self): self.assertEqual(JalaliDate(JalaliDate(1395, 3, 21)), JalaliDate(1395, 3, 21)) self.assertEqual(JalaliDate.days_before_month(1), 0) self.assertEqual(JalaliDate.days_before_month(12), 336) self.assertEqual( JalaliDate(1395, 1, 1).replace(1367), JalaliDate(1367, 1, 1)) self.assertEqual( JalaliDate(1395, 1, 1).replace(month=2), JalaliDate(1395, 2, 1)) self.assertEqual( JalaliDate(1367, 1, 1).replace(year=1396, month=7), JalaliDate(1396, 7, 1)) self.assertEqual( JalaliDate(1395, 1, 1, "en").replace(1367, 2, 14, "fa"), JalaliDate(1367, 2, 14, "en"), ) self.assertEqual(JalaliDate.fromtimestamp(time()), JalaliDate.today()) self.assertEqual(JalaliDate.fromtimestamp(578707200), JalaliDate(1367, 2, 14)) self.assertEqual(JalaliDate.fromtimestamp(1508371200), JalaliDate(1396, 7, 27)) with pytest.raises(ValueError): JalaliDate(1400, 1, 1, "us")
def test_additions(self): self.assertEqual(JalaliDate(JalaliDate(1395, 3, 21)), JalaliDate(1395, 3, 21)) self.assertEqual(JalaliDate.days_before_month(1), 0) self.assertEqual(JalaliDate.days_before_month(12), 336) self.assertEqual(JalaliDate(1395, 1, 1).replace(1367), JalaliDate(1367, 1, 1)) self.assertEqual(JalaliDate(1395, 1, 1).replace(month=2), JalaliDate(1395, 2, 1)) self.assertEqual(JalaliDate(1367, 1, 1).replace(year=1396, month=7), JalaliDate(1396, 7, 1)) self.assertEqual(JalaliDate(1395, 1, 1, "en").replace(1367, 2, 14, "fa"), JalaliDate(1367, 2, 14, "en")) self.assertEqual(JalaliDate.fromtimestamp(time()), JalaliDate.today()) self.assertEqual(JalaliDate.fromtimestamp(578707200), JalaliDate(1367, 2, 14)) self.assertEqual(JalaliDate.fromtimestamp(1508371200), JalaliDate(1396, 7, 27)) try: JalaliDate(1400, 1, 1, "us") except ValueError: assert True else: assert False
def __init__(self, field, request, params, model, model_admin, field_path): self.lookup_kwarg_gte = '{0}__gte'.format(field_path) self.lookup_kwarg_lte = '{0}__lte'.format(field_path) if 'fa' in request.LANGUAGE_CODE.lower(): self.locale = 'persian' else: self.locale = 'gregorian' super().__init__(field, request, params, model, model_admin, field_path) self.request = request temp = self.used_parameters.copy() self.value1 = '' self.value2 = '' for key, value in temp.items(): if value and key in [self.lookup_kwarg_gte, self.lookup_kwarg_lte]: try: ret = int(value) / 1000 # if self.local date = datetime.datetime.fromtimestamp(ret) self.used_parameters[key] = str(date) if key == self.lookup_kwarg_gte: if self.locale is 'persian': self.value1 = JalaliDate.fromtimestamp( ret).strftime("%Y-%m-%d") else: self.value1 = date.strftime("%Y-%m-%d") else: if self.locale is 'persian': self.value2 = JalaliDate.fromtimestamp( ret).strftime("%Y-%m-%d") else: self.value2 = date.strftime("%Y-%m-%d") except Exception as e: continue else: self.used_parameters.pop(key, None)