No description
Find a file
Micke Nordin 2b12ad37bc
Add Lua unit tests and scope Playwright invite state
A tiny test runner (tests/lua/test_runner.lua) plus an in-memory
amity mock (tests/lua/mock_amity.lua) let us exercise plugin lib
modules without the full host. First batch of 30 tests covers:

- Files path normalisation: root-escape rejection, null-byte
  rejection, "." and ".." resolution, UTF-8 filenames
- Upload filename validation: separator, control char, length, empty
- follow_index: add/remove/idempotence, rebuild-from-forward,
  migrate_once flag
- contacts/lib/jwks TOFU: first pin, unchanged re-fetch, rejection on
  material change, additive new kids, clear_pin reset, HTTP failure

Run with: lua5.4 tests/lua/run.lua

Also fixes the flagged test-state leak: sharedInviteCode is now
scoped inside test.describe.serial() instead of at module top level,
so concurrent or out-of-order runs no longer share the variable.
2026-04-19 12:26:41 +02:00
activitypub Rate-limit public federation endpoints 2026-04-19 12:04:42 +02:00
contacts Paginate contacts and OCM share lookups 2026-04-19 12:07:48 +02:00
e2eechat Run E2EE key-package content backfill once per user 2026-04-19 12:05:23 +02:00
files Stop leaking storage driver errors to Files API clients 2026-04-19 11:53:13 +02:00
ocm Paginate contacts and OCM share lookups 2026-04-19 12:07:48 +02:00
tests Add Lua unit tests and scope Playwright invite state 2026-04-19 12:26:41 +02:00
.gitignore Add federated E2EE chat member invitation support 2026-01-26 23:00:49 +01:00
amity-plugin-developer.skill Update amity-plugin-developer skill with --grant-all flag docs 2026-01-26 23:30:03 +01:00
README.md first commit 2026-01-07 16:05:16 +01:00