"""
     if not isinstance(resource, dict):
         return set()
-    if "type" not in resource:
-        return set()
-    if resource["type"] != "OS::Nova::Server":
-        return set()
-    if "properties" not in resource:
+    if not is_nova_server(resource):
         return set()
 
     key_values = ["name", "flavor", "image"]
     return set(vm_types)
 
 
+def is_nova_server(resource):
+
+    return "type" in resource and "properties" in resource and resource.get("type") == "OS::Nova::Server"
+
+
 def get_vm_type_for_nova_server(resource):
     """
     Get the vm_type for a resource