X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=tests%2Flib%2Fconds%2Fconds-triggers.cpp;fp=tests%2Flib%2Fconds%2Fconds-triggers.cpp;h=26603cdcbd1d7b096320235e21f9852ef718e7ac;hp=1a463511b0fcff540748ff98ea82882ee41cdb1b;hb=25fe6ea5b2626380612aeb0db1a9fa71d3c53952;hpb=4ad4365795e89089c88b28c483bb19fe77091632 diff --git a/tests/lib/conds/conds-triggers.cpp b/tests/lib/conds/conds-triggers.cpp index 1a463511..26603cdc 100644 --- a/tests/lib/conds/conds-triggers.cpp +++ b/tests/lib/conds/conds-triggers.cpp @@ -10,6 +10,7 @@ #include "cpp-common/bt2/graph.hpp" #include "cpp-common/bt2c/c-string-view.hpp" +#include "cpp-common/bt2s/make-unique.hpp" #include "utils.hpp" @@ -19,10 +20,12 @@ namespace { * Creates a simple condition trigger, calling `func`. */ template -CondTrigger *makeSimpleTrigger(FuncT&& func, const CondTrigger::Type type, - const std::string& condId, const bt2c::CStringView nameSuffix = {}) +CondTrigger::UP makeSimpleTrigger(FuncT&& func, const CondTrigger::Type type, + const std::string& condId, + const bt2c::CStringView nameSuffix = {}) { - return new SimpleCondTrigger {std::forward(func), type, condId, nameSuffix}; + return bt2s::make_unique(std::forward(func), type, condId, + nameSuffix); } using OnCompInitFunc = std::function; @@ -60,12 +63,12 @@ private: * Creates a condition trigger, calling `func` in a component * initialization context. */ -CondTrigger *makeRunInCompInitTrigger(OnCompInitFunc func, const CondTrigger::Type type, - const std::string& condId, - const bt2c::CStringView nameSuffix = {}) +CondTrigger::UP makeRunInCompInitTrigger(OnCompInitFunc func, const CondTrigger::Type type, + const std::string& condId, + const bt2c::CStringView nameSuffix = {}) { - return new RunInCondTrigger {RunInDelegator::makeOnCompInit(std::move(func)), - type, condId, nameSuffix}; + return bt2s::make_unique>( + RunInDelegator::makeOnCompInit(std::move(func)), type, condId, nameSuffix); } bt2::IntegerFieldClass::Shared createUIntFc(const bt2::SelfComponent self) @@ -73,36 +76,35 @@ bt2::IntegerFieldClass::Shared createUIntFc(const bt2::SelfComponent self) return self.createTraceClass()->createUnsignedIntegerFieldClass(); } -/* Our condition triggers */ -CondTrigger * const triggers[] = { - makeSimpleTrigger( +} /* namespace */ + +int main(const int argc, const char ** const argv) +{ + CondTriggers triggers; + + triggers.emplace_back(makeSimpleTrigger( [] { bt2::Graph::create(292); }, - CondTrigger::Type::PRE, "graph-create:valid-mip-version"), + CondTrigger::Type::PRE, "graph-create:valid-mip-version")); - makeRunInCompInitTrigger( + triggers.emplace_back(makeRunInCompInitTrigger( [](const bt2::SelfComponent self) { createUIntFc(self)->fieldValueRange(0); }, - CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:valid-n", "0"), + CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:valid-n", "0")); - makeRunInCompInitTrigger( + triggers.emplace_back(makeRunInCompInitTrigger( [](const bt2::SelfComponent self) { createUIntFc(self)->fieldValueRange(65); }, - CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:valid-n", "gt-64"), + CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:valid-n", "gt-64")); - makeSimpleTrigger( + triggers.emplace_back(makeSimpleTrigger( [] { bt_field_class_integer_set_field_value_range(nullptr, 23); }, - CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:not-null:field-class"), -}; - -} /* namespace */ + CondTrigger::Type::PRE, "field-class-integer-set-field-value-range:not-null:field-class")); -int main(const int argc, const char ** const argv) -{ condMain(argc, argv, triggers); }