]> git.puffer.fish Git - matthieu/frr.git/commitdiff
tests: Add step api in topojson
authorAshish Pant <ashish12pant@gmail.com>
Wed, 16 Oct 2019 23:15:28 +0000 (04:45 +0530)
committerAshish Pant <ashish12pant@gmail.com>
Thu, 17 Oct 2019 03:47:03 +0000 (09:17 +0530)
Signed-off-by: Ashish Pant <ashish12pant@gmail.com>
Print messages with a step number to log from test case

tests/topotests/lib/common_config.py

index c413bf45c79076861a9f242dcbef517cb204075d..efef0395ac2dfef3c21f04907bc00df3642f762d 100644 (file)
@@ -617,7 +617,7 @@ def write_test_header(tc_name):
     """ Display message at beginning of test case"""
     count = 20
     logger.info("*"*(len(tc_name)+count))
-    logger.info("START -> Testcase : %s" % tc_name)
+    step("START -> Testcase : %s" % tc_name, reset=True)
     logger.info("*"*(len(tc_name)+count))
 
 
@@ -732,6 +732,31 @@ def retry(attempts=3, wait=2, return_is_str=True, initial_wait=0):
     return _retry
 
 
+class Stepper:
+    """
+    Prints step number for the test case step being executed
+    """
+    count = 1
+
+    def __call__(self, msg, reset):
+        if reset:
+            Stepper.count = 1
+            logger.info(msg)
+        else:
+            logger.info("STEP %s: '%s'", Stepper.count, msg)
+            Stepper.count += 1
+
+
+def step(msg, reset=False):
+    """
+    Call Stepper to print test steps. Need to reset at the beginning of test.
+    * ` msg` : Step message body.
+    * `reset` : Reset step count to 1 when set to True.
+    """
+    _step = Stepper()
+    _step(msg, reset)
+
+
 #############################################
 # These APIs,  will used by testcase
 #############################################