hgraph-1.2.0.0: tests/Digraph/Load.hs
module Main where
import HGraph.Directed
import HGraph.Directed.Load
import qualified HGraph.Directed.AdjacencyMap as AM
import qualified Data.Set as S
import Data.Either
import Test.HUnit hiding (Node)
import System.Exit (exitFailure, exitSuccess)
tests = TestList
[ TestLabel "Digraph 0" $ TestCase
( do
let ed = loadEdgeList AM.emptyDigraph "1 0"
Right d = ed
assertBool "Is right"
(isRight ed)
assertEqual "Vertices"
[0]
(vertices d)
assertEqual "Arcs"
[]
(arcs d)
)
, TestLabel "Digraph 1" $ TestCase
( do
let ed = loadEdgeList AM.emptyDigraph "2 1 0 1"
Right d = ed
assertBool "Is right"
(isRight ed)
assertEqual "Vertices"
[0,1]
(vertices d)
assertEqual "Arcs"
[(0,1)]
(arcs d)
)
, TestLabel "Digraph 2" $ TestCase
( do
let ed = loadEdgeList AM.emptyDigraph "4 2 0 1 1 0"
Right d = ed
assertBool "Is right"
(isRight ed)
assertEqual "Vertices"
[0,1,2,3]
(vertices d)
assertEqual "Arcs"
(S.fromList [(0,1), (1,0)])
(S.fromList $ arcs d)
)
]
main = do
count <- runTestTT tests
if errors count + failures count > 0 then exitFailure else exitSuccess