toxcore-0.2.11: test/Network/Tox/NodeInfo/NodeInfoSpec.hs
{-# LANGUAGE Trustworthy #-}
module Network.Tox.NodeInfo.NodeInfoSpec where
import Test.Hspec
import qualified Data.Binary as Binary (get)
import qualified Data.Binary.Get as Binary (Get)
import Data.Proxy (Proxy (..))
import Network.Tox.EncodingSpec
import Network.Tox.NodeInfo.NodeInfo (NodeInfo)
spec :: Spec
spec = do
rpcSpec (Proxy :: Proxy NodeInfo)
binarySpec (Proxy :: Proxy NodeInfo)
readShowSpec (Proxy :: Proxy NodeInfo)
it "should handle invalid packets as failures" $ do
expectDecoderFailure [0x20] "Invalid address family: 32"
expectDecoderFailure [0xa0] "Invalid address family: 32"
expectDecoderFailure [0x00] "Invalid address family: 0"
expectDecoderFailure [0x01] "Invalid address family: 1"
where
expectDecoderFailure =
expectDecoderFail (Binary.get :: Binary.Get NodeInfo)