Creating a BGE staging branch.
[blender.git] / source / tests / bl_rna_wiki_reference.py
index 8d4d0374f951827340d78959bd9e8e9417bd7b88..cfe7f22f7dd591e31ca27c6f2f9c3abbff685623 100644 (file)
 
 import bpy
 
+
 def test_data():
     import rna_wiki_reference
-    
+
     assert(isinstance(rna_wiki_reference.url_manual_mapping, tuple))
     for i, value in enumerate(rna_wiki_reference.url_manual_mapping):
         try:
@@ -44,30 +45,47 @@ def test_data():
             traceback.print_exc()
             raise
 
-# a stripped down version of api_dump() in rna_info_dump.py
 
+# a stripped down version of api_dump() in rna_info_dump.py
 def test_lookup_coverage():
 
     def rna_ids():
-        
         import rna_info
         struct = rna_info.BuildRNAInfo()[0]
         for struct_id, v in sorted(struct.items()):
             props = [(prop.identifier, prop) for prop in v.properties]
+            struct_path = "bpy.types.%s" % struct_id[1]
             for prop_id, prop in props:
-                yield "bpy.types.%s.%s" % (struct_id[1], prop_id)
+                yield (struct_path, "%s.%s" % (struct_path, prop_id))
 
         for submod_id in dir(bpy.ops):
+            op_path = "bpy.ops.%s" % submod_id
             for op_id in dir(getattr(bpy.ops, submod_id)):
-                yield "bpy.ops.%s.%s" % (submod_id, op_id)
+                yield (op_path, "%s.%s" % (op_path, op_id))
 
     # check coverage
     from bl_operators import wm
 
-    for rna_id in rna_ids():
+    set_group_all = set()
+    set_group_doc = set()
+
+    for rna_group, rna_id in rna_ids():
         url = wm.WM_OT_doc_view_manual._lookup_rna_url(rna_id, verbose=False)
         print(rna_id, "->", url)
 
+        set_group_all.add(rna_group)
+        if url is not None:
+            set_group_doc.add(rna_group)
+
+    # finally report undocumented groups
+    print("")
+    print("---------------------")
+    print("Undocumented Sections")
+
+    for rna_group in sorted(set_group_all):
+        if rna_group not in set_group_doc:
+            print("%s.*" % rna_group)
+
 
 def test_urls():
     pass  # TODO