diff --git a/inventory_provider/netconf.py b/inventory_provider/netconf.py
index a93c693e4b0022eac72d1c6f4fe1f962f6114fe9..a0d7a1f58f96b8738f375d869e5baba6b5c2c1cd 100644
--- a/inventory_provider/netconf.py
+++ b/inventory_provider/netconf.py
@@ -100,7 +100,14 @@ def _rpc(hostname, ssh):
 
 
 def load_config(hostname, ssh_params):
-    # data = dev.rpc.get_config(options={'format': 'json'})
+    """
+    loads netconf data from the router, validates and
+    returns as an lxml etree doc
+
+    :param hostname: router hostname
+    :param ssh_params: 'ssh' config element(cf. config.py:CONFIG_SCHEMA)
+    :return:
+    """
     config = _rpc(hostname, ssh_params).get_config()
 
     def _validate(schema, doc):
@@ -124,10 +131,14 @@ def load_config(hostname, ssh_params):
     return config
 
 
-def load_interfaces(hostname, ssh_params):
-    data = load_config(hostname, ssh_params)
+def list_interfaces(netconf_config):
+    """
+    generator that parses netconf output and
+    yields a list of interfaces
 
-    # print(etree.tostring(data, encoding='unicode'))
+    :param netconf_config: xml doc that was generated by load_config
+    :return:
+    """
 
     def _ifc_info(e):
         name = e.find('name')
@@ -135,23 +146,14 @@ def load_interfaces(hostname, ssh_params):
         description = e.find('description')
         return {
             'name': name.text,
-            'description': description.text if description is not None else None
+            'description': description.text if description is not None else ''
         }
 
-    # for i in data.xpath('//configuration/groups/interfaces/interface'):
-    for i in data.xpath('//configuration/interfaces/interface'):
+    for i in netconf_config.xpath('//configuration/interfaces/interface'):
         info = _ifc_info(i)
         yield info
-        # ifc_name = i.xpath('./name/text()')
-        # assert ifc_name
-        # print(ifc_name[0])
         for u in i.xpath('./unit'):
             unit_info = _ifc_info(u)
             unit_info['name'] = "%s.%s" % (info['name'], unit_info['name'])
             yield unit_info
-            # print("%s.%s" % (ifc_name[0], u))
-    #
-    # print("-----routing-instances-----")
-    # for i in data.xpath("//configuration/routing-instances/instance/interface"):
-    #     print(i.xpath('./name/text()'))