def presence_start_end_view(user_id):
    """
    Returns mean presence time of given user grouped by weekday.
    """
    data = get_data()
    if user_id not in data:
        log.debug('User %s not found!', user_id)
        return [["Mon", 0, 0],
                ["Tue", 0, 0],
                ["Wed", 0, 0],
                ["Thu", 0, 0],
                ["Fri", 0, 0],
                ["Sat", 0, 0],
                ["Sun", 0, 0]]

    weekdays = group_by_weekday_presence(data[user_id])

    result = []
    for day_number, day in enumerate(weekdays):
        if day:
            result.append([calendar.day_abbr[day_number], day[0], day[1]])
        else:
            result.append([calendar.day_abbr[day_number], 0, 0])

    return result
    def test_group_by_weekday_presence(self):
        """
        Test grouping by weekday presence
        """

        data = {
            10: {
                datetime.date(2013, 9, 10): {
                    'start': datetime.time(9, 39, 5),
                    'end': datetime.time(17, 59, 52)},
                datetime.date(2013, 9, 12): {
                    'start': datetime.time(10, 48, 46),
                    'end': datetime.time(17, 23, 51)},
                datetime.date(2013, 9, 11): {
                    'start': datetime.time(9, 19, 52),
                    'end': datetime.time(16, 7, 37)},
                datetime.date(2013, 9, 17): {
                    'start': datetime.time(9, 39, 5),
                    'end': datetime.time(18, 19, 52)},
                datetime.date(2013, 9, 19): {
                    'start': datetime.time(10, 48, 46),
                    'end': datetime.time(17, 53, 51)},
                datetime.date(2013, 9, 18): {
                    'start': datetime.time(9, 19, 52),
                    'end': datetime.time(16, 47, 37)}
                }
            }

        weekdays = utils.group_by_weekday_presence(data[10])
        self.assertEqual(len(weekdays), 7)
        self.assertEqual(weekdays[0], [0, 0])
        self.assertEqual(weekdays[1], [34745.0, 65392.0])
        self.assertEqual(weekdays[2], [33592.0, 59257.0])
        self.assertEqual(weekdays[3], [38926.0, 63531.0])
        self.assertEqual(weekdays[4], [0, 0])
        self.assertEqual(weekdays[5], [0, 0])
        self.assertEqual(weekdays[6], [0, 0])