summaryrefslogtreecommitdiffstats
path: root/Lib/test/string_tests.py
Commit message (Collapse)AuthorAgeFilesLines
* gh-117431: Adapt str.find and friends to Argument Clinic (#117468)Erlend E. Aasland2024-04-031-5/+5
| | | | | | | | | | This change gives a significant speedup, as the METH_FASTCALL calling convention is now used. The following methods are adapted: - str.count - str.find - str.index - str.rfind - str.rindex
* gh-117431: Adapt str.startswith and str.endswith to Argument Clinic (#117466)Erlend E. Aasland2024-04-031-2/+2
| | | | This change gives a significant speedup, as the METH_FASTCALL calling convention is now used.
* gh-110160: Fix flaky `test_find_periodic_pattern` in `string_tests` (#110170)Nikita Sobolev2023-10-011-3/+11
|
* gh-106487: Allow the 'count' argument of `str.replace` to be a keyword (#106488)Hugo van Kemenade2023-07-101-0/+6
|
* gh-81005: Refactor str tests to reflect that str and unicode are merged in ↵Daniel Fortunov2023-05-231-17/+9
| | | | | | Python 3 (#13172) Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-94808: Cover `str.rsplit` for UCS1, UCS2 or UCS4 (#98228)Nikita Sobolev2022-10-151-0/+8
|
* gh-94808: improve comments and coverage of fastsearch.h (GH-96760)Dennis Sweeney2022-09-131-0/+48
|
* bpo-45668: Fix PGO tests without test extensions (GH-29315)Christian Heimes2021-11-011-5/+6
|
* bpo-44110: Improve string's __getitem__ error message (GH-26042)Miguel Brito2021-06-271-1/+7
|
* bpo-41972: Use the two-way algorithm for string searching (GH-22904)Dennis Sweeney2021-02-281-0/+39
| | | | | Implement an enhanced variant of Crochemore and Perrin's Two-Way string searching algorithm, which reduces worst-case time from quadratic (the product of the string and pattern lengths) to linear. This applies to forward searches (like``find``, ``index``, ``replace``); the algorithm for reverse searches (like ``rfind``) is not changed. Co-authored-by: Tim Peters <tim.peters@gmail.com>
* bpo-39939: Add str.removeprefix and str.removesuffix (GH-18939)sweeneyde2020-04-221-0/+36
| | | | | Added str.removeprefix and str.removesuffix methods and corresponding bytes, bytearray, and collections.UserString methods to remove affixes from a string if present. See PEP 616 for a full description.
* bpo-28029: Make "".replace("", s, n) returning s for any n != 0. (GH-16981)Serhiy Storchaka2019-10-301-0/+1
|
* bpo-36946: Fix possible signed integer overflow when handling slices. (GH-13375)Zackery Spytz2019-05-171-1/+1
| | | | | | | The final addition (cur += step) may overflow, so use size_t for "cur". "cur" is always positive (even for negative steps), so it is safe to use size_t here. Co-Authored-By: Martin Panter <vadmium+py@gmail.com>
* bpo-36549: str.capitalize now titlecases the first character instead of ↵Kingsley M2019-04-121-1/+1
| | | | uppercasing it (GH-12804)
* bpo-32677: Optimize str.isascii() (GH-5356)INADA Naoki2018-01-281-0/+7
|
* bpo-32677: Add .isascii() to str, bytes and bytearray (GH-5342)INADA Naoki2018-01-271-0/+8
|
* Remove relics of str8 (became bytes) and buffer (bytearray) type testsMartin Panter2016-04-101-33/+0
| | | | Remove redundant tests now that str is unicode.
* Issue #26712: Unify (r)split, (l/r)strip tests into string_testsMartin Panter2016-04-101-5/+31
| | | | This eliminates a few redundant test cases.
* Issue #26257: Eliminate buffer_tests.py and fix ByteArrayAsStringTestMartin Panter2016-04-061-36/+40
| | | | | | | | | | | | | | | | ByteArrayAsStringTest.fixtype() was converting test data to bytes, not byte- array, therefore many of the test cases inherited in this class were not actually being run on the bytearray type. The tests in buffer_tests.py were redundant with methods in string_tests .MixinStrUnicodeUserStringTest and string_tests.CommonTest. These methods are now moved into string_tests.BaseTest, where they will also get run for bytes and bytearray. This change also moves test_additional_split(), test_additional_rsplit(), and test_strip() from CommonTest to BaseTest, meaning these tests are now run for bytes and bytearray. I plan to eliminate redundancies with existing tests in test_bytes.py soon.
* Issue #19587: Remove masked and redundant tests in test_bytesMartin Panter2016-02-021-6/+4
| | | | | | | | * test_contains() did not override anything * test_expandtabs/upper/lower() in FixedStringTest were masking usable tests in string_tests. These tests now get run for bytearray() and bytes(). * test_expandtabs/upper/lower() in buffer_tests were only run on bytearray() and are redundant with string_tests
* Fix a couple of typos in code commentsMartin Panter2015-12-171-1/+1
|
* Issue #24284: The startswith and endswith methods of the str class no longerSerhiy Storchaka2015-05-311-0/+6
| | | | | return True when finding the empty string and the indexes are completely out of range.
* merge 3.4 (#22379)Benjamin Peterson2014-09-281-8/+6
|\
| * check that exception messages are not empty (#22379)Benjamin Peterson2014-09-281-8/+6
| | | | | | | | Patch by Yongzhi Pan.
* | Issue19995: passing a non-int to %o, %c, %x, or %X now raises an exceptionEthan Furman2014-03-191-2/+1
|/
* Issue #20532: Tests which use _testcapi now are marked as CPython only.Serhiy Storchaka2014-02-071-8/+15
|\
| * Issue #20532: Tests which use _testcapi now are marked as CPython only.Serhiy Storchaka2014-02-071-8/+15
| |
* | Catch deprecation warnings emitted when non-integers are formatted with %c, %oSerhiy Storchaka2014-02-061-1/+2
| | | | | | | | and %x (introduced in issue #19995).
* | Issue 19572: More silently skipped tests explicitly skipped.Zachary Ware2013-12-081-2/+2
|\ \ | |/
| * Issue 19572: More silently skipped tests explicitly skipped.Zachary Ware2013-12-081-2/+2
| |
* | #17806: Added keyword-argument support for "tabsize" to str/bytes.expandtabs().Ezio Melotti2013-11-161-7/+20
|/
* Remove duplicated tests.Ezio Melotti2013-04-211-21/+0
|
* Issue #15989: Fix several occurrences of integer overflowSerhiy Storchaka2013-01-191-0/+11
|\ | | | | | | | | | | when result of PyLong_AsLong() narrowed to int without checks. This is a backport of changesets 13e2e44db99d and 525407d89277.
| * Issue #15989: Fix several occurrences of integer overflowSerhiy Storchaka2013-01-191-0/+11
| | | | | | | | | | | | when result of PyLong_AsLong() narrowed to int without checks. This is a backport of changesets 13e2e44db99d and 525407d89277.
* | #16910: test_bytes, test_unicode, and test_userstring now work with unittest ↵Ezio Melotti2013-01-101-1/+1
| | | | | | | | test discovery. Patch by Zachary Ware.
* | merge 3.2 (#15801)Benjamin Peterson2012-08-281-0/+3
|\ \ | |/
| * use the stricter PyMapping_Check (closes #15801)Benjamin Peterson2012-08-281-0/+3
| |
* | Close #15534: Fix a typo in the fast search function of the string library ↵Victor Stinner2012-08-021-0/+8
| | | | | | | | | | | | (_s => s) Replace _s with ptr to avoid future confusion. Add also non regression tests.
* | Issue #14700: Fix two broken and undefined-behaviour-inducing overflow ↵Mark Dickinson2012-05-071-0/+4
| | | | | | | | checks in old-style string formatting. Thanks Serhiy Storchaka for report and original patch.
* | #14081: The sep and maxsplit parameter to str.split, bytes.split, and ↵Ezio Melotti2012-02-261-1/+23
| | | | | | | | bytearray.split may now be passed as keyword arguments.
* | use full unicode mappings for upper/lower/title case (#12736)Benjamin Peterson2012-01-111-1/+1
| | | | | | | | Also broaden the category of characters that count as lowercase/uppercase.
* | Issue #12170: The count(), find(), rfind(), index() and rindex() methodsAntoine Pitrou2011-10-201-5/+30
| | | | | | | | | | of bytes and bytearray objects now accept an integer between 0 and 255 as their first argument. Patch by Petri Lehtinen.
* | Issue #13012: Allow 'keepends' to be passed as a keyword argument in ↵Mark Dickinson2011-09-241-3/+11
|/ | | | str.splitlines, bytes.splitlines and bytearray.splitlines.
* #12266: Fix str.capitalize() to correctly uppercase/lowercase titlecased and ↵Ezio Melotti2011-08-151-0/+17
| | | | cased non-letter characters.
* Use non-deprecated method name.Ezio Melotti2011-04-201-7/+7
|
* MERGE: startswith and endswith don't accept None as slice index. Patch by ↵Jesus Cea2011-04-201-0/+57
|\ | | | | | | Torsten Becker. (closes #11828)
| * startswith and endswith don't accept None as slice index. Patch by Torsten ↵Jesus Cea2011-04-201-0/+57
| | | | | | | | Becker. (closes #11828)
| * Merged revisions 86596 via svnmerge fromEzio Melotti2010-11-211-11/+11
| | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r86596 | ezio.melotti | 2010-11-20 21:04:17 +0200 (Sat, 20 Nov 2010) | 1 line #9424: Replace deprecated assert* methods in the Python test suite. ........
| * Merged revisions 77731 via svnmerge fromEzio Melotti2010-01-241-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r77731 | ezio.melotti | 2010-01-24 22:59:24 +0200 (Sun, 24 Jan 2010) | 9 lines Merged revisions 77729 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r77729 | ezio.melotti | 2010-01-24 22:48:35 +0200 (Sun, 24 Jan 2010) | 1 line remove archaic functions from test_support ........ ................
* | #9424: Replace deprecated assert* methods in the Python test suite.Ezio Melotti2010-11-201-11/+11
| |