diff --git a/veilid-core/src/routing_table/tasks/private_route_management.rs b/veilid-core/src/routing_table/tasks/private_route_management.rs index e28c3f61..8fbb36d2 100644 --- a/veilid-core/src/routing_table/tasks/private_route_management.rs +++ b/veilid-core/src/routing_table/tasks/private_route_management.rs @@ -132,6 +132,13 @@ impl RoutingTable { async move { let success = match rss.test_route(r).await { Ok(v) => v, + // Route was already removed + Err(VeilidAPIError::InvalidArgument { + context: _, + argument: _, + value: _, + }) => false, + // Other failures Err(e) => { log_rtab!(error "Test route failed: {}", e); ctx.lock().failed = true; diff --git a/veilid-python/tests/test_routing_context.py b/veilid-python/tests/test_routing_context.py index f9536e8c..8b0de277 100644 --- a/veilid-python/tests/test_routing_context.py +++ b/veilid-python/tests/test_routing_context.py @@ -105,7 +105,9 @@ async def test_routing_context_app_call_loopback(): await api.debug("purge routes") # make a routing context that uses a safety route - rc = await (await api.new_routing_context()).with_privacy() + rc = await (await (await api.new_routing_context()).with_privacy()).with_sequencing( + veilid.Sequencing.ENSURE_ORDERED + ) async with rc: # make a new local private route prl, blob = await api.new_private_route()