show validity of hamming code
This commit is contained in:
@@ -65,13 +65,14 @@ hammingW'Spec = describe "hammingW'" $ mapM_
|
||||
[ ( "all zero", mkState 0, allZero, Nothing )
|
||||
, ( "all one", mkState 0xffff, allOne, Nothing )
|
||||
, ( "arbitrary", mkState 0x3c5a, arbitrary, Nothing )
|
||||
, ( "invalid", mkState 0x3c5b, invalid, Nothing )
|
||||
, ( "edit", es, allZero, Just eLoc )
|
||||
] where
|
||||
mkState c = initialState & hammingCode .~ c
|
||||
es = mkState 0 & appMode .~ EditMode initialEditor
|
||||
eLoc = Location (1, 1)
|
||||
allZero =
|
||||
[ [ ( hammingAttr, ' ' )
|
||||
[ [ ( validAttr, '✓' )
|
||||
, ( marginAttr, '0' )
|
||||
, ( marginAttr, '1' )
|
||||
, ( marginAttr, '2' )
|
||||
@@ -103,7 +104,7 @@ hammingW'Spec = describe "hammingW'" $ mapM_
|
||||
]
|
||||
]
|
||||
allOne =
|
||||
[ [ ( hammingAttr, ' ' )
|
||||
[ [ ( validAttr, '✓' )
|
||||
, ( marginAttr, '0' )
|
||||
, ( marginAttr, '1' )
|
||||
, ( marginAttr, '2' )
|
||||
@@ -135,7 +136,7 @@ hammingW'Spec = describe "hammingW'" $ mapM_
|
||||
]
|
||||
]
|
||||
arbitrary =
|
||||
[ [ ( hammingAttr, ' ' )
|
||||
[ [ ( validAttr, '✓' )
|
||||
, ( marginAttr, '0' )
|
||||
, ( marginAttr, '1' )
|
||||
, ( marginAttr, '2' )
|
||||
@@ -166,5 +167,37 @@ hammingW'Spec = describe "hammingW'" $ mapM_
|
||||
, ( bodyAttr, '0' )
|
||||
]
|
||||
]
|
||||
invalid =
|
||||
[ [ ( invalidAttr, 'X' )
|
||||
, ( marginAttr, '0' )
|
||||
, ( marginAttr, '1' )
|
||||
, ( marginAttr, '2' )
|
||||
, ( marginAttr, '3' )
|
||||
]
|
||||
, [ ( marginAttr, '0' )
|
||||
, ( zeroAttr, '1' )
|
||||
, ( checkAttr, '1' )
|
||||
, ( checkAttr, '0' )
|
||||
, ( bodyAttr, '1' )
|
||||
]
|
||||
, [ ( marginAttr, '1' )
|
||||
, ( checkAttr, '1' )
|
||||
, ( bodyAttr, '0' )
|
||||
, ( bodyAttr, '1' )
|
||||
, ( bodyAttr, '0' )
|
||||
]
|
||||
, [ ( marginAttr, '2' )
|
||||
, ( checkAttr, '0' )
|
||||
, ( bodyAttr, '0' )
|
||||
, ( bodyAttr, '1' )
|
||||
, ( bodyAttr, '1' )
|
||||
]
|
||||
, [ ( marginAttr, '3' )
|
||||
, ( bodyAttr, '1' )
|
||||
, ( bodyAttr, '1' )
|
||||
, ( bodyAttr, '0' )
|
||||
, ( bodyAttr, '0' )
|
||||
]
|
||||
]
|
||||
|
||||
--jl
|
||||
|
||||
Reference in New Issue
Block a user