module Test.LongWeekYears where import Data.Time.Calendar.WeekDate import Data.Time.Calendar import Test.TestUtil import Test.LongWeekYearsRef
longYear
::
Integer
->
Bool
longYear
year
= case
toWeekDate
(
fromGregorian
year
12
31
) of (_,
53
,_) ->
True
_ ->
False
showLongYear
::
Integer
->
String
showLongYear
year
=
unwords
[
show
year
++
":"
, (if
isLeapYear
year
then
"L"
else
" "
)
++
(if
longYear
year
then
"*"
else
" "
) ]
longWeekYears
::
Test
longWeekYears
=
pureTest
"longWeekYears"
$
diff
longWeekYearsRef
$
unlines
$
map
showLongYear
[1901 .. 2050]