matrices-0.4.1: tests/test.hs
import Test.Tasty
import qualified Data.Matrix.Generic as MG
import qualified Data.Matrix.Dense.Generic as MD
import qualified Data.Matrix.Sparse.Generic as MS
import qualified Data.Vector.Unboxed as U
import Test.Tasty.HUnit
main :: IO ()
main = defaultMain $ testGroup "Main"
[ testCase "xx" testEqual ]
testEqual :: Assertion
testEqual = do
let xs = [0,0,0,0,1,2,3,0,0,0,0,0,4,5,67,0,0,2,40,0,2,0,0,20,0,0,0]
m1 = MG.fromList (3,9) xs :: MD.Matrix U.Vector Int
al = filter ((/=0) . snd) $ MD.toList $ MD.imap (\i v -> (i,v)) m1
m2 = MG.fromList (3,9) xs :: MS.CSR U.Vector Int
m3 = MS.fromAscAL (3,9) (length al) al :: MS.CSR U.Vector Int
row1 = MG.toRows m1
row2 = MG.toRows m2
-- assertEqual "x" (MG.flatten m1) (MG.flatten m2)
assertEqual "x" (MG.flatten m2) (MG.flatten m3)
assertEqual "x" row1 row2