This repository has been archived by the owner on Apr 13, 2021. It is now read-only.
Setup headless server integration tests #8
Labels
server
Changes that specifically affect the server codebase
Right now we have tests for the match state, but we don't have a way to test the running server outside of just running the client and playing the game. It would be beneficial if we could run tests against the server without needing to run the full Unity client, i.e. automated integration testing for the server.
This is currently somewhat blocked on #2, since right now we don't have a client interface setup for Rust. Since being able to write server tests in Rust is part of the motivation for #2, we should implement that first, and possibly implement integration tests as a way of partially testing the client connection logic as well.
The big challenge in implementing this will be integrating the connection logic into Unity. In theory we want the connection code to be async-aware even on the client side, but that brings some questions what reactor we can use. The easiest thing will be to spawn a background thread to handle the I/O and pass the output to the main thread via channels, but ideally we should be able to turn the reactor manually each frame in the client and perform all I/O on the main thread. Some initial investigation
The text was updated successfully, but these errors were encountered: