Module
Test.Serialization.Types
- Package
- purescript-haskell-iso
- Repository
- athanclark/purescript-haskell-iso
#arbitraryJson Source
arbitraryJson :: Gen Json
#TestTopicState Source
newtype TestTopicState a
Constructors
TestTopicState { clientD :: Ref (Maybe a), clientDSent :: Ref (Maybe Buffer), clientG :: Ref (Maybe a), clientGSent :: Ref (Maybe Buffer), clientS :: Ref (Maybe Json), clientSSent :: Ref (Maybe Buffer), deserialize :: Json -> Either String a, eq :: a -> a -> Boolean, generate :: Gen a, serialize :: a -> Json, serverD :: Ref (Maybe a), serverDReceived :: Ref (Maybe Buffer), serverG :: Ref (Maybe a), serverGReceived :: Ref (Maybe Buffer), serverS :: Ref (Maybe Json), serverSReceived :: Ref (Maybe Buffer), size :: Ref Int }
#emptyTestTopicState Source
emptyTestTopicState :: forall a. Arbitrary a => EncodeJson a => DecodeJson a => Eq a => Proxy a -> Effect (Exists TestTopicState)
#TestSuiteState Source
type TestSuiteState = Ref (Map TestTopic (Exists TestTopicState))
#TestSuiteM Source
type TestSuiteM a = ReaderT TestSuiteState Effect a
#registerTopic Source
registerTopic :: forall a. Arbitrary a => EncodeJson a => DecodeJson a => Eq a => TestTopic -> Proxy a -> TestSuiteM Unit
#IsOkay Source
class IsOkay a where
Members
Instances
IsOkay JSONUnit
(IsOkay a) => IsOkay (HasTopic a)
(IsOkay a) => IsOkay (GenValue a)
(IsOkay a) => IsOkay (GotClientGenValue a)
(IsOkay a) => IsOkay (HasClientG a)
(IsOkay a) => IsOkay (HasServerG a)
(IsOkay a) => IsOkay (HasServerS a)
(IsOkay a) => IsOkay (HasServerD a)
(IsOkay a) => IsOkay (HasClientD a)
(IsOkay a) => IsOkay (DesValue a)
(IsOkay a) => IsOkay (HasClientS a)
(IsOkay a) => IsOkay (ServerSerializedMatch a)
(IsOkay a) => IsOkay (ServerDeSerializedMatch a)
(IsOkay a) => IsOkay (ClientSerializedMatch a)
(IsOkay a) => IsOkay (ClientDeSerializedMatch a)
#GotClientGenValue Source
data GotClientGenValue a
Constructors
Instances
(Generic a rep) => Generic (GotClientGenValue a) _
(Show a, Generic a rep) => Show (GotClientGenValue a)
(IsOkay a) => IsOkay (GotClientGenValue a)
#HasClientG Source
data HasClientG a
Constructors
Instances
(Generic a rep) => Generic (HasClientG a) _
(Show a, Generic a rep) => Show (HasClientG a)
(IsOkay a) => IsOkay (HasClientG a)
#HasServerG Source
data HasServerG a
Constructors
Instances
(Generic a rep) => Generic (HasServerG a) _
(Show a, Generic a rep) => Show (HasServerG a)
(IsOkay a) => IsOkay (HasServerG a)
#HasServerS Source
data HasServerS a
Constructors
Instances
(Generic a rep) => Generic (HasServerS a) _
(Show a, Generic a rep) => Show (HasServerS a)
(IsOkay a) => IsOkay (HasServerS a)
#HasServerD Source
data HasServerD a
Constructors
Instances
(Generic a rep) => Generic (HasServerD a) _
(Show a, Generic a rep) => Show (HasServerD a)
(IsOkay a) => IsOkay (HasServerD a)
#HasClientD Source
data HasClientD a
Constructors
Instances
(Generic a rep) => Generic (HasClientD a) _
(Show a, Generic a rep) => Show (HasClientD a)
(IsOkay a) => IsOkay (HasClientD a)
#HasClientS Source
data HasClientS a
Constructors
Instances
(Generic a rep) => Generic (HasClientS a) _
(Show a, Generic a rep) => Show (HasClientS a)
(IsOkay a) => IsOkay (HasClientS a)
#JsonDiffBuffer Source
data JsonDiffBuffer
Constructors
DiffBuffers Buffer Buffer
DiffBuffers' (Array Int) (Array Int)
DiffArrays (Array ShowableJson) (Array ShowableJson)
DiffObjectFields (Tuple String String) (Maybe JsonDiffBuffer)
DiffObjects (Array (Tuple String ShowableJson)) (Array (Tuple String ShowableJson))
Instances
#ShowableJson Source
#ServerSerializedMatch Source
data ServerSerializedMatch a
Constructors
ServerSerializedMatch a
ServerSerializedMismatch { clientS :: ShowableJson, clientSSent :: Buffer, diff :: JsonDiffBuffer, serverG :: ShowableJson, serverGReceived :: Buffer }
Instances
(Generic a rep) => Generic (ServerSerializedMatch a) _
(Show a, Generic a rep) => Show (ServerSerializedMatch a)
(IsOkay a) => IsOkay (ServerSerializedMatch a)
#ServerDeSerializedMatch Source
data ServerDeSerializedMatch a
Constructors
ServerDeSerializedMatch a
ServerDeSerializedMismatch { clientS :: ShowableJson, clientSSent :: Buffer, serverD :: ShowableJson, serverDReceived :: Buffer }
Instances
(Generic a rep) => Generic (ServerDeSerializedMatch a) _
(Show a, Generic a rep) => Show (ServerDeSerializedMatch a)
(IsOkay a) => IsOkay (ServerDeSerializedMatch a)
#ClientSerializedMatch Source
data ClientSerializedMatch a
Constructors
ClientSerializedMatch a
ClientSerializedMismatch { clientG :: ShowableJson, clientGSent :: Buffer, diff :: JsonDiffBuffer, serverS :: ShowableJson, serverSReceived :: Buffer }
Instances
(Generic a rep) => Generic (ClientSerializedMatch a) _
(Show a, Generic a rep) => Show (ClientSerializedMatch a)
(IsOkay a) => IsOkay (ClientSerializedMatch a)
#ClientDeSerializedMatch Source
data ClientDeSerializedMatch a
Constructors
ClientDeSerializedMatch a
ClientDeSerializedMismatch { clientD :: ShowableJson, clientDSent :: Buffer, serverS :: ShowableJson, serverSReceived :: Buffer }
Instances
(Generic a rep) => Generic (ClientDeSerializedMatch a) _
(Show a, Generic a rep) => Show (ClientDeSerializedMatch a)
(IsOkay a) => IsOkay (ClientDeSerializedMatch a)
#getTopicState Source
getTopicState :: TestSuiteState -> TestTopic -> Effect (HasTopic (Exists TestTopicState))
#generateValue Source
generateValue :: Exists TestTopicState -> TestTopic -> Int -> Effect (GenValue ClientToServer)
#gotServerGenValue Source
gotServerGenValue :: Exists TestTopicState -> Json -> Effect (DesValue JSONUnit)
#gotServerSerialize Source
gotServerSerialize :: Exists TestTopicState -> Json -> Effect JSONUnit
#gotServerDeSerialize Source
gotServerDeSerialize :: Exists TestTopicState -> Json -> Effect (DesValue JSONUnit)
#toHexString Source
toHexString :: Buffer -> String
#toUtf8String Source
toUtf8String :: Buffer -> String
#fromHexString Source
fromHexString :: String -> Buffer
#fromUtf8String Source
fromUtf8String :: String -> Buffer
- Modules
- Data.
Argonaut. JSONDate - Data.
Argonaut. JSONDateTime - Data.
Argonaut. JSONEither - Data.
Argonaut. JSONEmailAddress - Data.
Argonaut. JSONInt - Data.
Argonaut. JSONInteger - Data.
Argonaut. JSONScientific - Data.
Argonaut. JSONString - Data.
Argonaut. JSONTuple - Data.
Argonaut. JSONUnit - Data.
Argonaut. JSONVoid - Test.
Serialization - Test.
Serialization. Types