userver: /data/code/userver/libraries/proto-structs/tests/exceptions_test.cpp Source File
Loading...
Searching...
No Matches
exceptions_test.cpp
1#include <gmock/gmock.h>
2#include <gtest/gtest.h>
3
4#include <userver/proto-structs/exceptions.hpp>
5
6USERVER_NAMESPACE_BEGIN
7
8namespace proto_structs::tests {
9
10TEST(ExceptionsTest, What) {
11 {
12 proto_structs::ConversionError error("SomeMessage", "SomeField", "SomeReason");
13 EXPECT_THAT(error.what(), ::testing::HasSubstr("Message 'SomeMessage'"));
14 EXPECT_THAT(error.what(), ::testing::HasSubstr("field 'SomeField'"));
15 EXPECT_THAT(error.what(), ::testing::HasSubstr("SomeReason"));
16 }
17
18 {
19 proto_structs::OneofAccessError error(42);
20 EXPECT_THAT(error.what(), ::testing::HasSubstr("index = 42"));
21 }
22
23 {
24 proto_structs::AnyPackError error("SomeMessage");
25 EXPECT_THAT(error.what(), ::testing::HasSubstr("SomeMessage"));
26 }
27
28 {
29 proto_structs::AnyUnpackError error("SomeMessage");
30 EXPECT_THAT(error.what(), ::testing::HasSubstr("SomeMessage"));
31 }
32}
33
34} // namespace proto_structs::tests
35
36USERVER_NAMESPACE_END