Lines Matching defs:CustomError
26 class CustomError : public ErrorInfo<CustomError> {
29 CustomError(int Info) : Info(Info) {}
36 OS << "CustomError {" << getInfo() << "}";
40 llvm_unreachable("CustomError doesn't support ECError conversion");
51 CustomError() : Info(0) {}
56 char CustomError::ID = 0;
60 class CustomSubError : public ErrorInfo<CustomSubError, CustomError> {
88 static Error handleCustomError(const CustomError &CE) {
92 static void handleCustomErrorVoid(const CustomError &CE) {}
94 static Error handleCustomErrorUP(std::unique_ptr<CustomError> CE) {
98 static void handleCustomErrorUPVoid(std::unique_ptr<CustomError> CE) {}
148 Error E = make_error<CustomError>(42);
160 Error E = make_error<CustomError>(1);
164 EXPECT_TRUE(E.isA<CustomError>());
166 EXPECT_TRUE(F.isA<CustomError>());
168 EXPECT_FALSE(G.isA<CustomError>());
178 handleAllErrors(make_error<CustomError>(42), [&](const CustomError &CE) {
182 EXPECT_EQ(CaughtErrorInfo, 42) << "Wrong result from CustomError handler";
200 handleAllErrors(make_error<CustomError>(42), [](const CustomError &CE) {});
203 make_error<CustomError>(42),
204 [](const CustomError &CE) mutable -> Error { return Error::success(); });
206 handleAllErrors(make_error<CustomError>(42),
207 [](const CustomError &CE) mutable {});
209 handleAllErrors(make_error<CustomError>(42),
210 [](CustomError &CE) -> Error { return Error::success(); });
212 handleAllErrors(make_error<CustomError>(42), [](CustomError &CE) {});
214 handleAllErrors(make_error<CustomError>(42),
215 [](CustomError &CE) mutable -> Error { return Error::success(); });
217 handleAllErrors(make_error<CustomError>(42), [](CustomError &CE) mutable {});
220 make_error<CustomError>(42),
221 [](std::unique_ptr<CustomError> CE) -> Error { return Error::success(); });
223 handleAllErrors(make_error<CustomError>(42),
224 [](std::unique_ptr<CustomError> CE) {});
227 make_error<CustomError>(42),
228 [](std::unique_ptr<CustomError> CE) mutable -> Error { return Error::success(); });
230 handleAllErrors(make_error<CustomError>(42),
231 [](std::unique_ptr<CustomError> CE) mutable {});
234 handleAllErrors(make_error<CustomError>(42), handleCustomError);
237 handleAllErrors(make_error<CustomError>(42), handleCustomErrorVoid);
240 handleAllErrors(make_error<CustomError>(42), handleCustomErrorUP);
243 handleAllErrors(make_error<CustomError>(42), handleCustomErrorUPVoid);
272 [&](const CustomError &CE) { DummyInfo = CE.getInfo(); });
287 [&](const CustomError &CE) { CaughtErrorInfo = CE.getInfo(); },
307 joinErrors(make_error<CustomError>(7), make_error<CustomSubError>(42, 7));
314 [&](const CustomError &CE) {
315 // Assert that the CustomError instance above is handled
334 joinErrors(make_error<CustomError>(7),
335 make_error<CustomError>(7)),
336 make_error<CustomError>(7)),
337 [&](const CustomError &CE) {
348 make_error<CustomError>(7),
349 joinErrors(make_error<CustomError>(7),
350 make_error<CustomError>(7))),
351 [&](const CustomError &CE) {
363 make_error<CustomError>(7),
364 make_error<CustomError>(7)),
366 make_error<CustomError>(7),
367 make_error<CustomError>(7))),
368 [&](const CustomError &CE) {
382 Error E = make_error<CustomError>(7);
391 handleAllErrors(make_error<CustomError>(7), [&](const CustomSubError &SE) {
399 "CustomError \\{7\\}")
411 handleAllErrors(make_error<CustomError>(7),
419 "CustomError \\{7\\}")
430 make_error<CustomError>(7),
431 [&](std::unique_ptr<CustomError> CE) { return Error(std::move(CE)); });
434 [&](const CustomError &CE) { ErrorInfo = CE.getInfo(); });
494 EXPECT_EXIT(ExitOnErr(make_error<CustomError>(7)),
598 Expected<int> A = make_error<CustomError>(42);
601 EXPECT_TRUE(E.isA<CustomError>()) << "Incorrect Expected error value";
610 Expected<int> A = make_error<CustomError>(42);
622 EXPECT_DEATH({ Expected<int> A = make_error<CustomError>(42); },
663 return make_error<CustomError>(7);
669 // foo(Aggressive) should return a CustomError which should pass through as
670 // there is no handler for CustomError.
679 EXPECT_TRUE(Err.isA<CustomError>())
680 << "handleExpected should have returned the CustomError generated by "
687 // foo(Aggressive) should return a CustomError which should handle triggering
693 [](const CustomError&) { /* do nothing */ });
745 Error E1 = make_error<CustomError>(0);
746 EXPECT_EQ(toStringWithoutConsuming(E1), "CustomError {0}");
747 EXPECT_EQ(toString(std::move(E1)), "CustomError {0}");
749 Error E2 = make_error<CustomError>(0);
751 EXPECT_EQ(EI.message(), "CustomError {0}");
753 handleAllErrors(std::move(E2), [](const CustomError &CE) {
754 EXPECT_EQ(CE.message(), "CustomError {0}");
757 Error E3 = joinErrors(make_error<CustomError>(0), make_error<CustomError>(1));
758 EXPECT_EQ(toStringWithoutConsuming(E3), "CustomError {0}\n"
759 "CustomError {1}");
760 EXPECT_EQ(toString(std::move(E3)), "CustomError {0}\n"
761 "CustomError {1}");
774 Error E1 = make_error<CustomError>(0);
778 EXPECT_EQ("CustomError {0}", Buf);
786 EXPECT_THAT_ERROR(make_error<CustomError>(0), Succeeded()),
787 "Expected: succeeded\n Actual: failed (CustomError {0})");
791 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)),
793 "Expected: succeeded\n Actual: failed (CustomError {0})");
799 EXPECT_THAT_ERROR(make_error<CustomError>(0), Failed());
803 EXPECT_THAT_ERROR(make_error<CustomError>(0), Failed<CustomError>());
805 EXPECT_THAT_ERROR(Error::success(), Failed<CustomError>()),
808 EXPECT_THAT_ERROR(make_error<CustomError>(0), Failed<CustomSubError>()),
812 joinErrors(make_error<CustomError>(0), make_error<CustomError>(1)),
813 Failed<CustomError>()),
817 make_error<CustomError>(0),
818 Failed<CustomError>(testing::Property(&CustomError::getInfo, 0)));
821 make_error<CustomError>(0),
822 Failed<CustomError>(testing::Property(&CustomError::getInfo, 1))),
825 " Actual: failed (CustomError {0})");
826 EXPECT_THAT_ERROR(make_error<CustomError>(0), Failed<ErrorInfoBase>());
828 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)), Failed());
832 EXPECT_THAT_EXPECTED(Expected<int &>(make_error<CustomError>(0)), Failed());
838 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)),
841 " Actual: failed (CustomError {0})");
856 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)),
859 " Actual: failed (CustomError {0})");
863 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)),
864 FailedWithMessage("CustomError {0}"));
867 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(1)),
868 FailedWithMessage("CustomError {0}")),
870 "to \"CustomError {0}\"\n"
871 " Actual: failed (CustomError {1})");
875 FailedWithMessage("CustomError {0}")),
877 "to \"CustomError {0}\"\n"
881 EXPECT_THAT_EXPECTED(Expected<int>(make_error<CustomError>(0)),
882 FailedWithMessage("CustomError {0}", "CustomError {0}")),
884 "element #0 is equal to \"CustomError {0}\",\n"
885 "element #1 is equal to \"CustomError {0}\"\n"
886 " Actual: failed (CustomError {0}), which has 1 element");
890 Expected<int>(joinErrors(make_error<CustomError>(0),
891 make_error<CustomError>(0))),
892 FailedWithMessage("CustomError {0}")),
894 "to \"CustomError {0}\"\n"
895 " Actual: failed (CustomError {0}; CustomError {0}), which has 2 elements");
898 joinErrors(make_error<CustomError>(0), make_error<CustomError>(0)),
905 EXPECT_THAT_ERROR(unwrap(wrap(make_error<CustomError>(0))),
906 Failed<CustomError>())
922 make_error<CustomError>(42)))),
926 [&](CustomError &CE) {
947 Error E1 = make_error<CustomError>(1);
949 EXPECT_EQ(toString(std::move(FE1)), "'file.bin': CustomError {1}");
951 Error E2 = make_error<CustomError>(2);
954 EXPECT_EQ(F.message(), "'file.bin': CustomError {2}");
957 Error E3 = make_error<CustomError>(3);
962 handleAllErrors(std::move(E31), [](const CustomError &C) {
963 EXPECT_EQ(C.message(), "CustomError {3}");
967 joinErrors(createFileError("file.bin", make_error<CustomError>(41)),
968 createFileError("file2.bin", make_error<CustomError>(42)));
969 EXPECT_EQ(toString(std::move(FE4)), "'file.bin': CustomError {41}\n"
970 "'file2.bin': CustomError {42}");
972 Error FE5 = createFileError("", make_error<CustomError>(5));
973 EXPECT_EQ(toString(std::move(FE5)), "'': CustomError {5}");
975 Error FE6 = createFileError("unused", make_error<CustomError>(6));
977 EXPECT_EQ(F->messageWithoutFileInfo(), "CustomError {6}");