From 24df88dd3e63024155d86ac3231ca2abbba3fc86 Mon Sep 17 00:00:00 2001 From: Sam Truzjan Date: Tue, 4 Feb 2014 18:16:14 +0400 Subject: Update tests --- tests/Network/BitTorrent/Tracker/RPCSpec.hs | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'tests/Network/BitTorrent/Tracker/RPCSpec.hs') diff --git a/tests/Network/BitTorrent/Tracker/RPCSpec.hs b/tests/Network/BitTorrent/Tracker/RPCSpec.hs index 6bc72e86..340754d3 100644 --- a/tests/Network/BitTorrent/Tracker/RPCSpec.hs +++ b/tests/Network/BitTorrent/Tracker/RPCSpec.hs @@ -1,9 +1,11 @@ module Network.BitTorrent.Tracker.RPCSpec (spec) where +import Control.Applicative import Control.Monad import Data.Default import Data.List as L import Network.URI import Test.Hspec +import Test.QuickCheck import Network.BitTorrent.Tracker.MessageSpec hiding (spec) import Network.BitTorrent.Tracker.RPC.HTTPSpec as HTTP hiding (spec) @@ -13,17 +15,26 @@ import Network.BitTorrent.Tracker.RPC as RPC uris :: [URI] uris = UDP.trackerURIs ++ HTTP.trackerURIs +pinfo :: PeerInfo +pinfo = PeerInfo "-HS0003-203534.37422" 6000 Nothing + +instance Arbitrary SAnnounceQuery where + arbitrary = SAnnounceQuery <$> arbitrary <*> arbitrary + <*> arbitrary <*> arbitrary + spec :: Spec spec = do forM_ uris $ \ uri -> context (show uri) $ do describe "announce" $ do it "have valid response" $ do - q <- arbitrarySample - info <- connect uri >>= announce q - validateInfo q info + withManager def pinfo $ \ mgr -> do + q <- arbitrarySample + info <- announce mgr uri q + return () describe "scrape" $ do it "have valid response" $ do - xs <- connect uri >>= scrape [def] - L.length xs `shouldSatisfy` (>= 1) + withManager def pinfo $ \ mgr -> do + xs <- scrape mgr uri [def] + L.length xs `shouldSatisfy` (>= 1) -- cgit v1.2.3