def _format_sample_summary(sample):
    if sample and sample.get("ingestDateTime"):
        submission_datetime = localise_datetime(iso8601.parse_date(sample["ingestDateTime"]))
        submission_time = submission_datetime.strftime("%I:%M%p on %B %d, %Y")
        sample["ingestDateTime"] = submission_time

    return sample
Example #2
0
 def test_convert_to_bst_from_utc_during_gmt(self):
     # 13th Feb 2018 at 14.12 should return 13th Feb 2018 at 14.12
     datetime_parsed = datetime(2018, 2, 13, 14, 12, 0, tzinfo=timezone.utc)
     returned_datetime = localise_datetime(datetime_parsed)
     # Check date returned is in BST format
     self.assertEqual(
         datetime.strftime(returned_datetime, "%Y-%m-%d %H:%M:%S"),
         "2018-02-13 14:12:00")
Example #3
0
 def test_convert_to_bst_from_utc_during_bst(self):
     # 13th Jun 2018 at 14.12 should return 13th Jun 2018 at 15.12
     datetime_parsed = datetime(2018, 6, 13, 14, 12, 0, tzinfo=timezone.utc)
     returned_datetime = localise_datetime(datetime_parsed)
     # Check date returned is in BST format
     self.assertEqual(
         datetime.strftime(returned_datetime, '%Y-%m-%d %H:%M:%S'),
         '2018-06-13 15:12:00')
Example #4
0
def _format_closed_at(thread_conversation):
    """
    Takes a date and formats converts it into the string 'dd/mm/yyyy at HH:MM'
    """
    try:
        closed_time = localise_datetime(datetime.strptime(thread_conversation["closed_at"], "%Y-%m-%dT%H:%M:%S.%f"))
        return closed_time.strftime("%d/%m/%Y" + " at %H:%M")
    except (KeyError, TypeError):
        return None
Example #5
0
def convert_events_to_new_format(events):
    formatted_events = {}
    for event in events:
        date_time_utc = iso8601.parse_date(event["timestamp"])
        localised_datetime = localise_datetime(date_time_utc)
        formatted_events[event["tag"]] = {
            "day": localised_datetime.strftime("%A"),
            "date": localised_datetime.strftime("%d %b %Y"),
            "month": localised_datetime.strftime("%m"),
            "time": localised_datetime.strftime("%H:%M"),
            "is_in_future": date_time_utc > iso8601.parse_date(datetime.now(timezone.utc).isoformat()),
        }
    return formatted_events
Example #6
0
def convert_events_to_new_format(events):
    formatted_events = {}
    for event in events:
        date_time_utc = iso8601.parse_date(event['timestamp'])
        localised_datetime = localise_datetime(date_time_utc)
        formatted_events[event['tag']] = {
            "day": localised_datetime.strftime('%A'),
            "date": localised_datetime.strftime('%d %b %Y'),
            "month": localised_datetime.strftime('%m'),
            "time": localised_datetime.strftime('%H:%M'),
            "is_in_future": date_time_utc > iso8601.parse_date(datetime.now(timezone.utc).isoformat())
        }
    return formatted_events