#ifndef MIGRAPHX_GUARD_TEST_RUN_VERIFY_HPP #define MIGRAPHX_GUARD_TEST_RUN_VERIFY_HPP #include #include #include struct target_info { using validation_function = std::function; bool parallel = true; validation_function validate; std::vector disabled_tests; }; struct run_verify { std::vector run_ref(migraphx::program p, migraphx::parameter_map inputs) const; std::pair> run_target(const migraphx::target& t, migraphx::program p, const migraphx::parameter_map& inputs) const; void validate(const migraphx::target& t, const migraphx::program& p, const migraphx::parameter_map& m) const; void verify(const std::string& name, const migraphx::program& p) const; void run(int argc, const char* argv[]) const; target_info get_target_info(const std::string& name) const; void disable_parallel_for(const std::string& name); void add_validation_for(const std::string& name, target_info::validation_function v); void disable_test_for(const std::string& name, const std::vector& tests); private: std::map info{}; }; #endif