summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSam T <pxqr.sta@gmail.com>2013-07-03 00:17:16 +0400
committerSam T <pxqr.sta@gmail.com>2013-07-03 00:17:16 +0400
commit07a6123d56df03e5d7c40384c87f6c40ae2b5131 (patch)
treedaa508aaccfc5086dbef89bca5ac4a0bb9408ed8 /tests
parent044672da343dd3139be0c8f95f1fbd45b7546d9c (diff)
~ Use lazy bytestring
This lead to the following consequences: * we could efficiently read from storage - if block intersects files boundaries then we will "view" the block in the two different bytestrings. To avoid concat we now return lazy bytestring; * we could read block from socket without "concat" - again, for the same reason. The pitfail is that now we have a bit more heap object, but blocks lifetime is very short and this shouldnt play the big difference. The lifetime is either (socket -> storage -> unreachable) or (storage -> socket -> unreachable) unless a lib user keep block for their own purposes.
Diffstat (limited to 'tests')
-rw-r--r--tests/Main.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/tests/Main.hs b/tests/Main.hs
index b99f2469..45f92813 100644
--- a/tests/Main.hs
+++ b/tests/Main.hs
@@ -161,6 +161,9 @@ positive = fromIntegral <$> (arbitrary :: Gen Word32)
161instance Arbitrary ByteString where 161instance Arbitrary ByteString where
162 arbitrary = B.pack <$> arbitrary 162 arbitrary = B.pack <$> arbitrary
163 163
164instance Arbitrary Lazy.ByteString where
165 arbitrary = Lazy.pack <$> arbitrary
166
164instance Arbitrary BlockIx where 167instance Arbitrary BlockIx where
165 arbitrary = BlockIx <$> positive <*> positive <*> positive 168 arbitrary = BlockIx <$> positive <*> positive <*> positive
166 169