mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Refactor command line errors to mirror diagnostic style (#4568)
This changes to an `Error` return to let the driver do the "error: " prefix, except for one case with `help` that needs more work to change (I'm not planning on picking up that TODO). It also changes capitalization, backtick use, and a few minor punctuation things to try to better match the diagnostic style. This also adds `Error` matchers so that the changes to command line testing are clearer.
This commit is contained in:
+12
-11
@@ -6,11 +6,16 @@
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
|
||||
#include "common/error_test_helpers.h"
|
||||
#include "testing/base/test_raw_ostream.h"
|
||||
|
||||
namespace Carbon {
|
||||
namespace {
|
||||
|
||||
using ::Carbon::Testing::IsError;
|
||||
using ::Carbon::Testing::IsSuccess;
|
||||
using ::testing::Eq;
|
||||
|
||||
TEST(ErrorTest, Error) {
|
||||
Error err("test");
|
||||
EXPECT_EQ(err.message(), "test");
|
||||
@@ -26,8 +31,8 @@ TEST(ErrorTest, IndirectError) { EXPECT_EQ(IndirectError().message(), "test"); }
|
||||
|
||||
TEST(ErrorTest, ErrorOr) {
|
||||
ErrorOr<int> err(Error("test"));
|
||||
EXPECT_FALSE(err.ok());
|
||||
EXPECT_EQ(err.error().message(), "test");
|
||||
|
||||
EXPECT_THAT(err, IsError("test"));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, ErrorOrValue) { EXPECT_TRUE(ErrorOr<int>(0).ok()); }
|
||||
@@ -66,8 +71,7 @@ TEST(ErrorTest, ReturnIfErrorHasError) {
|
||||
CARBON_RETURN_IF_ERROR(ErrorOr<Success>(Error("error")));
|
||||
return Success();
|
||||
}();
|
||||
ASSERT_FALSE(result.ok());
|
||||
EXPECT_EQ(result.error().message(), "error");
|
||||
EXPECT_THAT(result, IsError("error"));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, AssignOrReturnNoError) {
|
||||
@@ -78,8 +82,7 @@ TEST(ErrorTest, AssignOrReturnNoError) {
|
||||
CARBON_ASSIGN_OR_RETURN(c, ErrorOr<int>(3));
|
||||
return a + b + c;
|
||||
}();
|
||||
ASSERT_TRUE(result.ok());
|
||||
EXPECT_EQ(6, *result);
|
||||
EXPECT_THAT(result, IsSuccess(Eq(6)));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, AssignOrReturnHasDirectError) {
|
||||
@@ -87,7 +90,7 @@ TEST(ErrorTest, AssignOrReturnHasDirectError) {
|
||||
CARBON_RETURN_IF_ERROR(ErrorOr<int>(Error("error")));
|
||||
return 0;
|
||||
}();
|
||||
ASSERT_FALSE(result.ok());
|
||||
EXPECT_THAT(result, IsError("error"));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, AssignOrReturnHasErrorInExpected) {
|
||||
@@ -95,14 +98,12 @@ TEST(ErrorTest, AssignOrReturnHasErrorInExpected) {
|
||||
CARBON_ASSIGN_OR_RETURN(int a, ErrorOr<int>(Error("error")));
|
||||
return a;
|
||||
}();
|
||||
ASSERT_FALSE(result.ok());
|
||||
EXPECT_EQ(result.error().message(), "error");
|
||||
EXPECT_THAT(result, IsError("error"));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, ErrorBuilderOperatorImplicitCast) {
|
||||
ErrorOr<int> result = ErrorBuilder() << "msg";
|
||||
ASSERT_FALSE(result.ok());
|
||||
EXPECT_EQ(result.error().message(), "msg");
|
||||
EXPECT_THAT(result, IsError("msg"));
|
||||
}
|
||||
|
||||
TEST(ErrorTest, StreamError) {
|
||||
|
||||
Reference in New Issue
Block a user