test case for git cache locking

without fixed locking, this test will time out. adding an assertion in
cache.unlock() causes this test to fail quickly
assert that only files we locked get unlocked