adds some more CXS channel testing

This commit is contained in:
2024-12-18 17:31:28 +01:00
parent 89920683e9
commit a0bd767bc9
8 changed files with 211 additions and 118 deletions

View File

@ -25,7 +25,7 @@ public:
add(const std::string& name, Args&&... args);
};
template <typename T> static T& get(const std::string& name = "");
template <typename T> static T& get(const std::string& name = typeid(T).name());
void create();
@ -50,7 +50,7 @@ private:
std::map<std::string, object> m_objects;
};
template <typename T, typename... Args> factory::add<T, Args...>::add(Args&&... args) { add("", args...); }
template <typename T, typename... Args> factory::add<T, Args...>::add(Args&&... args) { add(typeid(T).name(), args...); }
template <typename T, typename... Args> factory::add<T, Args...>::add(const std::string& name, Args&&... args) {
factory::get_instance().add_object(name, [args...]() -> object {

View File

@ -27,8 +27,9 @@ int sc_main(int argc, char* argv[]) {
scc::init_logging(LogConfig().logLevel(getenv("SCC_TEST_VERBOSE") ? log::TRACE : log::FATAL).logAsync(false).msgTypeFieldWidth(35));
// create tracer if environment variable SCC_TEST_TRACE is defined
std::unique_ptr<scc::tracer> tracer;
if(getenv("SCC_TEST_TRACE"))
tracer = std::make_unique<scc::tracer>(my_name, scc::tracer::NONE, scc::tracer::ENABLE);
if(auto* test_trace = getenv("SCC_TEST_TRACE")) {
tracer = std::make_unique<scc::tracer>(my_name, scc::tracer::ENABLE, scc::tracer::ENABLE);
}
int result = -1;
if(setjmp(abrt) == 0) {
// instantiate design(s)
@ -37,6 +38,7 @@ int sc_main(int argc, char* argv[]) {
result = Catch::Session().run(argc, argv);
// destroy design(s)
sc_stop();
SCCTRACE()<<"Test sequence finished";
factory::get_instance().destroy();
}
return result;