summaryrefslogtreecommitdiffstats
path: root/tests/extra_fields
diff options
context:
space:
mode:
Diffstat (limited to 'tests/extra_fields')
-rw-r--r--tests/extra_fields/SConscript10
-rw-r--r--tests/extra_fields/person_with_extra_field.expected14
2 files changed, 24 insertions, 0 deletions
diff --git a/tests/extra_fields/SConscript b/tests/extra_fields/SConscript
new file mode 100644
index 00000000..a6f0e751
--- /dev/null
+++ b/tests/extra_fields/SConscript
@@ -0,0 +1,10 @@
+# Test that the decoder properly handles unknown fields in the input.
+
+Import("env")
+
+dec = env.GetBuildPath('#basic_buffer/${PROGPREFIX}decode_buffer${PROGSUFFIX}')
+env.RunTest('person_with_extra_field.output', [dec, "person_with_extra_field.pb"])
+env.Compare(["person_with_extra_field.output", "person_with_extra_field.expected"])
+
+dec2 = env.GetBuildPath('#alltypes/${PROGPREFIX}decode_alltypes${PROGSUFFIX}')
+env.RunTest('alltypes_with_extra_fields.output', [dec2, 'alltypes_with_extra_fields.pb'])
diff --git a/tests/extra_fields/person_with_extra_field.expected b/tests/extra_fields/person_with_extra_field.expected
new file mode 100644
index 00000000..da9c32df
--- /dev/null
+++ b/tests/extra_fields/person_with_extra_field.expected
@@ -0,0 +1,14 @@
+name: "Test Person 99"
+id: 99
+email: "test@person.com"
+phone {
+ number: "555-12345678"
+ type: MOBILE
+}
+phone {
+ number: "99-2342"
+}
+phone {
+ number: "1234-5678"
+ type: WORK
+}