summaryrefslogtreecommitdiff
path: root/kad/tests/searchCancel.hs
diff options
context:
space:
mode:
Diffstat (limited to 'kad/tests/searchCancel.hs')
-rw-r--r--kad/tests/searchCancel.hs12
1 files changed, 9 insertions, 3 deletions
diff --git a/kad/tests/searchCancel.hs b/kad/tests/searchCancel.hs
index 85986674..33860a2f 100644
--- a/kad/tests/searchCancel.hs
+++ b/kad/tests/searchCancel.hs
@@ -10,11 +10,13 @@ import Network.Kademlia.Persistence
10import Network.Kademlia.Routing 10import Network.Kademlia.Routing
11import Network.Kademlia.Search 11import Network.Kademlia.Search
12 12
13import Network.QueryResponse as QR
13import qualified Data.MinMaxPSQ as MM 14import qualified Data.MinMaxPSQ as MM
14import qualified Data.Set as Set 15import qualified Data.Set as Set
15 16
16makeSchResults :: TVar (Maybe (SearchState Int Int () Int Int)) -> TVar Int -> IO (Maybe ([Int],[Int],Maybe ())) 17makeSchResults :: TVar (Maybe (SearchState Int Int () Int Int Int)) -> TVar Int -> IO (Maybe ([Int],[Int],Maybe ()))
17makeSchResults mbv var = do 18makeSchResults mbv var = do
19 putStrLn "makeSchResults"
18 threadDelay 200000 20 threadDelay 200000
19 (r,io) <- atomically $ do 21 (r,io) <- atomically $ do
20 n <- readTVar var 22 n <- readTVar var
@@ -42,11 +44,15 @@ kad = KademliaSpace
42 , kademliaSample = \_ x _ -> pure x 44 , kademliaSample = \_ x _ -> pure x
43 } 45 }
44 46
45sch :: TVar (Maybe (SearchState Int Int () Int Int)) -> TVar Int -> Search Int Int () Int Int 47sch :: TVar (Maybe (SearchState Int Int () Int Int Int)) -> TVar Int -> Search Int Int () Int Int Int
46sch mbv var = Search 48sch mbv var = Search
47 { searchSpace = kad 49 { searchSpace = kad
48 , searchNodeAddress = id 50 , searchNodeAddress = id
49 , searchQuery = \_ _ -> makeSchResults mbv var 51 , searchQuery = \_ _ f -> do r <- makeSchResults mbv var
52 let qk = maybe 0 (\(ns,_,_) -> head ns) r
53 f qk $ maybe TimedOut Success r
54 return qk
55 , searchQueryCancel = \_ -> return ()
50 , searchAlpha = 4 56 , searchAlpha = 4
51 , searchK = 8 57 , searchK = 8
52 } 58 }