summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJosh Haberman <jhaberman@gmail.com>2017-07-08 00:00:05 -0700
committerJosh Haberman <jhaberman@gmail.com>2017-07-08 00:00:05 -0700
commit1aafd4111b9b6d08d2d0937b0f396a4caa9ea04d (patch)
tree9bcb6c61ee333de00819973f3a3acd8aab9238e5 /tests
parentdd536fd567b2ba9bed67a0094c5cd905c774f951 (diff)
A good start on upb_encode and upb_decode.
Diffstat (limited to 'tests')
-rw-r--r--tests/conformance_upb.c23
1 files changed, 13 insertions, 10 deletions
diff --git a/tests/conformance_upb.c b/tests/conformance_upb.c
index 9f83e80..e1221b2 100644
--- a/tests/conformance_upb.c
+++ b/tests/conformance_upb.c
@@ -4,6 +4,7 @@
#include <errno.h>
#include <stdarg.h>
+#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@@ -52,7 +53,7 @@ void DoTest(
if (!test_message) {
/* TODO(haberman): return details. */
- static char msg[] = "Parse error (no more details available).";
+ static const char msg[] = "Parse error (no more details available).";
conformance_ConformanceResponse_set_parse_error(
response, upb_stringview_make(msg, sizeof(msg)));
return;
@@ -60,20 +61,20 @@ void DoTest(
break;
case conformance_ConformanceRequest_payload_json_payload: {
- static char msg[] = "JSON support not yet implemented.";
+ static const char msg[] = "JSON support not yet implemented.";
conformance_ConformanceResponse_set_skipped(
response, upb_stringview_make(msg, sizeof(msg)));
return;
}
case conformance_ConformanceRequest_payload_NOT_SET:
- fprintf(stderr, "conformance_upb: Request didn't have payload.");
- exit(1);
+ fprintf(stderr, "conformance_upb: Request didn't have payload.\n");
+ return;
}
switch (conformance_ConformanceRequest_requested_output_format(request)) {
case conformance_UNSPECIFIED:
- fprintf(stderr, "conformance_upb: Unspecified output format.");
+ fprintf(stderr, "conformance_upb: Unspecified output format.\n");
exit(1);
case conformance_PROTOBUF: {
@@ -81,8 +82,10 @@ void DoTest(
char *serialized = protobuf_test_messages_proto3_TestAllTypes_serialize(
test_message, env, &serialized_len);
if (!serialized) {
- fprintf(stderr, "conformance_upb: Error serialiing.");
- exit(1);
+ static const char msg[] = "Error serializing.";
+ conformance_ConformanceResponse_set_serialize_error(
+ response, upb_stringview_make(msg, sizeof(msg)));
+ return;
}
conformance_ConformanceResponse_set_protobuf_payload(
response, upb_stringview_make(serialized, serialized_len));
@@ -90,14 +93,14 @@ void DoTest(
}
case conformance_JSON: {
- static char msg[] = "JSON support not yet implemented.";
+ static const char msg[] = "JSON support not yet implemented.";
conformance_ConformanceResponse_set_skipped(
response, upb_stringview_make(msg, sizeof(msg)));
break;
}
default:
- fprintf(stderr, "conformance_upb: Unknown output format: %d",
+ fprintf(stderr, "conformance_upb: Unknown output format: %d\n",
conformance_ConformanceRequest_requested_output_format(request));
exit(1);
}
@@ -111,7 +114,7 @@ bool DoTestIo() {
char *serialized_input;
char *serialized_output;
uint32_t input_size;
- size_t output_size;
+ size_t output_size = 0;
conformance_ConformanceRequest *request;
conformance_ConformanceResponse *response;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback