While implementing some unit tests, I found out that calling vxProcessGraph() on a graph that has no nodes makes the process hang without feedback, even if vxVerifyGraph() succeeded.
I haven't seen a mention of this behavior in the documentation, is this intended?
Catch2 test below. If you comment the vxProcessGraph() call, then if works. Else, it just hangs.
TEST_CASE("Empty graph")
{
// Init
REQUIRE(0 == appInit());
vx_context ctx = vxCreateContext();
REQUIRE(nullptr != ctx);
// Create
vx_graph graph = vxCreateGraph(ctx);
REQUIRE(VX_SUCCESS == vxGetStatus((vx_reference) graph));
REQUIRE(nullptr != graph);
REQUIRE(VX_SUCCESS == vxSetReferenceName((vx_reference) graph, "MyGraph"));
// Verify
REQUIRE(VX_SUCCESS == vxVerifyGraph(graph));
// Run
REQUIRE(VX_SUCCESS == vxProcessGraph(graph));
// Cleanup
REQUIRE(VX_SUCCESS == vxReleaseGraph(&graph));
REQUIRE(VX_SUCCESS == vxReleaseContext(&ctx));
REQUIRE(0 == appDeInit());
}