owncast/test
Gabe Kangas 6ea9affce0
HLS video handling/storage/state refactor (#151)
* WIP with new transcoder progress monitor

* A whole different WIP in progress monitoring via local PUTs

* Use an actual hls playlist parser to rewrite master playlist

* Cleanup

* Private vs public path for thumbnail generation

* Allow each storage provider to make decisions of how to store different types of files

* Simplify inbound file writes

* Revert

* Split out set stream as connected/disconnected state methods

* Update videojs

* Add comment about the hls handler

* Rework of the offline stream state.  For #85

* Delete old unreferenced video segment files from disk

* Cleanup all segments and revert to a completely offline state after 5min

* Stop thumbnail generation on stream stop. Copy logo to thumbnail on cleanup.

* Update transcoder test

* Add comment

* Return http 200 on success to transcoder. Tweak how files are written to disk

* Force pixel color format in transcoder

* Add debugging info for S3 transfers. Add default ACL.

* Fix cleanup timer

* Reset session stats when we cleanup the session.

* Put log file back

* Update test

* File should not be a part of this commit

* Add centralized shared performance timer for use anywhere

* Post-rebase cleanup

* Support returning nil from storage provider save

* Updates to reflect package changes + other updates in master

* Fix storage providers being overwritten

* Do not return pointer in save. Support cache headers with S3 providers

* Split out videojs + vhs and point to specific working versions of them

* Bump vjs and vhs versions

* Fix test

* Remove unused

* Update upload warning message

* No longer valid comment

* Pin videojs and vhs versions
2020-10-14 14:07:38 -07:00
..
fakeChat.js Use ISO date strings. Make random delays longer. 2020-09-28 21:39:56 -07:00
httpGetTest.yaml Add some simple load tests 2020-07-15 21:40:22 -07:00
ocTestStream.sh Make test script destination optional 2020-09-23 18:14:37 -07:00
package-lock.json Created a fake chat message generator script for testing 2020-09-24 23:52:54 -07:00
README.md Created a fake chat message generator script for testing 2020-09-24 23:52:54 -07:00
userColorsTest.js Allow user colors to be more red 2020-09-21 14:14:55 -07:00
websocketTest.js Add some simple load tests 2020-07-15 21:40:22 -07:00
websocketTest.yaml Add some simple load tests 2020-07-15 21:40:22 -07:00

Tests

Load Tests

  1. Install artillery from NPM/Yarn/Whatever Javascript package manager is popular this week.
  2. Start an instance of the server on localhost.
  3. artillery run httpGetTest.yaml for endpoint load tests.
  4. artillery run websocketTest.yaml for 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.

  1. npm install
  2. node fakeChat.js