// Copyright (c) 2012-2017 VideoStitch SAS // Copyright (c) 2018 stitchEm #pragma once #include #include #include #include #include namespace VideoStitch { namespace Testing { template std::ostream &operator<<(std::ostream &stream, const std::map &map) { for (auto &kv : map) { stream << kv.first << " --> " << kv.second << std::endl; } return stream; } template std::ostream &operator<<(std::ostream &stream, const std::pair &pair) { stream << "(" << pair.first << ", " << pair.second << ")" << std::endl; return stream; } template std::ostream &operator<<(std::ostream &stream, const std::array &array) { stream << "("; for (const auto &v : array) { stream << v << ","; } stream << ")" << std::endl; return stream; } template std::ostream &operator<<(std::ostream &stream, const std::vector &vector) { stream << "("; for (const auto &v : vector) { stream << v << ","; } stream << ")" << std::endl; return stream; } } // namespace Testing } // namespace VideoStitch