def METHOD_NAME(target, source, env):
    if len(source) > 1:
        infile = open(str(source[1]), 'rb')
    else:
        infile = None
    if "COMMAND" in env:
        args = [env["COMMAND"]]
    else:
        args = [str(source[0])]
    if 'ARGS' in env:
        args.extend(env['ARGS'])
    if "TEST_RUNNER" in env:
        args = [env["TEST_RUNNER"]] + args
    print('Command line: ' + str(args))
    pipe = subprocess.Popen(args,
                            stdin = infile,
                            stdout = open(str(target[0]), 'w'),
                            stderr = sys.stderr)
    result = pipe.wait()
    if result == 0:
        print('\033[32m[ OK ]\033[0m   Ran ' + args[0])
    else:
        print('\033[31m[FAIL]\033[0m   Program ' + args[0] + ' returned ' + str(result))
    return result