Non-blocking comment - this totally works as is - just wanted to mention that you can probably also do:

`self.basic_lock.assert_called_once_with(self.connection, 'locks', self.group.uuid, max_retry=5, retry_wait=mock.ANY)`

And then grab the retry_wait kwarg and test it.  You can also do (more complex):

    from testtools.matchers import MatchPredicate
    from otter.test.utils import matches
    wait_range = MatchesPredicate(lambda x: 3 <= x <= 5, 'retry (%s) not between 3 and 5')
    self.basic_lock.assert_called_once_with(self.connection, 'locks', self.group.uuid, max_retry=5, retry_wait=matches(wait_range))

You need the retry_wait to test that they're not equal, though, so perhaps this isn't useful.  :)  

I was also wondering if testing that they're called with the right args and testing that the retry_wait arg is not equal should be separate tests?