def METHOD_NAME(self,pid):
    """Function used to send a signal to the program automatically for testing purposes."""
    #Create a while loop that checks if the stdout buffer has any data in it, and then sends the signal once
    #it knows that the moose_test binary is actually doing something.
    #process.poll() will return None if the process is running in the OS.
    #This acts as a safety precaution against an infinite loop -- this will always close.
    while(self.process.poll() == None):
        #first, make a true duplicate of the stdout file so we don't mess with the seek on the actual file
        out_dupe = copy.copy(self.outfile)
        #go to the beginning of the file and see if its actually started running the binary
        out_dupe.seek(0)
        output = out_dupe.read()
        #if the output is blank, the moose_test binary hasn't actually started doing anything yet.
        #if so, sleep briefly and check again.
        if not output:
            time.sleep(0.05)
            continue
        #if the output isn't blank, then we actually sleep for the time specified in sleep_time
        #then we finally send the SIGUSR1 and exit the loop
        time.sleep(self.specs['sleep_time'])
        os.kill(pid,signal.SIGUSR1)
        break