mirror of
https://github.com/NVIDIA/nvbench.git
synced 2026-03-14 20:27:24 +00:00
Added state::get_XXXX_or_default(axis_name, default_value)
This commit is contained in:
@@ -60,16 +60,52 @@ nvbench::int64_t state::get_int64(const std::string &axis_name) const
|
||||
return m_axis_values.get_int64(axis_name);
|
||||
}
|
||||
|
||||
nvbench::int64_t
|
||||
state::get_int64_or_default(const std::string &axis_name,
|
||||
nvbench::int64_t default_value) const
|
||||
try
|
||||
{
|
||||
return this->get_int64(axis_name);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
return default_value;
|
||||
}
|
||||
|
||||
nvbench::float64_t state::get_float64(const std::string &axis_name) const
|
||||
{
|
||||
return m_axis_values.get_float64(axis_name);
|
||||
}
|
||||
|
||||
nvbench::float64_t
|
||||
state::get_float64_or_default(const std::string &axis_name,
|
||||
nvbench::float64_t default_value) const
|
||||
try
|
||||
{
|
||||
return this->get_float64(axis_name);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
return default_value;
|
||||
}
|
||||
|
||||
const std::string &state::get_string(const std::string &axis_name) const
|
||||
{
|
||||
return m_axis_values.get_string(axis_name);
|
||||
}
|
||||
|
||||
const std::string &
|
||||
state::get_string_or_default(const std::string &axis_name,
|
||||
const std::string &default_value) const
|
||||
try
|
||||
{
|
||||
return this->get_string(axis_name);
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
return default_value;
|
||||
}
|
||||
|
||||
summary &state::add_summary(std::string summary_name)
|
||||
{
|
||||
return m_summaries.emplace_back(std::move(summary_name));
|
||||
|
||||
@@ -77,12 +77,21 @@ struct state
|
||||
}
|
||||
|
||||
[[nodiscard]] nvbench::int64_t get_int64(const std::string &axis_name) const;
|
||||
[[nodiscard]] nvbench::int64_t
|
||||
get_int64_or_default(const std::string &axis_name,
|
||||
nvbench::int64_t default_value) const;
|
||||
|
||||
[[nodiscard]] nvbench::float64_t
|
||||
get_float64(const std::string &axis_name) const;
|
||||
[[nodiscard]] nvbench::float64_t
|
||||
get_float64_or_default(const std::string &axis_name,
|
||||
nvbench::float64_t default_value) const;
|
||||
|
||||
[[nodiscard]] const std::string &
|
||||
get_string(const std::string &axis_name) const;
|
||||
[[nodiscard]] const std::string &
|
||||
get_string_or_default(const std::string &axis_name,
|
||||
const std::string &default_value) const;
|
||||
|
||||
void add_element_count(std::size_t elements, std::string column_name = {});
|
||||
|
||||
|
||||
@@ -98,8 +98,19 @@ void test_summaries()
|
||||
ASSERT(state.get_summary("Test Summary2").get_size() == 0);
|
||||
}
|
||||
|
||||
void test_defaults()
|
||||
{
|
||||
dummy_bench bench;
|
||||
state_tester state{bench};
|
||||
|
||||
ASSERT(state.get_int64_or_default("Foo", 42) == 42);
|
||||
ASSERT(state.get_float64_or_default("Baz", 42.4) == 42.4);
|
||||
ASSERT(state.get_string_or_default("Bar", "Kramble") == "Kramble");
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test_params();
|
||||
test_summaries();
|
||||
test_defaults();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user