Skip to content

Commit ce9891e

Browse files
committed
test: update middleware tests
Signed-off-by: Gustavo Inacio <[email protected]>
1 parent 955bf1c commit ce9891e

File tree

3 files changed

+38
-10
lines changed

3 files changed

+38
-10
lines changed

crates/monitor/src/deployment_to_allocation.rs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,25 @@ pub fn deployment_to_allocation(
2020
.collect()
2121
})
2222
}
23+
24+
#[cfg(test)]
25+
mod tests {
26+
use tokio::sync::watch;
27+
28+
use super::deployment_to_allocation;
29+
30+
#[tokio::test]
31+
async fn test_deployment_to_allocation() {
32+
let allocations = test_assets::INDEXER_ALLOCATIONS.clone();
33+
let allocations_watcher = watch::channel(allocations.clone()).1;
34+
let deployment = deployment_to_allocation(allocations_watcher);
35+
36+
let deployments = deployment.borrow();
37+
// one of the allocation id point to the same subgraph
38+
assert_eq!(deployments.len(), 3);
39+
// check if all allocations point to the subgraph id
40+
for (key, val) in deployments.iter() {
41+
assert_eq!(allocations.get(val).unwrap().subgraph_deployment.id, *key);
42+
}
43+
}
44+
}

crates/service/src/middleware/inject_deployment.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,15 @@ mod tests {
3737
async fn test_deployment_middleware() {
3838
let middleware = from_fn(deployment_middleware);
3939

40-
async fn handle(extensions: Extensions) -> Body {
41-
extensions
40+
let deployment = *ESCROW_SUBGRAPH_DEPLOYMENT;
41+
42+
let handle = move |extensions: Extensions| async move {
43+
let received_deployment = extensions
4244
.get::<DeploymentId>()
4345
.expect("Should contain a deployment_id");
46+
assert_eq!(*received_deployment, deployment);
4447
Body::empty()
45-
}
48+
};
4649

4750
let app = Router::new()
4851
.route("/:deployment_id", get(handle))
@@ -51,7 +54,7 @@ mod tests {
5154
let res = app
5255
.oneshot(
5356
Request::builder()
54-
.uri(format!("/{}", *ESCROW_SUBGRAPH_DEPLOYMENT))
57+
.uri(format!("/{}", deployment))
5558
.body(Body::empty())
5659
.unwrap(),
5760
)

crates/service/src/middleware/inject_receipt.rs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,25 @@ mod tests {
4040
async fn test_receipt_middleware() {
4141
let middleware = from_fn(receipt_middleware);
4242

43-
async fn handle(extensions: Extensions) -> Body {
44-
extensions
43+
let receipt = create_signed_receipt(Address::ZERO, 1, 1, 1).await;
44+
let receipt_json = serde_json::to_string(&receipt).unwrap();
45+
46+
let handle = move |extensions: Extensions| async move {
47+
let received_receipt = extensions
4548
.get::<SignedReceipt>()
4649
.expect("Should decode tap receipt");
50+
assert_eq!(received_receipt.message, receipt.message);
51+
assert_eq!(received_receipt.signature, receipt.signature);
4752
Body::empty()
48-
}
53+
};
4954

5055
let app = Router::new().route("/", get(handle)).layer(middleware);
5156

52-
let receipt = create_signed_receipt(Address::ZERO, 1, 1, 1).await;
53-
5457
let res = app
5558
.oneshot(
5659
Request::builder()
5760
.uri("/")
58-
.header(TapReceipt::name(), serde_json::to_string(&receipt).unwrap())
61+
.header(TapReceipt::name(), receipt_json)
5962
.body(Body::empty())
6063
.unwrap(),
6164
)

0 commit comments

Comments
 (0)