| 258 | } |
| 259 | |
| 260 | void run_verify::run(int argc, const char* argv[]) const |
| 261 | { |
| 262 | std::unordered_map<std::string, std::vector<std::string>> labels; |
| 263 | for(auto&& p : get_programs()) |
| 264 | { |
| 265 | labels[p.section].push_back(p.name); |
| 266 | test::add_test_case(p.name, [=] { verify(p); }); |
| 267 | } |
| 268 | test::driver d{}; |
| 269 | d.get_case_names = [&](const std::string& name) -> std::vector<std::string> { |
| 270 | if(labels.count(name) > 0) |
| 271 | return labels.at(name); |
| 272 | return {name}; |
| 273 | }; |
| 274 | d.run(argc, argv); |
| 275 | } |
| 276 | |
| 277 | void run_verify::disable_parallel_for(const std::string& name) { info[name].parallel = false; } |
| 278 | void run_verify::add_validation_for(const std::string& name, target_info::validation_function v) |