code: def test_extend_lock_float(self, r):
      lock = self.get_lock(r, "foo", timeout=10.0)
      assert lock.acquire(blocking=False)
      assert 8000 < r.pttl("foo") <= 10000
      assert lock.extend(10.0)
      assert 16000 < r.pttl("foo") <= 20000
      lock.release()
  
imports: import time
  import pytest
  from redis.client import Redis
  from redis.exceptions import LockError, LockNotOwnedError
  from redis.lock import Lock
  from .conftest import _get_client
label_desc: Use image node_id 23 for calling the TestLock obj's underlying member method code with example usage: obj.test_extend_lock_float(r) without return types