Add testcases for property and property groups

Change-Id: I4b30d0729a704d6833c840ea08daeee961a5730b
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/src/test/templates/propertygentest.mako.hpp b/src/test/templates/propertygentest.mako.hpp
new file mode 100644
index 0000000..16febd7
--- /dev/null
+++ b/src/test/templates/propertygentest.mako.hpp
@@ -0,0 +1,34 @@
+const std::array<std::string, ${len(meta)}> meta = {
+% for m in meta:
+    "${m.name}"s,
+% endfor
+};
+
+const std::array<std::string, ${len(interfaces)}> interfaces = {
+% for i in interfaces:
+    "${i.name}"s,
+% endfor
+};
+
+const std::array<std::string, ${len(propertynames)}> properties = {
+% for p in propertynames:
+    "${p.name}"s,
+% endfor
+};
+
+const std::array<GroupOfProperties, ${len(propertygroups)}> groups = {{
+% for g in propertygroups:
+    // ${g.name}
+    {
+        % for p in g.members:
+        Property{ interfaces[${p[0]}], properties[${p[1]}], meta[${p[2]}] },
+        % endfor
+    },
+% endfor
+}};
+
+const std::array<std::string, ${len(propertygroups)}> types = {
+% for g in propertygroups:
+    "${g.datatype}"s,
+% endfor
+};