Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
protobuf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
protobuf
Commits
23bf3b56
Commit
23bf3b56
authored
Jun 04, 2015
by
Josh Haberman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed test_name from conformance.proto.
Change-Id: I382dcda97fa123a6da4ff5faad5d7ece95853f33
parent
d2b67389
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
15 additions
and
15 deletions
+15
-15
conformance.proto
conformance/conformance.proto
+3
-5
conformance_test.cc
conformance/conformance_test.cc
+9
-8
conformance_test.h
conformance/conformance_test.h
+2
-1
failure_list_cpp.txt
conformance/failure_list_cpp.txt
+1
-1
No files found.
conformance/conformance.proto
View file @
23bf3b56
...
...
@@ -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.
...
...
conformance/conformance_test.cc
View file @
23bf3b56
...
...
@@ -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
{
...
...
conformance/conformance_test.h
View file @
23bf3b56
...
...
@@ -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
);
...
...
conformance/failure_list_cpp.txt
View file @
23bf3b56
...
...
@@ -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
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment