notepad-plus-plus/scintilla/test
Christian Grasser feb454ad6f Update scintilla 5.3.4 and lexilla 5.2.4 with:
https://www.scintilla.org/scintilla534.zip

    Released 8 March 2023.
    Add multithreaded wrap to significantly improve performance of wrapping large files.
    More typesafe bindings of *Full APIs in ScintillaCall. Feature #1477.
    Fix overlapping of text with line end wrap marker. Bug #2378.
    Fix clipping of line end wrap symbol for SC_WRAPVISUALFLAGLOC_END_BY_TEXT.
    Where a multi-byte character contains multiple styles, display each byte as a representation. This makes it easier to see and fix lexers that change styles mid-character, commonly because they use fixed size buffers.
    Fix a potential crash with autocompletion list fill-ups where a SCN_CHARADDED handler retriggered an autocompletion list, but with no items that match the typed character.

lexilla523

    Released 8 March 2023.
    Add scripts/PromoteNew.bat script to promote .new files after checking.
    Makefile: Remove 1024-byte line length limit..
    Ruby: Add new lexical classes for % literals SCE_RB_STRING_W (%w non-interpolable string array), SCE_RB_STRING_I (%i non-interpolable symbol array), SCE_RB_STRING_QI (%I interpolable symbol array), and SCE_RB_STRING_QS (%s symbol). Issue #124.
    Ruby: Disambiguate %= which may be a quote or modulo assignment. Issue #124, Bug #1255, Bug #2182.
    Ruby: Fix additional fold level for single character in SCE_RB_STRING_QW. Issue #132.
    Ruby: Set SCE_RB_HERE_QQ for unquoted and double-quoted heredocs and SCE_RB_HERE_QX for backticks-quoted heredocs. Issue #134.
    Ruby: Recognise #{} inside SCE_RB_HERE_QQ and SCE_RB_HERE_QX. Issue #134.
    Ruby: Improve regex and heredoc recognition. Issue #136.
    Ruby: Highlight #@, #@@ and #$ style interpolation. Issue #140.
    Ruby: Fix folding for multiple heredocs started on one line. Fix folding when there is a space after heredoc opening delimiter. Issue #135.
    YAML: Remove 1024-byte line length limit.

https://www.scintilla.org/lexilla524.zip

    Released 13 March 2023.
    C++: Fix failure to recognize keywords containing upper case. Issue #149.
    GDScript: Support % and $ node paths. Issue #145, Pull request #146.

Close #13338
2023-03-13 21:06:09 +01:00
..
gi
unit Update scintilla 5.3.4 and lexilla 5.2.4 with: 2023-03-13 21:06:09 +01:00
MessageNumbers.py Upgrade Scintilla from 4.1.4 to 4.2.0 2019-07-22 13:08:41 +02:00
README Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
ScintillaCallable.py Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
XiteMenu.py
XiteWin.py Update to scintilla 5.3.1 and lexilla 5.2.0 2022-10-31 00:45:13 +01:00
performanceTests.py Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
simpleTests.py Update to Scintilla 5.3.3 and Lexilla 5.2.2 2023-02-12 17:11:57 +01:00
win32Tests.py Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
xite.py Upgrade Scintilla from v4.2.0 to v4.4.6 2021-02-21 19:14:40 +01:00

README

The test directory contains some unit and performance tests for Scintilla.

The tests can only be run on Windows using Python 2.7 or 3.x.
Python 2.7+ is required because the bytes string type and literals are available.
Scintilla must be built before running any tests.
Lexilla may be built before running tests but lexing tests will be skipped if Lexilla not available.

A test application for Windows only is in xite.py and this can be run to experiment:
pythonw xite.py

To run the basic tests:
python simpleTests.py

To check for performance regressions:
python performanceTests.py
While each test run will be different and the timer has only limited granularity, some results
from a 2 GHz Athlon with a DEBUG build are:
 0.187 testAddLine
. 0.203 testAddLineMiddle
. 0.171 testHuge
. 0.203 testHugeInserts
. 0.312 testHugeReplace
.