m.commitResponse();
for (const auto& [key, values] : d_metaTags) {
- m.setMeta(key, values, {});
+ if (!values.empty()) {
+ m.setMeta(key, values, {});
+ }
+ else {
+ /* the MetaValue field is _required_ to exist, even if we have no value */
+ m.setMeta(key, {std::string()}, {});
+ }
}
}
self.assertEqual(len(msg.meta), 5)
tags = {}
for entry in msg.meta:
- if method == "sendDOHQueryWrapper":
- self.assertEqual(len(entry.value.stringVal), 1)
- tags[entry.key] = entry.value.stringVal[0]
- else:
- self.assertEqual(len(entry.value.stringVal), 0)
- tags[entry.key] = None
+ self.assertEqual(len(entry.value.stringVal), 1)
+ tags[entry.key] = entry.value.stringVal[0]
self.assertIn('agent', tags)
if method == "sendDOHQueryWrapper":
self.assertEqual(len(msg.meta), 5)
tags = {}
for entry in msg.meta:
- if method == "sendDOHQueryWrapper":
- self.assertEqual(len(entry.value.stringVal), 1)
- tags[entry.key] = entry.value.stringVal[0]
- else:
- self.assertEqual(len(entry.value.stringVal), 0)
- tags[entry.key] = None
+ self.assertEqual(len(entry.value.stringVal), 1)
+ tags[entry.key] = entry.value.stringVal[0]
self.assertIn('agent', tags)
if method == "sendDOHQueryWrapper":