def METHOD_NAME(self):
    '''Check that all nodes completed successfully.'''
    node_names = set(sn.extractall(
        r'^\s*\[([^\]]*)\]\s*Found %s device\(s\).'
        % self.num_gpus_per_node, self.stdout, 1
    ))
    req_nodes = sn.assert_eq(
        self.job.num_tasks, len(node_names),
        msg='requested {0} node(s), got {1} (nodelist: %s)' %
        ','.join(sorted(node_names)))
    good_nodes = set(sn.extractall(
        r'^\s*\[([^\]]*)\]\s*Test Result\s*=\s*PASS',
        self.stdout, 1
    ))
    failed_nodes = sn.assert_eq(
        node_names, good_nodes,
        msg='check failed on the following node(s): %s' %
        ','.join(sorted(node_names - good_nodes))
    )
    return sn.all([req_nodes, failed_nodes])