Commit graph

27 commits

Author SHA1 Message Date
436ad890d8 feat(net): add tracing
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 3m38s
Test / build (map[name:stable]) (push) Successful in 5m4s
Release Please / Release-plz (push) Successful in 38s
2024-12-07 16:41:42 +00:00
4cb841f9f4 feat(net): add bearer_auth helper to MockNet
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 6m1s
Test / build (map[name:stable]) (push) Successful in 6m39s
Release Please / Release-plz (push) Successful in 1m35s
2024-12-03 19:59:42 +00:00
17dc1dbe30 feat(net): add basic_auth helper to MockNet
All checks were successful
Test / build (map[name:stable]) (push) Successful in 6m52s
Test / build (map[name:nightly]) (push) Successful in 5m49s
Release Please / Release-plz (push) Successful in 1m36s
chore(deps): add base64@0.22
2024-12-03 19:52:16 +00:00
3b8b260b65 feat(net): add user_agent helper to MockNet
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 8m33s
Test / build (map[name:stable]) (push) Successful in 7m0s
Release Please / Release-plz (push) Successful in 1m18s
2024-12-03 19:35:02 +00:00
41973abe18 feat(net): mock requests based on query parameters
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 7m10s
Test / build (map[name:stable]) (push) Successful in 13m3s
Release Please / Release-plz (push) Successful in 1m54s
Changed the way URLs were matched, by breaking them down into their component parts, so that we can match query parameters when they are speciifed in either the URL string, or via the `query` method, or both.
2024-12-03 19:15:36 +00:00
eb761b0973 refactor(net): elide lifetime
All checks were successful
Test / build (map[name:nightly]) (push) Successful in 3m50s
Test / build (map[name:stable]) (push) Successful in 4m33s
Release Please / Release-plz (push) Successful in 38s
2024-12-03 06:44:08 +00:00
ed590552c7 feat(net): mock request builder adds .with and .with_{option,result}
Some checks failed
Release Please / Release-plz (push) Successful in 1m39s
Rust / build (map[name:nightly]) (push) Has been cancelled
Rust / build (map[name:stable]) (push) Has been cancelled
Support for specifying conditional clauses fluently.
2024-11-21 20:44:52 +00:00
5169da03dc docs(example): clean up get example
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 3m33s
Rust / build (map[name:stable]) (push) Successful in 7m40s
Release Please / Release-plz (push) Successful in 39s
2024-11-21 09:06:53 +00:00
fab5c1ba11 feat(net)!: net api: net.{get,post,etc..}(url) alternative to net.send(request)
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 4m31s
Rust / build (map[name:nightly]) (push) Successful in 7m6s
Release Please / Release-plz (push) Successful in 49s
2024-11-20 22:23:29 +00:00
d58ec0eba2 feat(net)!: new api: .on().respond().{status,header{s},body}(_)?, replacing respond(response)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m3s
Rust / build (map[name:stable]) (push) Successful in 5m41s
Release Please / Release-plz (push) Successful in 2m38s
2024-11-20 20:31:08 +00:00
7da221bfde feat(net)!: new api: .on().{get,post, etc}(url), replacing .on(method).get(url)
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 7m20s
Rust / build (map[name:stable]) (push) Successful in 4m11s
Release Please / Release-plz (push) Successful in 1m39s
The `http::Method` parameter is not needed as we now use named methods that the methods on the underlying `reqwest` client.

The `url` parameter can be a `String` or `&str` rather than a parsed, and error handled `url::Url`.
2024-11-20 19:38:05 +00:00
a84643e6ae fix(net)!: Remove MatchOn
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 6m3s
Rust / build (map[name:nightly]) (push) Successful in 8m15s
Release Please / Release-plz (push) Successful in 59s
`MatchOn` was left behind from the v1 implementation and isn't used by
anything in the v2 implementation.
2024-11-20 19:37:06 +00:00
711c76a600 feat: re-export http::HeaderMap
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m33s
Rust / build (map[name:stable]) (push) Successful in 5m29s
Release Please / Release-plz (push) Successful in 1m15s
2024-11-20 19:37:06 +00:00
2ddc79d826 feat: Add Debug, Clone, Default, PartialEq, Eq, Send, Sync to as many or our types as possible.
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 3m13s
Rust / build (map[name:nightly]) (push) Successful in 6m25s
Release Please / Release-plz (push) Successful in 30s
- adds tokio::sync as a dependency to provide an async Mutex for Clone of Net and MockNet

## ƒs

- adds `Clone` to `DirItem`
- adds `Default`, `PartialEq` and `Eq` to `FileSystem`, `PathMarker`, `FileMarker` and `DirMarker`
- adds `Default` to `PathReal`
- adds `Clone`, `Debug`, `Default`, `PartialEq` and `Eq` to `Reader`

## net

- `MockNet::try_from` now returns a `Future`, so should be `await`ed
- adds `Debug` to `Plan`
- adds `Debug` and `Default` to `Net`
- adds `Debug`, `Clone` and `Default` to `MockNet`
- adds `Debug`, `Clone`, `PartialEq` and `Eq` to `MatchRequest`
- adds `Debug` and `Clone` to `WhenRequest`

WIP: mutation tests
2024-11-16 12:18:21 +00:00
89f39b8ad4 fix: impl Clone for Net
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 4m33s
Rust / build (map[name:stable]) (push) Successful in 8m57s
Release Please / Release-plz (push) Successful in 45s
2024-11-15 21:10:14 +00:00
40a45f32da feat: re-export Method, Url, Request, Response and RequestBuilder from http, url and reqwest crates
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 6m3s
Rust / build (map[name:stable]) (push) Successful in 2m42s
Release Please / Release-plz (push) Successful in 30s
- Closes kemitix/kxio#46
- Closes kemitix/kxio#47
- Closes kemitix/kxio#48
2024-11-15 09:13:14 +00:00
32ba3c00c7 docs: remove duplicated section
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 3m46s
Rust / build (map[name:nightly]) (push) Successful in 5m48s
Release Please / Release-plz (push) Successful in 47s
2024-11-15 09:10:09 +00:00
212aa7e0ae feat(net): mock matcher no longer uses a prebuilt request
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m3s
Rust / build (map[name:nightly]) (push) Successful in 4m15s
Release Please / Release-plz (push) Successful in 44s
2024-11-14 07:31:42 +00:00
8b6bfefbf2 docs(net): fix gramar
Some checks failed
Rust / build (map[name:stable]) (push) Successful in 2m12s
Rust / build (map[name:nightly]) (push) Successful in 4m15s
Release Please / Release-plz (push) Failing after 1m7s
2024-11-12 07:14:56 +00:00
415c37a700 refactor(net): remove inner from Net
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m7s
Rust / build (map[name:nightly]) (push) Successful in 3m59s
Release Please / Release-plz (push) Successful in 1m35s
2024-11-11 22:27:42 +00:00
dd61d39635 doc(net): added
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 2m1s
Rust / build (map[name:nightly]) (push) Successful in 3m33s
Release Please / Release-plz (push) Successful in 39s
2024-11-11 22:27:42 +00:00
dc74920dc8 feat(net): cleaner mock.on syntax
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m48s
Rust / build (map[name:stable]) (push) Successful in 6m28s
Release Please / Release-plz (push) Successful in 49s
2024-11-11 21:41:32 +00:00
aad02be6cb feat(net): be more permisive in what parameters are accepted
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m57s
Rust / build (map[name:stable]) (push) Successful in 2m12s
Release Please / Release-plz (push) Successful in 1m20s
2024-11-10 12:29:31 +00:00
4594a792e0 fix: use Default to create reqwest client
All checks were successful
Rust / build (map[name:nightly]) (push) Successful in 1m52s
Rust / build (map[name:stable]) (push) Successful in 4m19s
Release Please / Release-plz (push) Successful in 1m37s
2024-11-09 17:30:18 +00:00
ac3527ce90 feat: Net and MockNet wrappers for InnerNet<Mocker> and InnerNet<Unmocked>
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m27s
Rust / build (map[name:nightly]) (push) Successful in 1m43s
Release Please / Release-plz (push) Successful in 37s
2024-11-09 15:42:53 +00:00
69c1ac8565 feat: Net<Mocked> uses internal mutability
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m24s
Rust / build (map[name:nightly]) (push) Successful in 3m52s
Release Please / Release-plz (push) Successful in 1m36s
2024-11-09 15:42:53 +00:00
c81fe6753f feat(net)!: fluent api
All checks were successful
Rust / build (map[name:stable]) (push) Successful in 1m37s
Rust / build (map[name:nightly]) (push) Successful in 1m57s
Release Please / Release-plz (push) Successful in 27s
Closes kemitix/kxio#43
2024-11-08 19:11:23 +00:00