diff options
author | Moritz Pflanzer <moritz.pflanzer@arm.com> | 2017-07-27 14:43:46 +0100 |
---|---|---|
committer | Anthony Barbier <anthony.barbier@arm.com> | 2018-09-17 14:16:42 +0100 |
commit | ec2de0f0784ece788e6d9aa9d2af1f9a8c4175b1 (patch) | |
tree | 78f421757ffc46648fc7b404690daf04becf449c /framework/Framework.cpp | |
parent | 3a62324f8f0a35c6f2c69cbc38cc1d52863c4ba8 (diff) | |
download | ComputeLibrary-ec2de0f0784ece788e6d9aa9d2af1f9a8c4175b1.tar.gz |
COMPMID-415: Allow multiple ids for filter-id
Change-Id: Id2e4ab6094438105fec17b8ea0ad74057968571b
Reviewed-on: http://mpd-gerrit.cambridge.arm.com/81859
Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
Diffstat (limited to 'framework/Framework.cpp')
-rw-r--r-- | framework/Framework.cpp | 34 |
1 files changed, 6 insertions, 28 deletions
diff --git a/framework/Framework.cpp b/framework/Framework.cpp index ac7248c43c..bdf5319ebc 100644 --- a/framework/Framework.cpp +++ b/framework/Framework.cpp @@ -80,13 +80,11 @@ Framework &Framework::get() return instance; } -void Framework::init(const std::vector<InstrumentType> &instruments, int num_iterations, DatasetMode mode, const std::string &name_filter, int64_t id_filter, LogLevel log_level) +void Framework::init(const std::vector<InstrumentType> &instruments, int num_iterations, DatasetMode mode, const std::string &name_filter, const std::string &id_filter, LogLevel log_level) { - _test_name_filter = std::regex{ name_filter }; - _test_id_filter = id_filter; - _num_iterations = num_iterations; - _dataset_mode = mode; - _log_level = log_level; + _test_filter = TestFilter(mode, name_filter, id_filter); + _num_iterations = num_iterations; + _log_level = log_level; _instruments = InstrumentType::NONE; @@ -208,26 +206,6 @@ bool Framework::stop_on_error() const return _stop_on_error; } -bool Framework::is_selected(const TestInfo &info) const -{ - if((info.mode & _dataset_mode) == DatasetMode::DISABLED) - { - return false; - } - - if(_test_id_filter > -1 && _test_id_filter != info.id) - { - return false; - } - - if(!std::regex_search(info.name, _test_name_filter)) - { - return false; - } - - return true; -} - void Framework::run_test(const TestInfo &info, TestCaseFactory &test_factory) { if(test_factory.status() == TestCaseFactory::Status::DISABLED) @@ -392,7 +370,7 @@ bool Framework::run() const std::string test_case_name = test_factory->name(); const TestInfo test_info{ id, test_case_name, test_factory->mode(), test_factory->status() }; - if(is_selected(test_info)) + if(_test_filter.is_selected(test_info)) { run_test(test_info, *test_factory); } @@ -474,7 +452,7 @@ std::vector<TestInfo> Framework::test_infos() const { TestInfo test_info{ id, factory->name(), factory->mode(), factory->status() }; - if(is_selected(test_info)) + if(_test_filter.is_selected(test_info)) { ids.emplace_back(std::move(test_info)); } |