htsget-test 0.7.1

Common test functions and utilities used by htsget-rs.
Documentation
# 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