diff options
author | Jon Skeet <skeet@pobox.com> | 2015-07-16 07:11:40 +0100 |
---|---|---|
committer | Jon Skeet <skeet@pobox.com> | 2015-07-16 07:11:40 +0100 |
commit | 19cf9d1e0044e18067ac4f444e3d91a5d939e84e (patch) | |
tree | eadc17fc1043b12cccdd5868e775bc540faa9841 /conformance/conformance_test.h | |
parent | 385baaa87c52abf5339b0be7dccf8a4131667117 (diff) | |
parent | 11002e70c607255cf91fea0f998fe945ca6ddc5e (diff) | |
download | protobuf-19cf9d1e0044e18067ac4f444e3d91a5d939e84e.tar.gz protobuf-19cf9d1e0044e18067ac4f444e3d91a5d939e84e.tar.bz2 protobuf-19cf9d1e0044e18067ac4f444e3d91a5d939e84e.zip |
Merge pull request #606 from jtattermusch/csharp-experimental-merged
Update csharp-experimental with changes from upstream/master
Diffstat (limited to 'conformance/conformance_test.h')
-rw-r--r-- | conformance/conformance_test.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/conformance/conformance_test.h b/conformance/conformance_test.h index 764a8d33..cadda828 100644 --- a/conformance/conformance_test.h +++ b/conformance/conformance_test.h @@ -39,6 +39,8 @@ #define CONFORMANCE_CONFORMANCE_TEST_H #include <string> +#include <google/protobuf/stubs/common.h> +#include <google/protobuf/util/type_resolver.h> #include <google/protobuf/wire_format_lite.h> namespace conformance { @@ -98,10 +100,22 @@ class ConformanceTestSuite { private: void ReportSuccess(const std::string& test_name); - void ReportFailure(const std::string& test_name, const char* fmt, ...); + void ReportFailure(const string& test_name, + const conformance::ConformanceRequest& request, + const conformance::ConformanceResponse& response, + const char* fmt, ...); + void ReportSkip(const string& test_name, + const conformance::ConformanceRequest& request, + const conformance::ConformanceResponse& response); void RunTest(const std::string& test_name, const conformance::ConformanceRequest& request, conformance::ConformanceResponse* response); + void RunValidInputTest(const string& test_name, const string& input, + conformance::WireFormat input_format, + const string& equivalent_text_format, + conformance::WireFormat requested_output); + void RunValidJsonTest(const string& test_name, const string& input_json, + const string& equivalent_text_format); void ExpectParseFailureForProto(const std::string& proto, const std::string& test_name); void ExpectHardParseFailureForProto(const std::string& proto, @@ -110,7 +124,7 @@ class ConformanceTestSuite { bool CheckSetEmpty(const set<string>& set_to_check, const char* msg); ConformanceTestRunner* runner_; int successes_; - int failures_; + int expected_failures_; bool verbose_; std::string output_; @@ -127,6 +141,13 @@ class ConformanceTestSuite { // The set of tests that succeeded, but weren't expected to. std::set<std::string> unexpected_succeeding_tests_; + + // The set of tests that the testee opted out of; + std::set<std::string> skipped_; + + google::protobuf::internal::scoped_ptr<google::protobuf::util::TypeResolver> + type_resolver_; + std::string type_url_; }; } // namespace protobuf |