Mercurial > prosody-hg
view spec/util_time_spec.lua @ 14177:67b68147ed1d 13.0
util.ringbuffer: find(): Fix find logic bugs
If the buffer was full, find() would return earlier (wpos == rpos). Checking
blen is the better way to test if the buffer is empty.
Secondly, the loop scanned for blen - l, but if l (length of needle) was
larger than the buffer length, this calculation would underflow and cause a
lot of spinning.
New tests have been added to cover various edge cases of :find().
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Mon, 25 May 2026 14:44:20 +0100 |
| parents | aba99b6539f5 |
| children |
line wrap: on
line source
describe("util.time", function () local time; setup(function () time = require "util.time"; end); describe("now()", function () it("exists", function () assert.is_function(time.now); end); it("returns a number", function () assert.is_number(time.now()); end); end); describe("monotonic()", function () it("exists", function () assert.is_function(time.monotonic); end); it("returns a number", function () assert.is_number(time.monotonic()); end); it("time goes in one direction", function () local a = time.monotonic(); local b = time.monotonic(); assert.truthy(a <= b); end); end); end);
