haskoin-store-1.6.4: test/Haskoin/Store/BlockStoreSpec.hs
module Haskoin.Store.BlockStoreSpec (spec) where
import Haskoin.Store.BlockStore (needsMoreBlocks)
import Test.Hspec
spec :: Spec
spec =
describe "needsMoreBlocks" $ do
it "asks for more blocks once fewer than a quarter of the window remain" $ do
-- 64 / 4 = 16
needsMoreBlocks 64 16 `shouldBe` False
needsMoreBlocks 64 15 `shouldBe` True
it "asks for more blocks once none remain, even with a window below four" $ do
needsMoreBlocks 1 1 `shouldBe` False
needsMoreBlocks 1 0 `shouldBe` True
needsMoreBlocks 3 0 `shouldBe` True