locitest: generate tests from the test_data files
The "c" section of the test data file should allocate and populate a LOCI
object. The resulting wire buffer is compared to the "binary" section.
This only tests serialization, but given that we have autogenerated tests that
round-trip each object I think this is sufficient.
I added C sections to the OF 1.0 test data files. OF 1.3 tests will come in a
future pull request.
diff --git a/test_data/of10/queue_get_config_reply.data b/test_data/of10/queue_get_config_reply.data
index 5e3453d..1016cad 100644
--- a/test_data/of10/queue_get_config_reply.data
+++ b/test_data/of10/queue_get_config_reply.data
@@ -35,3 +35,49 @@
ofp.packet_queue(queue_id=2, properties=[
ofp.queue_prop_min_rate(rate=6),
ofp.queue_prop_min_rate(rate=7)])])
+-- c
+obj = of_queue_get_config_reply_new(OF_VERSION_1_0);
+of_queue_get_config_reply_port_set(obj, 65534);
+{
+ of_object_t list;
+ of_queue_get_config_reply_queues_bind(obj, &list);
+ {
+ of_object_t *obj = of_packet_queue_new(OF_VERSION_1_0);
+ {
+ of_object_t list;
+ of_packet_queue_properties_bind(obj, &list);
+ {
+ of_object_t *obj = of_queue_prop_min_rate_new(OF_VERSION_1_0);
+ of_queue_prop_min_rate_rate_set(obj, 5);
+ of_list_append(&list, obj);
+ of_object_delete(obj);
+ }
+ }
+ of_packet_queue_queue_id_set(obj, 1);
+ of_list_append(&list, obj);
+ of_object_delete(obj);
+ }
+ {
+ of_object_t *obj = of_packet_queue_new(OF_VERSION_1_0);
+ {
+ of_object_t list;
+ of_packet_queue_properties_bind(obj, &list);
+ {
+ of_object_t *obj = of_queue_prop_min_rate_new(OF_VERSION_1_0);
+ of_queue_prop_min_rate_rate_set(obj, 6);
+ of_list_append(&list, obj);
+ of_object_delete(obj);
+ }
+ {
+ of_object_t *obj = of_queue_prop_min_rate_new(OF_VERSION_1_0);
+ of_queue_prop_min_rate_rate_set(obj, 7);
+ of_list_append(&list, obj);
+ of_object_delete(obj);
+ }
+ }
+ of_packet_queue_queue_id_set(obj, 2);
+ of_list_append(&list, obj);
+ of_object_delete(obj);
+ }
+}
+of_queue_get_config_reply_xid_set(obj, 305419896);