-------------------------------------------------------------------------------- -- $Id: DateTimeTest.hs,v 1.1 2004/01/13 12:31:24 graham Exp $ -- -- Copyright (c) 2003, G. KLYNE. All rights reserved. -- See end of this file for licence information. -------------------------------------------------------------------------------- -- | -- Module : DateTimeTest -- Copyright : (c) 2003, Graham Klyne -- License : GPL V2 -- -- Maintainer : Graham Klyne -- Stability : provisional -- Portability : H98 -- -- Test cases for DateTime module -- -------------------------------------------------------------------------------- module DateTimeTest where import HUnit import DateTime import IO ( Handle, openFile, IOMode(WriteMode), hClose, hPutStr, hPutStrLn ) -- dt1 = toDateTime "2003-02-07T18:20:33Z" -- dt2 = toDateTime "2003-02-07T18:20:33Z" -- dt3 = toDateTime "2003-02-06T19:19:22Z" dt1 = DateTime 2003 2 7 18 20 33 0 0 dt1a = DateTime 2003 2 7 18 25 33 0 5 dt1b = DateTime 2003 2 7 18 15 33 0 (-5) dt2 = DateTime 2003 2 7 18 20 33 0 0 dt3 = DateTime 2003 2 6 19 19 22 0 0 dt4 = DateTime 304 2 6 5 6 1 0 90 dt5 = DateTime 304 2 6 5 6 1 78 ( -90 ) dt6 = DateTime 2003 1 31 23 0 0 0 (-300) dt7 = DateTime 2003 2 1 4 0 0 0 0 t11 = TestCase (assertEqual "for dt1 == dt2," dt1 dt2) t12 = TestCase (assertBool "for dt3 < dt2," (dt3 < dt2)) t13 = TestCase (assertBool "for dt1a == dt1," (dt1a == dt1)) t14 = TestCase (assertBool "for dt1b == dt1," (dt1b == dt1)) t15 = TestCase (assertBool "for dt1a == dt1b," (dt1a == dt1b)) t16 = TestCase (assertBool "for dt1 /= dt3," (dt1 /= dt3)) t17 = TestCase (assertBool "for dt6 == dt7," (dt6 == dt7)) test1 = TestLabel "comparisons" ( TestList [t11,t12,t13,t14,t15,t16,t17] ) t21 = TestCase (assertBool "for dtYear dt1 == 2003," (dtYear dt1 == 2003)) t22 = TestCase (assertBool "for dtMonth dt1 == 2," (dtMonth dt1 == 2)) t23 = TestCase (assertBool "for dtMay dt1 == 7," (dtDay dt1 == 7)) t24 = TestCase (assertBool "for dtMour dt1 == 18," (dtHour dt1 == 18)) t25 = TestCase (assertBool "for dtMinute dt1 == 20," (dtMinute dt1 == 20)) t26 = TestCase (assertBool "for dtSecond dt1 == 33," (dtSecond dt1 == 33)) test2 = TestLabel "components" ( TestList [ t21, t22, t23, t24, t25, t26 ] ) t31 = TestCase (assertBool "for show dt1," (dtShow dt1 == "2003-02-07T18:20:33Z")) t32 = TestCase (assertBool "for show dt3," (dtShow dt3 == "2003-02-06T19:19:22Z")) t33 = TestCase (assertBool "for show dt4," (dtShow dt4 == "0304-02-06T05:06:01+01:30")) t34 = TestCase (assertBool "for show dt5," (dtShow dt5 == "0304-02-06T05:06:01.078-01:30")) test3 = TestLabel "show" ( TestList [t31,t32,t33,t34] ) -- Julian date tests -- -- There are some buggy Julian date converters on the web, beyond 28-Feb-2100 -- This one seems quite reliable as a source of test data: -- http://aa.usno.navy.mil/data/docs/JulianDate.html -- testJulian :: String -> Int -> Int -> Int -> Int -> Test testJulian str jd yr mo da = TestList [ ( TestCase ( assertEqual ("to "++str) jd (toJulianDate yr mo da) ) ), ( TestCase ( assertEqual ("from "++str) str ( showDate ( fromJulianDate jd ) ) ) ) ] oneJulianTest :: Int -> Test oneJulianTest jd = TestCase ( assertEqual ( show jd ++ ":" ++ st) jd jd1 ) where dt = fromJulianDate jd jd1 = toJulianDate (dtYear dt) (dtMonth dt) (dtDay dt) dt1 = fromJulianDate jd1 st = showDate dt st1 = showDate dt1 j1 = testJulian "1900-01-01" ( 0 ) 1900 1 1 tj1 = TestCase ( assertEqual "1900-01-01" ( 0 ) (toJulianDate 1900 1 1) ) tj2 = TestCase ( assertEqual "1901-01-01" (2415385-2415020) (toJulianDate 1901 1 1) ) tj3 = TestCase ( assertEqual "1970-01-01" (2440587-2415020) (toJulianDate 1970 1 1) ) tj4 = TestCase ( assertEqual "1979-12-31" (2444238-2415020) (toJulianDate 1979 12 31) ) tj5 = TestCase ( assertEqual "1980-01-01" (2444239-2415020) (toJulianDate 1980 1 1) ) tj6 = TestCase ( assertEqual "2000-02-29" (2451603-2415020) (toJulianDate 2000 2 29) ) tj7 = TestCase ( assertEqual "2000-03-01" (2451604-2415020) (toJulianDate 2000 3 1) ) tj8 = TestCase ( assertEqual "2000-03-02" (2451605-2415020) (toJulianDate 2000 3 2) ) tj9 = TestCase ( assertEqual "2000-03-03" (2451606-2415020) (toJulianDate 2000 3 3) ) tj10 = TestCase ( assertEqual "2000-03-04" (2451607-2415020) (toJulianDate 2000 3 4) ) tj11 = TestCase ( assertEqual "2000-03-05" (2451608-2415020) (toJulianDate 2000 3 5) ) tj12 = TestCase ( assertEqual "2001-02-27" (2451967-2415020) (toJulianDate 2001 2 27) ) tj13 = TestCase ( assertEqual "2001-02-28" (2451968-2415020) (toJulianDate 2001 2 28) ) tj14 = TestCase ( assertEqual "2001-02-29" (2451969-2415020) (toJulianDate 2001 2 29) ) tj15 = TestCase ( assertEqual "2001-03-01" (2451969-2415020) (toJulianDate 2001 3 1) ) tj16 = TestCase ( assertEqual "2002-03-01" (2452334-2415020) (toJulianDate 2002 3 1) ) tj17 = TestCase ( assertEqual "2003-03-01" (2452699-2415020) (toJulianDate 2003 3 1) ) tj21 = TestCase ( assertEqual "2004-02-28" (2453063-2415020) (toJulianDate 2004 2 28) ) tj22 = TestCase ( assertEqual "2004-02-29" (2453064-2415020) (toJulianDate 2004 2 29) ) tj23 = TestCase ( assertEqual "2004-03-01" (2453065-2415020) (toJulianDate 2004 3 1) ) tj24 = TestCase ( assertEqual "2004-03-31" (2453095-2415020) (toJulianDate 2004 3 31) ) tj25 = TestCase ( assertEqual "2005-02-28" (2453429-2415020) (toJulianDate 2005 2 28) ) tj26 = TestCase ( assertEqual "2005-03-01" (2453430-2415020) (toJulianDate 2005 3 1) ) tj27 = TestCase ( assertEqual "3746-07-21" (3089459-2415020) (toJulianDate 3746 7 21) ) tj28 = TestCase ( assertEqual "2003-01-32" (2452671-2415020) (toJulianDate 2003 1 32) ) testtj1 = TestLabel "To Julian date" (TestList [ tj1, tj2, tj3, tj4, tj5, tj6, tj7, tj8, tj9,tj10, tj11,tj12,tj13,tj14,tj15,tj16,tj17, tj21,tj22,tj23,tj24,tj25,tj26,tj27,tj28]) fj1 = TestCase ( assertEqual "1900-01-01" "1900-01-01" ( showDate ( fromJulianDate (toJulianDate 1900 1 1) ) ) ) fj2 = TestCase ( assertEqual "1901-01-01" "1901-01-01" ( showDate ( fromJulianDate (toJulianDate 1901 1 1) ) ) ) fj3 = TestCase ( assertEqual "1970-01-01" "1970-01-01" ( showDate ( fromJulianDate (toJulianDate 1970 1 1) ) ) ) fj4 = TestCase ( assertEqual "1979-12-31" "1979-12-31" ( showDate ( fromJulianDate (toJulianDate 1979 12 31) ) ) ) fj5 = TestCase ( assertEqual "1980-01-01" "1980-01-01" ( showDate ( fromJulianDate (toJulianDate 1980 1 1) ) ) ) fj6 = TestCase ( assertEqual "2000-02-29" "2000-02-29" ( showDate ( fromJulianDate (toJulianDate 2000 2 29) ) ) ) fj7 = TestCase ( assertEqual "2000-03-01" "2000-03-01" ( showDate ( fromJulianDate (toJulianDate 2000 3 1) ) ) ) fj8 = TestCase ( assertEqual "2000-03-02" "2000-03-02" ( showDate ( fromJulianDate (toJulianDate 2000 3 2) ) ) ) fj9 = TestCase ( assertEqual "2000-03-03" "2000-03-03" ( showDate ( fromJulianDate (toJulianDate 2000 3 3) ) ) ) fj10 = TestCase ( assertEqual "2000-03-04" "2000-03-04" ( showDate ( fromJulianDate (toJulianDate 2000 3 4) ) ) ) fj11 = TestCase ( assertEqual "2000-03-05" "2000-03-05" ( showDate ( fromJulianDate (toJulianDate 2000 3 5) ) ) ) fj12 = TestCase ( assertEqual "2001-02-27" "2001-02-27" ( showDate ( fromJulianDate (toJulianDate 2001 2 27) ) ) ) fj13 = TestCase ( assertEqual "2001-02-28" "2001-02-28" ( showDate ( fromJulianDate (toJulianDate 2001 2 28) ) ) ) fj14 = TestCase ( assertEqual "2001-02-29" "2001-03-01" ( showDate ( fromJulianDate (toJulianDate 2001 2 29) ) ) ) fj15 = TestCase ( assertEqual "2001-03-01" "2001-03-01" ( showDate ( fromJulianDate (toJulianDate 2001 3 1) ) ) ) fj16 = TestCase ( assertEqual "2002-03-01" "2002-03-01" ( showDate ( fromJulianDate (toJulianDate 2002 3 1) ) ) ) fj17 = TestCase ( assertEqual "2003-03-01" "2003-03-01" ( showDate ( fromJulianDate (toJulianDate 2003 3 1) ) ) ) fj21 = TestCase ( assertEqual "2004-02-28" "2004-02-28" ( showDate ( fromJulianDate (toJulianDate 2004 2 28) ) ) ) fj22 = TestCase ( assertEqual "2004-02-29" "2004-02-29" ( showDate ( fromJulianDate (toJulianDate 2004 2 29) ) ) ) fj23 = TestCase ( assertEqual "2004-03-01" "2004-03-01" ( showDate ( fromJulianDate (toJulianDate 2004 3 1) ) ) ) fj24 = TestCase ( assertEqual "2004-03-31" "2004-03-31" ( showDate ( fromJulianDate (toJulianDate 2004 3 31) ) ) ) fj25 = TestCase ( assertEqual "2005-02-28" "2005-02-28" ( showDate ( fromJulianDate (toJulianDate 2005 2 28) ) ) ) fj26 = TestCase ( assertEqual "2005-03-01" "2005-03-01" ( showDate ( fromJulianDate (toJulianDate 2005 3 1) ) ) ) fj27 = TestCase ( assertEqual "2003-01-32" "2003-02-01" ( showDate ( fromJulianDate (toJulianDate 2003 1 32) ) ) ) fj28 = TestCase ( assertEqual "2100-02-28" "2100-02-28" ( showDate ( fromJulianDate (toJulianDate 2100 2 28) ) ) ) fj29 = TestCase ( assertEqual "2100-02-29" "2100-03-01" ( showDate ( fromJulianDate (toJulianDate 2100 2 29) ) ) ) fj30 = TestCase ( assertEqual "2100-03-01" "2100-03-01" ( showDate ( fromJulianDate (toJulianDate 2100 3 1) ) ) ) fj31 = TestCase ( assertEqual "2100-03-02" "2100-03-02" ( showDate ( fromJulianDate (toJulianDate 2100 3 2) ) ) ) fj32 = TestCase ( assertEqual "2400-02-28" "2400-02-28" ( showDate ( fromJulianDate (toJulianDate 2400 2 28) ) ) ) fj33 = TestCase ( assertEqual "2400-02-29" "2400-02-29" ( showDate ( fromJulianDate (toJulianDate 2400 2 29) ) ) ) fj34 = TestCase ( assertEqual "2400-03-01" "2400-03-01" ( showDate ( fromJulianDate (toJulianDate 2400 3 1) ) ) ) fj35 = TestCase ( assertEqual "3746-07-21" "3746-07-21" ( showDate ( fromJulianDate (toJulianDate 3746 7 21) ) ) ) testfj1 = TestLabel "From Julian date" (TestList [ fj1, fj2, fj3, fj4, fj5, fj6, fj7, fj8, fj9,fj10, fj11,fj12,fj13,fj14,fj15,fj16,fj17, fj21,fj22,fj23,fj24,fj25,fj26,fj27,fj28,fj29,fj30, fj31,fj32,fj33,fj34]) y1m01d1 = TestCase ( assertEqual "2003-01-01" (2452640-2415020) (toJulianDate 2003 1 1) ) y1m01d28 = TestCase ( assertEqual "2003-01-28" (2452667-2415020) (toJulianDate 2003 1 28) ) y1m01d29 = TestCase ( assertEqual "2003-01-29" (2452668-2415020) (toJulianDate 2003 1 29) ) y1m01d30 = TestCase ( assertEqual "2003-01-30" (2452669-2415020) (toJulianDate 2003 1 30) ) y1m01d31 = TestCase ( assertEqual "2003-01-31" (2452670-2415020) (toJulianDate 2003 1 31) ) testy1m01 = TestLabel "Tests 2003-01" (TestList [y1m01d1,y1m01d28,y1m01d29,y1m01d30,y1m01d31]) y1m02d1 = TestCase ( assertEqual "2003-02-01" (2452671-2415020) (toJulianDate 2003 2 1) ) y1m02d28 = TestCase ( assertEqual "2003-02-28" (2452698-2415020) (toJulianDate 2003 2 28) ) y1m02d29 = TestCase ( assertEqual "2003-02-29" (2452699-2415020) (toJulianDate 2003 2 29) ) y1m02d30 = TestCase ( assertEqual "2003-02-30" (2452700-2415020) (toJulianDate 2003 2 30) ) y1m02d31 = TestCase ( assertEqual "2003-02-31" (2452701-2415020) (toJulianDate 2003 2 31) ) testy1m02 = TestLabel "Tests 2003-02" (TestList [y1m02d1,y1m02d28,y1m02d29,y1m02d30,y1m02d31]) y1m03d1 = TestCase ( assertEqual "2003-03-01" (2452699-2415020) (toJulianDate 2003 3 1) ) y1m03d28 = TestCase ( assertEqual "2003-03-28" (2452726-2415020) (toJulianDate 2003 3 28) ) y1m03d29 = TestCase ( assertEqual "2003-03-29" (2452727-2415020) (toJulianDate 2003 3 29) ) y1m03d30 = TestCase ( assertEqual "2003-03-30" (2452728-2415020) (toJulianDate 2003 3 30) ) y1m03d31 = TestCase ( assertEqual "2003-03-31" (2452729-2415020) (toJulianDate 2003 3 31) ) testy1m03 = TestLabel "Tests 2003-03" (TestList [y1m03d1,y1m03d28,y1m03d29,y1m03d30,y1m03d31]) y1m06d1 = TestCase ( assertEqual "2003-06-01" (2452791-2415020) (toJulianDate 2003 6 1) ) y1m06d28 = TestCase ( assertEqual "2003-06-28" (2452818-2415020) (toJulianDate 2003 6 28) ) y1m06d29 = TestCase ( assertEqual "2003-06-29" (2452819-2415020) (toJulianDate 2003 6 29) ) y1m06d30 = TestCase ( assertEqual "2003-06-30" (2452820-2415020) (toJulianDate 2003 6 30) ) y1m06d31 = TestCase ( assertEqual "2003-06-31" (2452821-2415020) (toJulianDate 2003 6 31) ) testy1m06 = TestLabel "Tests 2003-06" (TestList [y1m06d1,y1m06d28,y1m06d29,y1m06d30,y1m06d31]) y1m12d1 = TestCase ( assertEqual "2003-12-01" (2452974-2415020) (toJulianDate 2003 12 1) ) y1m12d28 = TestCase ( assertEqual "2003-12-28" (2453001-2415020) (toJulianDate 2003 12 28) ) y1m12d29 = TestCase ( assertEqual "2003-12-29" (2453002-2415020) (toJulianDate 2003 12 29) ) y1m12d30 = TestCase ( assertEqual "2003-12-30" (2453003-2415020) (toJulianDate 2003 12 30) ) y1m12d31 = TestCase ( assertEqual "2003-12-31" (2453004-2415020) (toJulianDate 2003 12 31) ) testy1m12 = TestLabel "Tests 2003-12" (TestList [y1m12d1,y1m12d28,y1m12d29,y1m12d30,y1m12d31]) testy1 = TestLabel "Tests 2003" (TestList [testy1m01,testy1m02,testy1m03,testy1m06,testy1m12]) y2m01d1 = TestCase ( assertEqual "2004-01-01" (2453005-2415020) (toJulianDate 2004 1 1) ) y2m01d31 = TestCase ( assertEqual "2004-01-31" (2453035-2415020) (toJulianDate 2004 1 31) ) y2m02d1 = TestCase ( assertEqual "2004-02-01" (2453036-2415020) (toJulianDate 2004 2 1) ) y2m02d28 = TestCase ( assertEqual "2004-02-28" (2453063-2415020) (toJulianDate 2004 2 28) ) y2m02d29 = TestCase ( assertEqual "2004-02-29" (2453064-2415020) (toJulianDate 2004 2 29) ) y2m03d1 = TestCase ( assertEqual "2004-03-01" (2453065-2415020) (toJulianDate 2004 3 1) ) y2m03d31 = TestCase ( assertEqual "2004-03-31" (2453095-2415020) (toJulianDate 2004 3 31) ) y2m06d1 = TestCase ( assertEqual "2004-06-01" (2453157-2415020) (toJulianDate 2004 6 1) ) y2m06d30 = TestCase ( assertEqual "2004-06-30" (2453186-2415020) (toJulianDate 2004 6 30) ) y2m12d1 = TestCase ( assertEqual "2004-12-01" (2453340-2415020) (toJulianDate 2004 12 1) ) y2m12d31 = TestCase ( assertEqual "2004-12-31" (2453370-2415020) (toJulianDate 2004 12 31) ) testy2 = TestLabel "Tests 2004" (TestList [y2m01d1,y2m01d31, y2m02d1,y2m02d28,y2m02d29, y2m03d1,y2m03d31, y2m06d1,y2m06d30, y2m12d1,y2m12d31]) y3m01d1 = TestCase ( assertEqual "2100-01-01" (2488069-2415020) (toJulianDate 2100 1 1) ) y3m01d31 = TestCase ( assertEqual "2100-01-31" (2488099-2415020) (toJulianDate 2100 1 31) ) y3m02d1 = TestCase ( assertEqual "2100-02-01" (2488100-2415020) (toJulianDate 2100 2 1) ) y3m02d28 = TestCase ( assertEqual "2100-02-28" (2488127-2415020) (toJulianDate 2100 2 28) ) y3m02d29 = TestCase ( assertEqual "2100-02-29" (2488128-2415020) (toJulianDate 2100 2 29) ) y3m03d1 = TestCase ( assertEqual "2100-03-01" (2488128-2415020) (toJulianDate 2100 3 1) ) y3m03d31 = TestCase ( assertEqual "2100-03-31" (2488158-2415020) (toJulianDate 2100 3 31) ) y3m06d1 = TestCase ( assertEqual "2100-06-01" (2488220-2415020) (toJulianDate 2100 6 1) ) y3m06d30 = TestCase ( assertEqual "2100-06-30" (2488249-2415020) (toJulianDate 2100 6 30) ) y3m12d1 = TestCase ( assertEqual "2100-12-01" (2488403-2415020) (toJulianDate 2100 12 1) ) y3m12d31 = TestCase ( assertEqual "2100-12-31" (2488433-2415020) (toJulianDate 2100 12 31) ) testy3 = TestLabel "Tests 2100" (TestList [y3m01d1,y3m01d31, y3m02d1,y3m02d28,y3m02d29, y3m03d1,y3m03d31, y3m06d1,y3m06d30, y3m12d1,y3m12d31]) y4m01d1 = TestCase ( assertEqual "2400-01-01" (2597641-2415020) (toJulianDate 2400 1 1) ) y4m01d31 = TestCase ( assertEqual "2400-01-31" (2597671-2415020) (toJulianDate 2400 1 31) ) y4m02d1 = TestCase ( assertEqual "2400-02-01" (2597672-2415020) (toJulianDate 2400 2 1) ) y4m02d28 = TestCase ( assertEqual "2400-02-28" (2597699-2415020) (toJulianDate 2400 2 28) ) y4m02d29 = TestCase ( assertEqual "2400-02-29" (2597700-2415020) (toJulianDate 2400 2 29) ) y4m03d1 = TestCase ( assertEqual "2400-03-01" (2597701-2415020) (toJulianDate 2400 3 1) ) y4m03d31 = TestCase ( assertEqual "2400-03-31" (2597731-2415020) (toJulianDate 2400 3 31) ) y4m06d1 = TestCase ( assertEqual "2400-06-01" (2597793-2415020) (toJulianDate 2400 6 1) ) y4m06d30 = TestCase ( assertEqual "2400-06-30" (2597822-2415020) (toJulianDate 2400 6 30) ) y4m12d1 = TestCase ( assertEqual "2400-12-01" (2597976-2415020) (toJulianDate 2400 12 1) ) y4m12d31 = TestCase ( assertEqual "2400-12-31" (2598006-2415020) (toJulianDate 2400 12 31) ) testy4 = TestLabel "Tests 2400" (TestList [y4m01d1,y4m01d31, y4m02d1,y4m02d28,y3m02d29, y4m03d1,y4m03d31, y4m06d1,y4m06d30, y4m12d1,y4m12d31]) allTests = TestLabel "Initial tests" (TestList [test1,test2,test3, testtj1, testfj1, testy1,testy2,testy3,testy4]) -- Evaluate 'allTests' to test implementation main = runTestTT allTests -- some mess-about functions and values tjd = toJulianDate fjd = fromJulianDate dc = 146097 to = (dc*300) t1 j = (400*(j-59)) + to -- 1/400 days since 1600 t2 j = (t1 j) `div` 400 -- whole days since 1600 v1 j = (t1 j) `div` dc -- years since 1600 v2 j = (v1 j) * dc -- 1/400 days to start of year v3 j = ((v2 j) + 396) `div` 400 -- days to start of year v4 j = (t2 j) - (v3 j) -- whole days this year v5 j = (v4 j)*5 + 2 -- 1/5 days this year +2 v6 j = ( (v5 j) `mod` 153 ) `div` 5 + 1 -- day of month (magic number 153) v7 j = ( (v5 j) `div` 153 ) -- month Mar=0 -> Feb=11 allJulian n m = TestList [ oneJulianTest jd | jd <- [ n..m ] ] yjf n m = do h <- openFile "a.tmp" WriteMode testYearsJulian n m h hClose h testYearsJulian :: Int -> Int -> Handle -> IO () testYearsJulian n m h | n <= m = do hPutStr h ("Year: "++(show n)++", ") runTestText (putTextToHandle h False) ( allJulian (tjd n 1 1) (tjd n 12 31) ) -- runTestTT ( allJulian (tjd n 1 1) (tjd n 12 31) ) testYearsJulian (n+1) m h | otherwise = hPutStrLn h "Finished" -------------------------------------------------------------------------------- -- -- Copyright (c) 2003, G. KLYNE. All rights reserved. -- -- This file is part of Swish. -- -- Swish is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2 of the License, or -- (at your option) any later version. -- -- Swish is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with Swish; if not, write to: -- The Free Software Foundation, Inc., -- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -- -------------------------------------------------------------------------------- -- $Source: /file/cvsdev/HaskellUtils/DateTimeTest.hs,v $ -- $Author: graham $ -- $Revision: 1.1 $ -- $Log: DateTimeTest.hs,v $ -- Revision 1.1 2004/01/13 12:31:24 graham -- Move modules from HaskellRDF to HaskellUtils project -- -- Revision 1.18 2004/01/06 13:53:10 graham -- Created consolidated test harness (SwishTestAll.hs) -- -- Revision 1.17 2003/09/24 18:50:52 graham -- Revised module format to be Haddock compatible. -- -- Revision 1.16 2003/06/03 19:24:13 graham -- Updated all source modules to cite GNU Public Licence -- -- Revision 1.15 2003/05/29 13:04:42 graham -- All tests now compile and pass as stand-alone programs compiled -- using GHC. Added batch files to compile programs and run tests. -- -- Revision 1.14 2003/02/15 13:44:29 graham -- Added test output to file. -- Still a bug around 2300-03-01 -- -- Revision 1.13 2003/02/15 12:00:30 graham -- Fix 400-year roll-over bug -- -- Revision 1.12 2003/02/15 11:21:27 graham -- Add test cases around millenium rollover -- -- Revision 1.11 2003/02/14 10:22:06 graham -- fromJulianDate works for dates before 2100 -- -- Revision 1.10 2003/02/13 13:01:55 graham -- Added some test cases for fromJulianDate and comparison -- with date rollover. Currently not working. -- -- Revision 1.9 2003/02/12 11:57:02 ronan -- Julian date stuff PERFECT!!! -- -- Revision 1.8 2003/02/11 18:08:43 graham -- Added loads of new test cases -- Moved Julian date test cases to DateTimeTest -- -- Revision 1.7 2003/02/11 16:04:28 ronan -- Put Julian in DateTime and added normTZ functionality. Vaguely tested (2 cases). -- -- Revision 1.6 2003/02/11 12:02:34 graham -- Minor updates -- Add some Julian date test cases -- -- Revision 1.5 2003/02/11 10:47:17 ronan -- Work on DateTime. (==) works as intended. Julian date work done, needs testing. -- -- Revision 1.4 2003/02/10 14:21:57 ronan -- Tests very bodged, but working. Show working to a good standard. -- (==) replaced with (===) for now. Next step: timezone correction. -- -- Revision 1.2 2003/02/09 09:20:37 ronan -- Working on DateTime in Haskell. Not working. Yet. -- -- Revision 1.1 2003/02/07 18:46:07 graham -- Add new date/time modules -- Update copyright year --