def METHOD_NAME(self):
    tmpdir = self.mkdtemp()
    # creating something executable
    # through the shell that returns 1
    if sys.platform != 'win32':
        exe = os.path.join(tmpdir, 'foo.sh')
        self.write_file(exe, '#!%s\nexit 1' % unix_shell)
    else:
        exe = os.path.join(tmpdir, 'foo.bat')
        self.write_file(exe, 'exit 1')
    os.chmod(exe, 0o777)
    self.assertRaises(DistutilsExecError, spawn, [exe])
    # now something that works
    if sys.platform != 'win32':
        exe = os.path.join(tmpdir, 'foo.sh')
        self.write_file(exe, '#!%s\nexit 0' % unix_shell)
    else:
        exe = os.path.join(tmpdir, 'foo.bat')
        self.write_file(exe, 'exit 0')
    os.chmod(exe, 0o777)
    spawn([exe])  # should work without any error