As bind-test is now binded at sandbox startup and no more by
test_bind.py, bind-test nodes are not located at the end of
"dm tree" output, but can be located everywhere in the tree, so
bind-test output could either be:

 simple_bus    0  [   ]   generic_simple_bus    |-- bind-test
 phy           0  [   ]   phy_sandbox           |   |-- bind-test-child1
 simple_bus    1  [   ]   generic_simple_bus    |   `-- bind-test-child2

or:

 simple_bus    5  [   ]   generic_simple_bus    `-- bind-test
 phy           2  [   ]   phy_sandbox               |-- bind-test-child1
 simple_bus    6  [   ]   generic_simple_bus        `-- bind-test-child2

in_tree() function need to be updated to take care of that change.

Signed-off-by: Patrice Chotard <patrice.chot...@st.com>
Reviewed-by: Simon Glass <s...@chromium.org>

---

Changes in v3:
 - fix typo

Changes in v2: None

 test/py/tests/test_bind.py | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/test/py/tests/test_bind.py b/test/py/tests/test_bind.py
index 0b7cd9a808..4753c7ea7b 100644
--- a/test/py/tests/test_bind.py
+++ b/test/py/tests/test_bind.py
@@ -7,13 +7,16 @@ import re
 
 def in_tree(response, name, uclass, drv, depth, last_child):
        lines = [x.strip() for x in response.splitlines()]
-       leaf = ' ' * 4 * depth;
-       if not last_child:
-               leaf = leaf + r'\|'
-       else:
-               leaf = leaf + '`'
+       leaf = ''
+       if depth != 0:
+               leaf = '   ' + '    ' * (depth - 1) ;
+               if not last_child:
+                       leaf = leaf + r'\|'
+               else:
+                        leaf = leaf + '`'
+
        leaf = leaf + '-- ' + name
-       line = (r' *{:10.10}    [0-9]*  \[ [ +] \]   {:20.20}  {}$'
+       line = (r' *{:10.10}    [0-9]*  \[ [ +] \]   {:20.20}  [` |]{}$'
                .format(uclass, drv, leaf))
        prog = re.compile(line)
        for l in lines:
-- 
2.17.1

Reply via email to