diff --git a/test/Vault.tests.js b/test/Vault.tests.js index 98bb9f4..4deda19 100644 --- a/test/Vault.tests.js +++ b/test/Vault.tests.js @@ -266,40 +266,35 @@ describe("Vault", function () { const context = randomBytes(32) const amount = 42 + let expiry + let maximum + beforeEach(async function () { await token.connect(account).approve(vault.address, amount) await vault.deposit(context, account.address, amount) + let start = await currentTime() + expiry = start + 10 + maximum = start + 20 }) it("can lock up all tokens in a context", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) expect((await vault.lock(context))[0]).to.equal(expiry) expect((await vault.lock(context))[1]).to.equal(maximum) }) it("cannot lock up when already locked", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) const locking = vault.lockup(context, expiry, maximum) await expect(locking).to.be.revertedWith("AlreadyLocked") }) it("cannot lock when expiry is past maximum", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 9 - const locking = vault.lockup(context, expiry, maximum) + const locking = vault.lockup(context, maximum + 1, maximum) await expect(locking).to.be.revertedWith("ExpiryPastMaximum") }) it("does not allow withdrawal before lock expires", async function () { - let start = await currentTime() - let expiry = start + 10 await vault.lockup(context, expiry, expiry) await advanceTimeTo(expiry - 1) const withdrawing = vault.withdraw(context, account.address) @@ -307,8 +302,6 @@ describe("Vault", function () { }) it("allows withdrawal after lock expires", async function () { - let start = await currentTime() - let expiry = start + 10 await vault.lockup(context, expiry, expiry) await advanceTimeTo(expiry) const before = await token.balanceOf(account.address) @@ -318,38 +311,26 @@ describe("Vault", function () { }) it("can extend a lock expiry up to its maximum", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) - await vault.extend(context, start + 15) - expect((await vault.lock(context))[0]).to.equal(start + 15) - await vault.extend(context, start + 20) - expect((await vault.lock(context))[0]).to.equal(start + 20) + await vault.extend(context, expiry + 1) + expect((await vault.lock(context))[0]).to.equal(expiry + 1) + await vault.extend(context, maximum) + expect((await vault.lock(context))[0]).to.equal(maximum) }) it("cannot extend a lock past its maximum", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) - const extending = vault.extend(context, start + 21) + const extending = vault.extend(context, maximum + 1) await expect(extending).to.be.revertedWith("ExpiryPastMaximum") }) it("cannot move expiry forward", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) - const extending = vault.extend(context, start + 9) + const extending = vault.extend(context, expiry - 1) await expect(extending).to.be.revertedWith("InvalidExpiry") }) it("cannot extend an expired lock", async function () { - let start = await currentTime() - let expiry = start + 10 - let maximum = start + 20 await vault.lockup(context, expiry, maximum) await advanceTimeTo(expiry) const extending = vault.extend(context, maximum) @@ -357,8 +338,6 @@ describe("Vault", function () { }) it("deletes lock when funds are withdrawn", async function () { - let start = await currentTime() - let expiry = start + 10 await vault.lockup(context, expiry, expiry) await advanceTimeToForNextBlock(expiry) await vault.withdraw(context, account.address)