public async Task UnlockTest()
        {
            var lockable = await GenerateLockables(1)
                           .ContinueWith(t => t.Result.First());

            var @lock = new Lock
            {
                IsShared     = false,
                MaxLeaseDate = DateTime.Now.AddHours(2),
                OwnerToken   = "Alex Hayes"
            };

            var result = await LockableService.LockAsync(lockable, @lock);

            // Verify the lockable was locked.
            Assert.IsTrue(result.Lockable.IsLocked());

            var unlockResult = await LockableService.UnlockAsync(
                result.Lockable,
                result.LockId);

            Assert.IsNotNull(unlockResult);
            Assert.IsNotNull(unlockResult.Lockable);
            Assert.IsNotNull(unlockResult.LockRecord);
        }
        public async Task LockTest()
        {
            var lockable = await GenerateLockables(1)
                           .ContinueWith(t => t.Result.First());

            var @lock = new Lock
            {
                IsShared     = false,
                MaxLeaseDate = DateTime.Now.AddHours(2),
                OwnerToken   = "Alex Hayes"
            };

            var result = await LockableService.LockAsync(lockable, @lock);

            Assert.IsNotNull(result);
            Assert.IsFalse(String.IsNullOrEmpty(result.LockId));
            Assert.IsNotNull(result.Lockable);
        }