various fixes - passes tests in sfav1 mode
[sfa.git] / sfa / rspecs / elements / versions / sfav1Node.py
index 838ae12..f93ff32 100644 (file)
@@ -1,7 +1,8 @@
-
+from sfa.util.sfalogging import logger
 from sfa.util.xml import XpathFilter
 from sfa.util.plxrn import PlXrn, xrn_to_hostname
 from sfa.util.xrn import Xrn
+
 from sfa.rspecs.elements.element import Element
 from sfa.rspecs.elements.node import Node
 from sfa.rspecs.elements.sliver import Sliver
@@ -95,6 +96,21 @@ class SFAv1Node:
         node_elems = xml.xpath(xpath)
         return SFAv1Node.get_node_objs(node_elems)
 
+    # xxx Thierry : an ugly hack to get the tests to pass again
+    # probably this needs to be trashed
+    # the original code returned the <sliver /> tag, 
+    # but we prefer the <node> father node instead as it already holds data
+    # initially this was to preserve the nodename...
+    # xxx I don't get the ' | //default:node/default:sliver' ...
+    @staticmethod
+    def get_nodes_with_slivers_thierry(xml):
+        # dropping the ''
+        xpath = '//node[count (sliver)>0]'
+        node_elems = xml.xpath(xpath)
+        #  we need to check/recompute the node data 
+        
+        return node_elems
+
     @staticmethod
     def get_nodes_with_slivers(xml):
         xpath = '//node/sliver | //default:node/default:sliver'