mirror of
https://github.com/github/semantic.git
synced 2024-11-28 10:15:55 +03:00
🔥 Use empty records in DiffSpec.
This commit is contained in:
parent
bd4dee20d5
commit
86ede39a58
@ -11,7 +11,6 @@ import qualified Data.Syntax.Statement as Statement
|
||||
import Data.Record
|
||||
import Data.Union
|
||||
import Diff
|
||||
import Info
|
||||
import Interpreter
|
||||
import RWS
|
||||
import Term
|
||||
@ -31,20 +30,18 @@ type Syntax = Union
|
||||
|
||||
spec :: Spec
|
||||
spec = parallel $ do
|
||||
let decorate = defaultFeatureVectorDecorator (category . termAnnotation)
|
||||
prop "equality is reflexive" $
|
||||
\ diff -> diff `shouldBe` (diff :: Diff Syntax (Record '[Category]) (Record '[Category]))
|
||||
\ diff -> diff `shouldBe` (diff :: Diff Syntax (Record '[]) (Record '[]))
|
||||
|
||||
prop "equal terms produce identity diffs" $
|
||||
\ a -> let term = decorate (a :: Term Syntax (Record '[Category])) in
|
||||
diffCost (diffTerms term term) `shouldBe` 0
|
||||
\ term -> diffCost (diffTerms term (term :: Term Syntax (Record '[]))) `shouldBe` 0
|
||||
|
||||
describe "beforeTerm" $ do
|
||||
prop "recovers the before term" $
|
||||
\ a b -> let diff = diffTerms a b :: Diff Syntax (Record '[Category]) (Record '[Category]) in
|
||||
\ a b -> let diff = diffTerms a b :: Diff Syntax (Record '[]) (Record '[]) in
|
||||
beforeTerm diff `shouldBe` Just a
|
||||
|
||||
describe "afterTerm" $ do
|
||||
prop "recovers the after term" $
|
||||
\ a b -> let diff = diffTerms a b :: Diff Syntax (Record '[Category]) (Record '[Category]) in
|
||||
\ a b -> let diff = diffTerms a b :: Diff Syntax (Record '[]) (Record '[]) in
|
||||
afterTerm diff `shouldBe` Just b
|
||||
|
Loading…
Reference in New Issue
Block a user