# htsget-test [![MIT licensed][mit-badge]][mit-url] [![Build Status][actions-badge]][actions-url] [mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg [mit-url]: https://github.com/umccr/htsget-rs/blob/main/LICENSE [actions-badge]: https://github.com/umccr/htsget-rs/actions/workflows/action.yml/badge.svg [actions-url]: https://github.com/umccr/htsget-rs/actions?query=workflow%3Atests+branch%3Amain Common test functions and utilities used by [htsget-rs]. [htsget-rs]: https://github.com/umccr/htsget-rs ## Overview This crate contains shared code used for testing by other htsget-rs crates. It has common server tests, as well as other utility functions. [noodles]: https://github.com/zaeleus/noodles ## Usage ### For running htsget-rs as an application There is no need to interact with this crate for running htsget-rs. ### As a library This crate contains `util` functions and `server_tests`. The `server_tests` use some example requests to test the ticket server and the data block server. To use the `server_tests`, `TestServer` and `TestRequest` need to be implemented, and then the `test_*` functions can be called. This library is intended to be used as a [development dependency][dev-dependencies]. #### Feature flags This crate has the following features: * `http`: used to enable common functionality for HTTP tests. * `aws-mocks`: used to enable AWS mocking for tests. * `s3-storage`: used to enable `S3Storage` functionality. * `url-storage`: used to enable `UrlStorage` functionality. * `experimental`: used to enable experimental features that aren't necessarily part of the htsget spec, such as Crypt4GH support through `C4GHStorage`. [dev-dependencies]: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#development-dependencies ## License This project is licensed under the [MIT license][license]. [license]: LICENSE