Skip to content
This repository has been archived by the owner on Jun 29, 2020. It is now read-only.

Commit

Permalink
Merge pull request #175 from kawazrepos/get_week_day
Browse files Browse the repository at this point in the history
get_week_dayタグを実装した
  • Loading branch information
tunacook committed Sep 21, 2014
2 parents ff5666e + e5ef312 commit 7f23667
Show file tree
Hide file tree
Showing 2 changed files with 83 additions and 1 deletion.
26 changes: 26 additions & 0 deletions src/kawaz/core/templatetags/templatetags/utils.py
Expand Up @@ -30,3 +30,29 @@ def active(context, pattern):
return 'active'
return ''



@register.simple_tag()
def get_week_day(date):
"""
datetimeオブジェクトを受け取り、曜日に応じてCSSクラス名を返します
Param
date [datetime]
Return [string]
土曜日 saturday
日曜日 sunday
その他 weekday
Example
{% load utils %}
<div class="{% get_week_day date">{{ date }}</div>
"""
wd = date.weekday()
if wd == 5:
return "saturday"
elif wd == 6:
return "sunday"
return "weekday"
58 changes: 57 additions & 1 deletion src/kawaz/core/templatetags/tests/test_utils.py
Expand Up @@ -28,7 +28,7 @@ def test_active(self):
render = t.render(c)
self.assertEqual(render, 'active')

def test_active_contains_get_parametter(self):
def test_active_contains_get_parameter(self):
"""
activeタグはGETパラメータの値も含む
"""
Expand Down Expand Up @@ -61,3 +61,59 @@ def test_active_with_not_matched_pattern(self):
})
render = t.render(c)
self.assertEqual(render, '')


class GetWeekDayTemplateTagTestCase(TestCase):

def test_weekday(self):
'''
get_week_dayで平日だったときにweekdayを返す
'''
import datetime
t = Template(
"""{% load utils %}"""
"""{% get_week_day datetime %}"""
)
request = MagicMock()
c = Context({
'request': request,
'datetime': datetime.datetime(2014, 9, 22)
})
render = t.render(c)
self.assertEqual(render, 'weekday')


def test_saturday(self):
'''
get_week_dayで土曜だったときにsaturdayを返す
'''
import datetime
t = Template(
"""{% load utils %}"""
"""{% get_week_day datetime %}"""
)
request = MagicMock()
c = Context({
'request': request,
'datetime': datetime.datetime(2014, 9, 20)
})
render = t.render(c)
self.assertEqual(render, 'saturday')


def test_sunday(self):
'''
get_week_dayで日曜だったときにsundayを返す
'''
import datetime
t = Template(
"""{% load utils %}"""
"""{% get_week_day datetime %}"""
)
request = MagicMock()
c = Context({
'request': request,
'datetime': datetime.datetime(2014, 9, 21)
})
render = t.render(c)
self.assertEqual(render, 'sunday')

0 comments on commit 7f23667

Please sign in to comment.