Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/transparencies/transparencies-backend-rs
A backend for dynamic stream overlays written in Rust
https://github.com/transparencies/transparencies-backend-rs
ageofempires aoe2 obs-studio overlays rust-lang streaming twitch
Last synced: 3 months ago
JSON representation
A backend for dynamic stream overlays written in Rust
- Host: GitHub
- URL: https://github.com/transparencies/transparencies-backend-rs
- Owner: transparencies
- License: agpl-3.0
- Created: 2020-12-24T19:28:39.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-02-04T01:46:59.000Z (almost 2 years ago)
- Last Synced: 2023-03-03T22:54:01.334Z (almost 2 years ago)
- Topics: ageofempires, aoe2, obs-studio, overlays, rust-lang, streaming, twitch
- Language: Rust
- Homepage:
- Size: 1.21 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# transparencies-backend-rs [![AGPLv3+](https://www.gnu.org/graphics/agplv3-88x31.png)](https://www.gnu.org/licenses/agpl.txt)
## A backend for dynamic stream overlays written in Rust
## Benchmarking
## Profiling
You can use `flamegraph` for benchmarking with `cargo flamegraph --bin transparencies-backend-rs`.
The `flamegraph.svg` will be found in the root of the repository.## Testing
## Creating a new test case
- First create a copy of the `/tests/matchinfo-integration/test_case_template` folder.
Rename it to something reasonable.- Then edit the `match_info_request.ron` file in this newly created folder structure
and let it point to a combination of settings you want to test.- Then run `cargo run --example export-test-data -- --test-case-folder `
to download a set of responses that are serialized into JSON-files into the corresponding
folder.- Afterwards open `/tests/matchinfo-integration/main.rs` and depending on what you
want to achieve either copy one of the functions marked with `#[tokio::test]` and
adapt them or add another `TestCase` to one of these functions. `TestCases` that
are added with `test_cases.add(path)` should be only added if they test the same
functionality/feature. Otherwhise create a new function from. This makes it easier
to see if a test fails which feature is not working.### Update data for a case of an integration test
- Make sure the data that will be exported again will depict the actual test case.
Because everything is redownloaded it's not that sure.- Then run `cargo run --example export-test-data -- --test-case-folder `
to download a set of responses that are serialized into JSON-files into the corresponding
folder.### Running tests
We are using the `bunyan` CLI to prettify the outputted logs.
The original `bunyan` requires NPM, but you can install a Rust-port with
`cargo install bunyan`.Then run `TEST_LOG=true cargo test | bunyan`/`TEST_LOG=true just test | bunyan`
to run our test suite.## Documentation
Documentation can be easily build and opened with `cargo doc --no-deps
--document-private-items --open`.## License
**GNU AGPLv3** or later; see [LICENSE](LICENSE).