summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/encode_unittests.c8
-rw-r--r--tests/unittestproto.proto4
2 files changed, 9 insertions, 3 deletions
diff --git a/tests/encode_unittests.c b/tests/encode_unittests.c
index 3078998e..6a8f5e9e 100644
--- a/tests/encode_unittests.c
+++ b/tests/encode_unittests.c
@@ -180,12 +180,14 @@ int main()
{
uint8_t buffer[30];
pb_ostream_t s;
- char value[] = "xyzzy";
+ char value[30] = "xyzzy";
COMMENT("Test pb_enc_string")
- TEST(WRITES(pb_enc_string(&s, NULL, &value), "\x05xyzzy"))
+ TEST(WRITES(pb_enc_string(&s, &StringMessage_fields[0], &value), "\x05xyzzy"))
value[0] = '\0';
- TEST(WRITES(pb_enc_string(&s, NULL, &value), "\x00"))
+ TEST(WRITES(pb_enc_string(&s, &StringMessage_fields[0], &value), "\x00"))
+ memset(value, 'x', 30);
+ TEST(WRITES(pb_enc_string(&s, &StringMessage_fields[0], &value), "\x0Axxxxxxxxxx"))
}
{
diff --git a/tests/unittestproto.proto b/tests/unittestproto.proto
index c8a39dd6..7024942e 100644
--- a/tests/unittestproto.proto
+++ b/tests/unittestproto.proto
@@ -8,6 +8,10 @@ message FloatArray {
repeated float data = 1 [(nanopb).max_count = 10];
}
+message StringMessage {
+ required string data = 1 [(nanopb).max_size = 10];
+}
+
message CallbackArray {
// We cheat a bit and use this message for testing other types, too.
// Nanopb does not care about the actual defined data type for callback