Commit Graph
1 Commits
Author SHA1 Message Date
Niels Dekker ac3c2a8d04 overload PrintTo for std::type_info and std::type_index
Included the string returned by their `name()` member function with the output of `PrintTo`.

Typical use case:

    std::unique_ptr<AbstractProduct> product = FactoryMethod();
    // Assert that the product is of type X:
    ASSERT_EQ(std::type_index{typeid(*product)},
              std::type_index{typeid(ProductX)});

Possible output in case of a test assert failure, now including the names of the compared type indices:

> error: Expected equality of these values:
>  std::type_index(typeid(*product))
>    Which is: 8-byte object <D0-65 54-8C F6-7F 00-00> ("class ProductY")
>  std::type_index(typeid(ProductX))
>    Which is: 8-byte object <40-64 54-8C F6-7F 00-00> ("class ProductX")

With help from Krystian Kuzniarek.
2021-02-25 13:23:52 +01:00