1*b3e03d2dSMichal Orzel #pragma once 2*b3e03d2dSMichal Orzel 3*b3e03d2dSMichal Orzel #include <iostream> 4*b3e03d2dSMichal Orzel #include <vector> 5*b3e03d2dSMichal Orzel 6*b3e03d2dSMichal Orzel #include <gmock/gmock.h> 7*b3e03d2dSMichal Orzel 8*b3e03d2dSMichal Orzel template <class Param> PrintTo(const std::vector<Param> & vec,std::ostream * os)9*b3e03d2dSMichal Orzelvoid PrintTo(const std::vector<Param>& vec, std::ostream* os) 10*b3e03d2dSMichal Orzel { 11*b3e03d2dSMichal Orzel *os << "[ "; 12*b3e03d2dSMichal Orzel bool first = true; 13*b3e03d2dSMichal Orzel for (const auto& item : vec) 14*b3e03d2dSMichal Orzel { 15*b3e03d2dSMichal Orzel if (!first) 16*b3e03d2dSMichal Orzel { 17*b3e03d2dSMichal Orzel *os << ", "; 18*b3e03d2dSMichal Orzel } 19*b3e03d2dSMichal Orzel PrintTo(item, os); 20*b3e03d2dSMichal Orzel first = false; 21*b3e03d2dSMichal Orzel } 22*b3e03d2dSMichal Orzel *os << " ]"; 23*b3e03d2dSMichal Orzel } 24