2012-08-16 63 views
0

我使用buster.js,我想测试一个函数,以返回出生年份的人的年龄。我的测试是这样的:Javascript测试中的假日期对象

"Should get correct age from year": function() { 
    assert(getAgeFromYear(1990) === 22); 
} 

这只会保持绿色,直到2012年年底。我怎样才能在假的buster.js Date对象,使其将在未来几年有效吗?

回答

1

使功能getAgeFromYearDate(int, Date)并测试。然后制作一个使用当前日期的函数getAgeFromYear(int)。这种方法看起来就像这样:

function getAgeFromYear(year) { 
    return getAgeFromYearDate(year, new Date()); 
} 

如果getAgeFromYearDate工作正常,你可以假设getAgeFromYear正常工作。

+2

而不是添加一个新的函数,只需修改'getAgeFromYear',以便可以选择'now'Date实例作为第二个参数。 – JonnyReeves 2012-08-16 11:30:36