diff --git a/tests/data/pipelines/config_provider_sys.pipe b/tests/data/pipelines/config_provider_sys.pipe new file mode 100644 index 00000000..d2d079da --- /dev/null +++ b/tests/data/pipelines/config_provider_sys.pipe @@ -0,0 +1,5 @@ +config sysinfo + :homedir[ro]{SYS} homedir + :curdir[ro]{SYS} curdir + :processors[ro]{SYS} processors + :pid[ro]{SYS} pid diff --git a/tests/data/pipelines/config_provider_sys_unrecognized.pipe b/tests/data/pipelines/config_provider_sys_unrecognized.pipe new file mode 100644 index 00000000..b071c4a2 --- /dev/null +++ b/tests/data/pipelines/config_provider_sys_unrecognized.pipe @@ -0,0 +1,2 @@ +config sysinfo + :unknown[ro]{SYS} unknown diff --git a/tests/sprokit/pipeline_util/test_pipe_bakery.cxx b/tests/sprokit/pipeline_util/test_pipe_bakery.cxx index d925569e..47e9f0e6 100644 --- a/tests/sprokit/pipeline_util/test_pipe_bakery.cxx +++ b/tests/sprokit/pipeline_util/test_pipe_bakery.cxx @@ -524,6 +524,26 @@ IMPLEMENT_TEST(config_provider_read_only_override) "setting a read-only provided value"); } +IMPLEMENT_TEST(config_provider_sys) +{ + sprokit::pipe_blocks const blocks = sprokit::load_pipe_blocks_from_file(pipe_file); + + sprokit::config_t const conf = sprokit::extract_configuration(blocks); + + (void)conf; + + /// \todo Test values. +} + +IMPLEMENT_TEST(config_provider_sys_unrecognized) +{ + sprokit::pipe_blocks const blocks = sprokit::load_pipe_blocks_from_file(pipe_file); + + EXPECT_EXCEPTION(sprokit::unrecognized_system_index_exception, + sprokit::extract_configuration(blocks), + "using an unrecognized SYS provider key"); +} + IMPLEMENT_TEST(config_provider_unprovided) { sprokit::pipe_blocks const blocks = sprokit::load_pipe_blocks_from_file(pipe_file);