hash data before adding with a different function, make sure data looks the same coming out
ensure file is still pinned
add -r
create a directory of configurable depth, with 0 to N files in each directory
add the directory
checks:
refs -r to ensure all things are still local
check to make sure pin is still there
object patch
get a file hash through some method (object new, ipfs add, etc)
create a new object with that object as a child, perhaps multiple children?
either pin it, or dont
checks:
if this one was pinned, ensure its all still there
if it wasnt pinned, check to see that it was removed by a GC (see GC note)
pin rm
add a file, unpin it
checks:
file no longer shows up in pin list
content no longer accessible after a GC (see GC note)
pin add direct
add a file (greater than 256k)
run a refs -r to get all hashes
unpin it, and add a direct pin (ipfs pin add -r=false)
checks:
hash shows up in pin list as a direct pin, and not as a recursive one
after a GC, child hashes are no longer accessible (see GC note)
Note about GC:
some operations cant be run concurrently with a GC, the object commands, and the pin direct one both should not be run at the same time as a garbage collection run, or they risk being removed mid-operation.
refs -r
to ensure all things are still localNote about GC: some operations cant be run concurrently with a GC, the object commands, and the pin direct one both should not be run at the same time as a garbage collection run, or they risk being removed mid-operation.