summaryrefslogtreecommitdiffstats
path: root/libs/nanopb/tests/multiple_files/test_multiple_files.c
diff options
context:
space:
mode:
Diffstat (limited to 'libs/nanopb/tests/multiple_files/test_multiple_files.c')
-rw-r--r--libs/nanopb/tests/multiple_files/test_multiple_files.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/libs/nanopb/tests/multiple_files/test_multiple_files.c b/libs/nanopb/tests/multiple_files/test_multiple_files.c
new file mode 100644
index 00000000..70a3e596
--- /dev/null
+++ b/libs/nanopb/tests/multiple_files/test_multiple_files.c
@@ -0,0 +1,30 @@
+/*
+ * Tests if this still compiles when multiple .proto files are involved.
+ */
+
+#include <stdio.h>
+#include <pb_encode.h>
+#include "unittests.h"
+#include "multifile2.pb.h"
+#include "subdir/multifile2.pb.h"
+
+int main()
+{
+ int status = 0;
+
+ /* Test that included file options are properly loaded */
+ TEST(OneofMessage_size == 27);
+
+ /* Check that enum signedness is detected properly */
+ TEST(PB_LTYPE(Enums_fields[0].type) == PB_LTYPE_VARINT);
+ TEST(PB_LTYPE(Enums_fields[1].type) == PB_LTYPE_UVARINT);
+
+ /* Test that subdir file is correctly included */
+ {
+ subdir_SubdirMessage foo = subdir_SubdirMessage_init_default;
+ TEST(foo.foo == 15);
+ /* TEST(subdir_OneofMessage_size == 27); */ /* TODO: Issue #172 */
+ }
+
+ return status;
+}