a GUI tool for test discovery and execution. This is intended largely for ease of use
for those new to unit testing. For production environments it is
recommended that tests be driven by a continuous integration system such as
- `Buildbot <https://buildbot.net/>`_, `Jenkins <https://jenkins.io/>`_
- or `Travis-CI <https://travis-ci.com>`_, or `AppVeyor <https://www.appveyor.com/>`_.
+ `Buildbot <https://buildbot.net/>`_, `Jenkins <https://jenkins.io/>`_,
+ `GitHub Actions <https://github.com/features/actions>`_, or
+ `AppVeyor <https://www.appveyor.com/>`_.
.. _unittest-minimal-example:
return _retry_thrice(func, exc, *args, **kwargs)
return wrapped
-# bpo-35411: FTP tests of test_urllib2net randomly fail
-# with "425 Security: Bad IP connecting" on Travis CI
-skip_ftp_test_on_travis = unittest.skipIf('TRAVIS' in os.environ,
- 'bpo-35411: skip FTP test '
- 'on Travis CI')
-
-
# Connecting to remote hosts is flaky. Make it more robust by retrying
# the connection several times.
_urlopen_with_retry = _wrap_with_retry_thrice(urllib.request.urlopen,
# XXX The rest of these tests aren't very good -- they don't check much.
# They do sometimes catch some major disasters, though.
- @skip_ftp_test_on_travis
def test_ftp(self):
urls = [
'ftp://www.pythontest.net/README',
FTP_HOST = 'ftp://www.pythontest.net/'
- @skip_ftp_test_on_travis
def test_ftp_basic(self):
self.assertIsNone(socket.getdefaulttimeout())
with socket_helper.transient_internet(self.FTP_HOST, timeout=None):
self.addCleanup(u.close)
self.assertIsNone(u.fp.fp.raw._sock.gettimeout())
- @skip_ftp_test_on_travis
def test_ftp_default_timeout(self):
self.assertIsNone(socket.getdefaulttimeout())
with socket_helper.transient_internet(self.FTP_HOST):
socket.setdefaulttimeout(None)
self.assertEqual(u.fp.fp.raw._sock.gettimeout(), 60)
- @skip_ftp_test_on_travis
def test_ftp_no_timeout(self):
self.assertIsNone(socket.getdefaulttimeout())
with socket_helper.transient_internet(self.FTP_HOST):
socket.setdefaulttimeout(None)
self.assertIsNone(u.fp.fp.raw._sock.gettimeout())
- @skip_ftp_test_on_travis
def test_ftp_timeout(self):
with socket_helper.transient_internet(self.FTP_HOST):
u = _urlopen_with_retry(self.FTP_HOST, timeout=60)
This is Python version 3.11.0 alpha 3
=====================================
-.. image:: https://travis-ci.com/python/cpython.svg?branch=main
- :alt: CPython build status on Travis CI
- :target: https://travis-ci.com/python/cpython
-
.. image:: https://github.com/python/cpython/workflows/Tests/badge.svg
:alt: CPython build status on GitHub Actions
:target: https://github.com/python/cpython/actions
else:
return "not needed"
-def travis(pull_request):
+def ci(pull_request):
if pull_request == 'false':
print('Not a pull request; skipping')
return
if __name__ == '__main__':
import argparse
parser = argparse.ArgumentParser(description=__doc__)
- parser.add_argument('--travis',
+ parser.add_argument('--ci',
help='Perform pass/fail checks')
args = parser.parse_args()
- if args.travis:
- travis(args.travis)
+ if args.ci:
+ ci(args.ci)
else:
main()