Add 'users/glittershark/xanthous/' from commit '53b56744f4'
				
					
				
			git-subtree-dir: users/glittershark/xanthous git-subtree-mainline:91f53f02d8git-subtree-split:53b56744f4
This commit is contained in:
		
						commit
						2edb963b97
					
				
					 96 changed files with 10030 additions and 0 deletions
				
			
		
							
								
								
									
										39
									
								
								users/glittershark/xanthous/test/Xanthous/Util/GraphSpec.hs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								users/glittershark/xanthous/test/Xanthous/Util/GraphSpec.hs
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,39 @@ | |||
| module Xanthous.Util.GraphSpec (main, test) where | ||||
| -------------------------------------------------------------------------------- | ||||
| import Test.Prelude | ||||
| -------------------------------------------------------------------------------- | ||||
| import Xanthous.Util.Graph | ||||
| import Data.Graph.Inductive.Basic | ||||
| import Data.Graph.Inductive.Graph (labNodes, size, order) | ||||
| import Data.Graph.Inductive.PatriciaTree | ||||
| import Data.Graph.Inductive.Arbitrary | ||||
| -------------------------------------------------------------------------------- | ||||
| 
 | ||||
| main :: IO () | ||||
| main = defaultMain test | ||||
| 
 | ||||
| test :: TestTree | ||||
| test = testGroup "Xanthous.Util.Graph" | ||||
|   [ testGroup "mstSubGraph" | ||||
|     [ testProperty "always produces a subgraph" | ||||
|         $ \(CG _ (graph :: Gr Int Int)) -> | ||||
|           let msg = mstSubGraph $ undir graph | ||||
|           in counterexample (show msg) | ||||
|             $ msg `isSubGraphOf` undir graph | ||||
|     , testProperty "returns a graph with the same nodes" | ||||
|         $ \(CG _ (graph :: Gr Int Int)) -> | ||||
|           let msg = mstSubGraph graph | ||||
|           in counterexample (show msg) | ||||
|             $ labNodes msg === labNodes graph | ||||
|     , testProperty "has nodes - 1 edges" | ||||
|         $ \(CG _ (graph :: Gr Int Int)) -> | ||||
|           order graph > 1 ==> | ||||
|           let msg = mstSubGraph graph | ||||
|           in counterexample (show msg) | ||||
|             $ size msg === order graph - 1 | ||||
|     , testProperty "always produces a simple graph" | ||||
|         $ \(CG _ (graph :: Gr Int Int)) -> | ||||
|           let msg = mstSubGraph graph | ||||
|           in counterexample (show msg) $ isSimple msg | ||||
|     ] | ||||
|   ] | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue