MCPcopy Create free account
hub / github.com/chirpstack/chirpstack / test_sync_request

Function test_sync_request

backend/src/lib.rs:1368–1434  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1366
1367 #[tokio::test]
1368 async fn test_sync_request() {
1369 let server = MockServer::start();
1370
1371 let c = Client::new(ClientConfig {
1372 sender_id: vec![1, 2, 3],
1373 server: server.url("/"),
1374 ..Default::default()
1375 })
1376 .unwrap();
1377
1378 let mut req = HomeNSReqPayload {
1379 base: BasePayload {
1380 sender_id: vec![1, 2, 3],
1381 receiver_id: vec![1, 2, 3, 4, 5, 6, 7, 8],
1382 message_type: MessageType::HomeNSReq,
1383 transaction_id: 1234,
1384 ..Default::default()
1385 },
1386 dev_eui: vec![8, 7, 6, 5, 4, 3, 2, 1],
1387 };
1388
1389 let ans = HomeNSAnsPayload {
1390 base: BasePayloadResult {
1391 base: BasePayload {
1392 sender_id: vec![1, 2, 3, 4, 5, 6, 7, 8],
1393 receiver_id: vec![1, 2, 3],
1394 message_type: MessageType::HomeNSAns,
1395 transaction_id: 1234,
1396 ..Default::default()
1397 },
1398 result: ResultPayload {
1399 result_code: ResultCode::Success,
1400 description: "".into(),
1401 },
1402 },
1403 h_net_id: vec![3, 2, 1],
1404 };
1405
1406 // OK
1407 let mut mock = server.mock(|when, then| {
1408 when.method(POST)
1409 .path("/")
1410 .body(serde_json::to_string(&req).unwrap());
1411 then.body(serde_json::to_vec(&ans).unwrap()).status(200);
1412 });
1413 let resp = c
1414 .home_ns_req(vec![1, 2, 3, 4, 5, 6, 7, 8], &mut req, None)
1415 .await
1416 .unwrap();
1417 mock.assert();
1418 mock.delete();
1419 assert_eq!(resp, ans);
1420
1421 // Error status
1422 let mut mock = server.mock(|when, then| {
1423 when.method(POST)
1424 .path("/")
1425 .body(serde_json::to_string(&req).unwrap());

Callers

nothing calls this directly

Calls 6

startFunction · 0.85
unwrapMethod · 0.80
statusMethod · 0.80
home_ns_reqMethod · 0.80
intoMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected