[Updt] Mtp 0.3.0
Some checks failed
Dependency builds / Build web (pull_request) Has been skipped
Dependency builds / Build desktop (pull_request) Has been skipped
Dependency builds / Test native MTP (pull_request) Has been skipped
Dependency builds / Build mobile (pull_request) Has been skipped
/ build-web (push) Failing after 3m32s
/ build-desktop (linux) (push) Failing after 2m47s
/ build-mobile (push) Failing after 5m29s
/ release (push) Has been skipped
Some checks failed
Dependency builds / Build web (pull_request) Has been skipped
Dependency builds / Build desktop (pull_request) Has been skipped
Dependency builds / Test native MTP (pull_request) Has been skipped
Dependency builds / Build mobile (pull_request) Has been skipped
/ build-web (push) Failing after 3m32s
/ build-desktop (linux) (push) Failing after 2m47s
/ build-mobile (push) Failing after 5m29s
/ release (push) Has been skipped
This commit is contained in:
parent
57c7ceb27a
commit
2a55c87df1
33 changed files with 1825 additions and 785 deletions
25
packages/mtp/src/requestIds.test.ts
Normal file
25
packages/mtp/src/requestIds.test.ts
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
import { describe, expect, it } from "vitest";
|
||||
|
||||
import { RequestIdAllocator } from "./requestIds";
|
||||
|
||||
describe("MTP request ID allocation", () => {
|
||||
it("allocates nonzero request IDs monotonically", () => {
|
||||
const ids = new RequestIdAllocator();
|
||||
|
||||
expect(ids.allocate()).toBe(1);
|
||||
expect(ids.allocate()).toBe(2);
|
||||
expect(new RequestIdAllocator().allocate()).toBe(1);
|
||||
});
|
||||
|
||||
it("does not wrap exhausted request IDs", () => {
|
||||
const ids = new RequestIdAllocator(0x1_0000_0000);
|
||||
|
||||
expect(() => ids.allocate()).toThrow("MTP request ID space exhausted");
|
||||
});
|
||||
|
||||
it("rejects invalid allocator states", () => {
|
||||
expect(() => new RequestIdAllocator(0)).toThrow(
|
||||
"invalid MTP request ID allocator state",
|
||||
);
|
||||
});
|
||||
});
|
||||
Loading…
Reference in a new issue