[libcamera-devel,v5,1/9] test: generated_serializer: Test enum that is struct member
diff mbox series

Message ID 20221011105859.457567-2-paul.elder@ideasonboard.com
State Accepted
Headers show
Series
  • utils: ipc: Add support for enums and Flags
Related show

Commit Message

Paul Elder Oct. 11, 2022, 10:58 a.m. UTC
Add an enum field to the test struct member to test
serialization/deserialization of enums that are struct members.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>

---
No change in v5

No change in v4

No change in v3

No change in v2
---
 .../generated_serializer/generated_serializer_test.cpp        | 4 ++++
 .../generated_serializer/include/libcamera/ipa/test.mojom     | 1 +
 2 files changed, 5 insertions(+)

Patch
diff mbox series

diff --git a/test/serialization/generated_serializer/generated_serializer_test.cpp b/test/serialization/generated_serializer/generated_serializer_test.cpp
index 698c81d6..a4639a80 100644
--- a/test/serialization/generated_serializer/generated_serializer_test.cpp
+++ b/test/serialization/generated_serializer/generated_serializer_test.cpp
@@ -51,6 +51,7 @@  if (struct1.field != struct2.field) {				\
 		t.s2 = "goodbye";
 		t.s3 = "lorem ipsum";
 		t.i  = 58527;
+		t.c = ipa::test::IPAOperationInit;
 
 		std::vector<uint8_t> serialized;
 
@@ -69,6 +70,7 @@  if (struct1.field != struct2.field) {				\
 		TEST_FIELD_EQUALITY(t, u, s2);
 		TEST_FIELD_EQUALITY(t, u, s3);
 		TEST_FIELD_EQUALITY(t, u, i);
+		TEST_FIELD_EQUALITY(t, u, c);
 
 
 		/* Test vector of generated structs */
@@ -92,11 +94,13 @@  if (struct1.field != struct2.field) {				\
 		TEST_FIELD_EQUALITY(v[0], w[0], s2);
 		TEST_FIELD_EQUALITY(v[0], w[0], s3);
 		TEST_FIELD_EQUALITY(v[0], w[0], i);
+		TEST_FIELD_EQUALITY(v[0], w[0], c);
 
 		TEST_FIELD_EQUALITY(v[1], w[1], s1);
 		TEST_FIELD_EQUALITY(v[1], w[1], s2);
 		TEST_FIELD_EQUALITY(v[1], w[1], s3);
 		TEST_FIELD_EQUALITY(v[1], w[1], i);
+		TEST_FIELD_EQUALITY(v[1], w[1], c);
 
 		return TestPass;
 	}
diff --git a/test/serialization/generated_serializer/include/libcamera/ipa/test.mojom b/test/serialization/generated_serializer/include/libcamera/ipa/test.mojom
index 5f200885..73081b40 100644
--- a/test/serialization/generated_serializer/include/libcamera/ipa/test.mojom
+++ b/test/serialization/generated_serializer/include/libcamera/ipa/test.mojom
@@ -18,6 +18,7 @@  struct TestStruct {
 	string s2;
 	int32 i;
 	string s3;
+	IPAOperationCode c;
 };
 
 interface IPATestInterface {