File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change @@ -521,6 +521,37 @@ def __init__(self, color):
521521 sys .stdout .close ()
522522 sys .stdout = sys .__stdout__ # stops from printing to console
523523
524+ def test_show_render_node (self ):
525+ product_tree = Tree ()
526+
527+ def callback_fn (node ):
528+ if node .is_leaf ():
529+ return f"A { node .data .color } { node .data .brand } car"
530+ return node .identifier
531+
532+ class Product (object ):
533+ def __init__ (self , brand , color ):
534+ self .brand = brand
535+ self .color = color
536+
537+ product_tree .create_node (tag = "root" , identifier = "root" , data = {"level" : 0 })
538+ product_tree .create_node (identifier = "car" , parent = "root" , data = {"level" : 1 })
539+ product_tree .create_node (
540+ identifier = "car_byd" , parent = "car" , data = Product ("BYD" , "red" )
541+ )
542+ product_tree .create_node (
543+ identifier = "car_geely" , parent = "car" , data = Product ("Geely" , "green" )
544+ )
545+
546+ self .assertEqual (
547+ product_tree .show (stdout = False , render_node = callback_fn ),
548+ """root
549+ └── car
550+ ├── A red BYD car
551+ └── A green Geely car
552+ """ ,
553+ )
554+
524555 def test_level (self ):
525556 self .assertEqual (self .tree .level ("hárry" ), 0 )
526557 depth = self .tree .depth ()
You can’t perform that action at this time.
0 commit comments