* feat(ap): add support for shared inboxes to reduce outbound load * feat(db): refactor ap followers db into followers repository * fix(ap): use the updated activity library to pull out the shared inbox endpoint * chore(deps): point at updated build of owncast/activity * fix(ap): typeless endpoints * feat(test): update ActivityPub test to support shared inboxes * chore(test): remove unused variable * fix: feedback from review. Guard against SSRF/non-HTTPS/local and handle transaction errors
Tests
Load Tests
- Install artillery from NPM/Yarn/Whatever Javascript package manager is popular this week.
- Start an instance of the server on localhost.
artillery run httpGetTest.yamlfor endpoint load tests.artillery run websocketTest.yamlfor websocket load tests.
Chat test
This will send automated fake chat messages to your localhost instance. Edit the messages, usernames or point to a different instance.
npm installnode fakeChat.js
Public Testing
Run ./test-local.sh and it'll create a public URL that you can access your local Owncast instance from. This is particularly useful for testing mobile and other external devices, as well as webhooks. Make sure Owncast is running under port 8080.
If you'd like your own custom hostname that uses your username follow the instructions printed, otherwise use auto-generated name printed to the console for testing.
$ ./test/test-local.sh
Please wait. Making the local server port 8080 available at https://oc-gabek-develop.serveo.net
Forwarding HTTP traffic from https://oc-gabek-develop.serveo.net