【发布时间】:2010-12-15 00:28:04
【问题描述】:
我为 Django 表单定义做了以下事情(尴尬,是的):
class DealAdvancedSearchForm(forms.Form):
weekday_choices = [
['monday', 'Monday'],
['tuesday', 'Tuesday'],
['wednesday', 'Wednesday'],
['thursday', 'Thursday'],
['friday', 'Friday'],
['saturday', 'Saturday'],
['sunday', 'Sunday'],
]
weekday_index = date.today().weekday()
weekday_choices[weekday_index][1] += ' (Today)'
weekday_choices[weekday_index+1][1] += ' (Tomorrow)'
weekday = forms.ChoiceField(label='Day of the week', choices=weekday_choices, required=False)
您现在可能已经猜到了,只要date.today() 没有改变,它就可以正常工作。我所有的测试都通过了。但是,一旦日期更改,它会错误地将初始日期的选择标记为今天。
我后来发现这是多么愚蠢,并将代码移到 __init__ 方法中。
现在我想为它写一个测试。有谁知道当日期更改时我将如何测试正确的工作日标记为(Today)?
【问题讨论】:
标签: python django unit-testing testing