From 23bf3b566f4bd1c5d73a5d093e2d0a45ee81ff27 Mon Sep 17 00:00:00 2001 From: Josh Haberman Date: Thu, 4 Jun 2015 15:04:00 -0700 Subject: [PATCH] Removed test_name from conformance.proto. Change-Id: I382dcda97fa123a6da4ff5faad5d7ece95853f33 --- conformance/conformance.proto | 8 +++----- conformance/conformance_test.cc | 17 +++++++++-------- conformance/conformance_test.h | 3 ++- conformance/failure_list_cpp.txt | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/conformance/conformance.proto b/conformance/conformance.proto index 892db380..39eafdbb 100644 --- a/conformance/conformance.proto +++ b/conformance/conformance.proto @@ -57,13 +57,11 @@ option java_package = "com.google.protobuf.conformance"; // 2. parse the protobuf or JSON payload in "payload" (which may fail) // 3. if the parse succeeded, serialize the message in the requested format. message ConformanceRequest { - string test_name = 1; - // The payload (whether protobuf of JSON) is always for a TestAllTypes proto // (see below). oneof payload { - bytes protobuf_payload = 2; - string json_payload = 3; + bytes protobuf_payload = 1; + string json_payload = 2; } enum RequestedOutput { @@ -73,7 +71,7 @@ message ConformanceRequest { } // Which format should the testee serialize its message to? - RequestedOutput requested_output = 4; + RequestedOutput requested_output = 3; } // Represents a single test case's output. diff --git a/conformance/conformance_test.cc b/conformance/conformance_test.cc index d441137d..7a7fc6f5 100644 --- a/conformance/conformance_test.cc +++ b/conformance/conformance_test.cc @@ -164,9 +164,9 @@ void ConformanceTestSuite::ReportSuccess(const string& test_name) { void ConformanceTestSuite::ReportFailure(const string& test_name, const char* fmt, ...) { if (expected_to_fail_.erase(test_name) == 1) { - StringAppendF(&output_, "FAILED AS EXPECTED: "); + StringAppendF(&output_, "FAILED AS EXPECTED, test=%s: ", test_name.c_str()); } else { - StringAppendF(&output_, "ERROR: "); + StringAppendF(&output_, "ERROR, test=%s: ", test_name.c_str()); unexpected_failing_tests_.insert(test_name); } va_list args; @@ -176,10 +176,11 @@ void ConformanceTestSuite::ReportFailure(const string& test_name, failures_++; } -void ConformanceTestSuite::RunTest(const ConformanceRequest& request, +void ConformanceTestSuite::RunTest(const string& test_name, + const ConformanceRequest& request, ConformanceResponse* response) { - if (test_names_.insert(request.test_name()).second == false) { - GOOGLE_LOG(FATAL) << "Duplicated test name: " << request.test_name(); + if (test_names_.insert(test_name).second == false) { + GOOGLE_LOG(FATAL) << "Duplicated test name: " << test_name; } string serialized_request; @@ -194,7 +195,8 @@ void ConformanceTestSuite::RunTest(const ConformanceRequest& request, } if (verbose_) { - StringAppendF(&output_, "conformance test: request=%s, response=%s\n", + StringAppendF(&output_, "conformance test: name=%s, request=%s, response=%s\n", + test_name.c_str(), request.ShortDebugString().c_str(), response->ShortDebugString().c_str()); } @@ -205,14 +207,13 @@ void ConformanceTestSuite::ExpectParseFailureForProto( const string& proto, const string& test_name) { ConformanceRequest request; ConformanceResponse response; - request.set_test_name(test_name); request.set_protobuf_payload(proto); // We don't expect output, but if the program erroneously accepts the protobuf // we let it send its response as this. We must not leave it unspecified. request.set_requested_output(ConformanceRequest::PROTOBUF); - RunTest(request, &response); + RunTest(test_name, request, &response); if (response.result_case() == ConformanceResponse::kParseError) { ReportSuccess(test_name); } else { diff --git a/conformance/conformance_test.h b/conformance/conformance_test.h index 651088f7..764a8d33 100644 --- a/conformance/conformance_test.h +++ b/conformance/conformance_test.h @@ -99,7 +99,8 @@ class ConformanceTestSuite { private: void ReportSuccess(const std::string& test_name); void ReportFailure(const std::string& test_name, const char* fmt, ...); - void RunTest(const conformance::ConformanceRequest& request, + void RunTest(const std::string& test_name, + const conformance::ConformanceRequest& request, conformance::ConformanceResponse* response); void ExpectParseFailureForProto(const std::string& proto, const std::string& test_name); diff --git a/conformance/failure_list_cpp.txt b/conformance/failure_list_cpp.txt index cda1d4a1..d792eddd 100644 --- a/conformance/failure_list_cpp.txt +++ b/conformance/failure_list_cpp.txt @@ -5,7 +5,7 @@ # that we don't introduce regressions in other tests. # # TODO(haberman): insert links to corresponding bugs tracking the issue. -# Should we use GitHub issues or the Google-internal bug tracker. +# Should we use GitHub issues or the Google-internal bug tracker? PrematureEofBeforeKnownRepeatedValue.MESSAGE PrematureEofInDelimitedDataForKnownNonRepeatedValue.MESSAGE