testremote --fast
This commit is contained in:
parent
c648548e1f
commit
93f20541f5
2 changed files with 16 additions and 6 deletions
|
@ -59,8 +59,9 @@ start basesz ws = do
|
|||
showStart "testremote" name
|
||||
r <- either error id <$> Remote.byName' name
|
||||
showSideAction "generating test keys"
|
||||
ks <- mapM randKey (keySizes basesz)
|
||||
rs <- catMaybes <$> mapM (adjustChunkSize r) (chunkSizes basesz)
|
||||
fast <- Annex.getState Annex.fast
|
||||
ks <- mapM randKey (keySizes basesz fast)
|
||||
rs <- catMaybes <$> mapM (adjustChunkSize r) (chunkSizes basesz fast)
|
||||
rs' <- concat <$> mapM encryptionVariants rs
|
||||
next $ perform rs' ks
|
||||
|
||||
|
@ -161,22 +162,29 @@ cleanup rs ks ok = do
|
|||
forM_ ks removeAnnex
|
||||
return ok
|
||||
|
||||
chunkSizes :: Int -> [Int]
|
||||
chunkSizes base =
|
||||
chunkSizes :: Int -> Bool -> [Int]
|
||||
chunkSizes base False =
|
||||
[ 0 -- no chunking
|
||||
, base `div` 100
|
||||
, base `div` 1000
|
||||
, base
|
||||
]
|
||||
chunkSizes base True =
|
||||
[ 0
|
||||
]
|
||||
|
||||
keySizes :: Int -> [Int]
|
||||
keySizes base = filter (>= 0)
|
||||
keySizes :: Int -> Bool -> [Int]
|
||||
keySizes base fast = filter want
|
||||
[ 0 -- empty key is a special case when chunking
|
||||
, base
|
||||
, base + 1
|
||||
, base - 1
|
||||
, base * 2
|
||||
]
|
||||
where
|
||||
want sz
|
||||
| fast = sz <= base && sz > 0
|
||||
| otherwise = sz > 0
|
||||
|
||||
randKey :: Int -> Annex Key
|
||||
randKey sz = withTmpFile "randkey" $ \f h -> do
|
||||
|
|
|
@ -974,6 +974,8 @@ subdirectories).
|
|||
It's safe to run in an existing repository (the repository contents are
|
||||
not altered), although it may perform expensive data transfers.
|
||||
|
||||
To perform a smaller set of tests, use --fast.
|
||||
|
||||
The --size option can be used to tune the size of the generated objects.
|
||||
|
||||
Testing a single remote will use the remote's configuration,
|
||||
|
|
Loading…
Reference in a new issue