Extract ParseAndExecute as its own library. (#2813)

Currently ParseAndExecute-style logic is done in main.cpp and a test. #2799 is adding another test that needs it, as is #2811.

Also more clearly marks fuzzing as testing.

This is being extracted out of #2799 in order to try unblocking progress while review continues.
This commit is contained in:
Jon Ross-Perkins
2023-05-12 08:00:43 -07:00
committed by GitHub
parent 681dcfdcef
commit b1ee45c1e4
20 changed files with 226 additions and 168 deletions
+2 -2
View File
@@ -16,7 +16,7 @@
namespace Carbon::Testing {
namespace {
TEST(FuzzerUtilTest, ParseAndExecute) {
TEST(FuzzerUtilTest, ParseAndExecuteProto) {
const ErrorOr<Fuzzing::Carbon> carbon_proto = ParseCarbonTextProto(R"(
compilation_unit {
package_statement { package_name: "P" }
@@ -42,7 +42,7 @@ TEST(FuzzerUtilTest, ParseAndExecute) {
}
})");
ASSERT_TRUE(carbon_proto.ok());
const ErrorOr<int> result = ParseAndExecute(*carbon_proto);
const ErrorOr<int> result = ParseAndExecuteProto(*carbon_proto);
ASSERT_TRUE(result.ok()) << "Execution failed: " << result.error();
EXPECT_EQ(*result, 0);
}