module Test.Calendar.LongWeekYears ( longWeekYears ) where import Data.Time.Calendar import Data.Time.Calendar.WeekDate import Test.Calendar.LongWeekYearsRef import Test.Tasty import Test.Tasty.HUnit 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 :: TestTree longWeekYears = testCase "longWeekYears" $ assertEqual "" longWeekYearsRef $ unlines $ map showLongYear [1901 .. 2050]