test(plugins): speed up integration tests (~45% improvement) (#5137)
* test(plugins): speed up integration tests with shared wazero cache Reduce plugin test suite runtime from ~22s to ~12s by: - Creating a shared wazero compilation cache directory in TestPlugins() and setting conf.Server.CacheFolder globally so all test Manager instances reuse compiled WASM binaries from disk cache - Moving 6 createTestManager* calls from inside It blocks to BeforeAll blocks in scrobbler_adapter_test.go and manager_call_test.go - Replacing time.Sleep(2s) in KVStore TTL test with Eventually polling - Reducing WebSocket callback sleeps from 100ms to 10ms Signed-off-by: Deluan <deluan@navidrome.org> * test(plugins): enhance websocket tests by storing server messages for verification Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
+3
-2
@@ -45,10 +45,11 @@ func (t *testWebSocket) OnTextMessage(input websocket.OnTextMessageRequest) erro
|
||||
}
|
||||
|
||||
// OnBinaryMessage is called when a binary message is received.
|
||||
// Echoes the data back as a text message prefixed with "binary_echo:" so tests
|
||||
// can observe the callback fired.
|
||||
func (t *testWebSocket) OnBinaryMessage(input websocket.OnBinaryMessageRequest) error {
|
||||
// Store received binary data for test verification
|
||||
storeReceivedMessage("binary:" + input.Data)
|
||||
return nil
|
||||
return host.WebSocketSendText(input.ConnectionID, "binary_echo:"+input.Data)
|
||||
}
|
||||
|
||||
// OnError is called when an error occurs on a WebSocket connection.
|
||||
|
||||
Reference in New Issue
Block a user