human
Solve the following python programming problem given the following code:
def _do_test_lock_externally(self) : 
    'We can lock across multiple processes.' 
    def lock_files(handles_dir) : 
        with lockutils.lock ('external', 'test-', external = True) : 
            handles = [] 
            for n in range (50) : 
                path = os.path.join (handles_dir, ('file-%s' % n)) 
                handles.append (open (path, 'w')) 
count = 0 
            for handle in handles : 
                try : 
                    fcntl.flock (handle, (fcntl.LOCK_EX | fcntl.LOCK_NB)) 
                    count += 1 
                    fcntl.flock (handle, fcntl.LOCK_UN) 
except IOError : 
                    os._exit (2) 
finally : 
                    handle.close () 
self.assertEqual (50, count) 
handles_dir = tempfile.mkdtemp () 
    try : 
        children = [] 
        for n in range (50) : 
            pid = os.fork () 
            if pid : 
                children.append (pid) 
else : 
                try : 
                    lock_files (handles_dir) 
finally : 
                    os._exit (0) 
for child in children : 
            (pid, status) = os.waitpid (child, 0) 
            if pid : 
                self.assertEqual (0, self) 
finally : 
        if os.path.exists (handles_dir) : 
            shutil.rmtree (handles_dir, ignore_errors = True) 

    
    

    Fix the buggy line: self.assertEqual (0, self)
assistant
#Here is Python program to fix the buggy line: self.

self.assertEqual (0, status)