def teardown_decorator(func):
    """
    Users should decorate their tearDown methods with this decorator.
    1. Mark the logs to indicate which tearDown method is running
    2. Run the client's tearDown
    3. Report a pass if tearDown was successful
    """
    def wrapper(self, *args, **kwargs):
        self.logger.info("TEAR DOWN %s.%s" % (self.current_test_class,
                                              self.current_test_method))

        self.wait_for_completion(self.device_list)
        func(self)

        # Mark successful setup in the results dictionary
        self.results[self.current_test_class][self.current_test_method]["tearDown"] = True

    return wrapper