summaryrefslogtreecommitdiff
path: root/src/unit_tests.cc
AgeCommit message (Collapse)Author
2024-07-21Disable UnitTest fully in non KAK_DEBUG buildsMaxime Coste
The code was still compiled and stored in the release executable, this reduces the optimized binary size.
2020-03-20Remove posB from information given by the diff algorithmMaxime Coste
posB is always the sum of previous add len and previous keep len, so very easy to keep track of.
2020-03-20Remove uses of reverse_iterator in diff implementationMaxime Coste
2019-11-30Refactor diff to make allocating a diff vector optionalMaxime Coste
The diff interface now goes through a for_each_diff function that uses a callback for each found diff.
2017-07-18More refactoring of the diff code in order to make it cleanerMaxime Coste
2017-07-18Change diff Implementation to use end indices instead of lengthMaxime Coste
Having absolute begin and relative lenght was a bit strange to work with. Rename middle_snake to snake.
2015-05-24Small refactor in unit testsMaxime Coste
2015-05-22Move unit test functions in next to the code they are testingMaxime Coste
2015-05-18Fix bug in diff implementations (missing snake after d=1 change) and refactorMaxime Coste
2015-05-14Fix bugs in diff implementationMaxime Coste
2015-05-12Add initial diff implementation based Eugene W. Myers' algorithmMaxime Coste
2015-04-22Add format_to allowing formating to an existing bufferMaxime Coste
2015-03-30Use custom implementation rather the sscanf in str_to_intMaxime Coste
2015-03-30Add a format function for printf like formattingMaxime Coste
2015-03-12Remove unused StaticStringMaxime Coste
2015-02-28Add StaticStringStorage for storing string literalsMaxime Coste
2015-01-31Rewrite line modifications, hopefully with easier to comprehend codeMaxime Coste
2015-01-22Avoid temporary strings on buffer load/reloadMaxime Coste
Pass directly a Vector<ref_ptr<StringStorage>> to the buffer
2015-01-12replace all std::vector with VectorMaxime Coste
2015-01-12Yet more trackingMaxime Coste
2015-01-11Track some more memoryMaxime Coste
2015-01-09Track String memory allocationsMaxime Coste
2014-12-23Code refactoring in WordDBMaxime Coste
2014-10-19Add a split function that does not take an escape and returns StringViewsMaxime Coste
When an escape character is not present, split can just return sub strings of the parameter, so we can avoid duplicating the original string data.
2014-10-07WordDB: Use interned strings pointing directly into the buffer line dataMaxime Coste
2014-10-01Add support for interned stringsMaxime Coste
Use interned strings for Modification contents and word database. Interned strings are guaranteed not to move in memory and are reference counted.
2014-07-05utf8: use end of sequence iterators for more securityMaxime Coste
2014-05-26Remove ModificationMaxime Coste
Lets consider that as a failed experiment. You see, I learned something today, for a complicated problem, it is important to keep as much knowledge of the exact problem as possible. the Modification approach failed because it tried to solve the general problem, which is quite complex. The new approach, which keeps the knowledge that selections are sorted is much simpler and faster (see f49bec802157fc592bc6e35755807c6c3a531e78).
2014-05-24Remove use of 'offset' in buffer iterators, lines are just StringMaxime Coste
No need to maintain line offsets anymore.
2014-05-24Still more fixes for ModificationMaxime Coste
2014-05-24Fix ModificationMaxime Coste
2014-05-24Fix, cleanup and refactor compute_modificationsMaxime Coste
2014-05-21Add initial (and probably buggy) compute_modifications codeMaxime Coste
compute_modifications compiles a list of buffer change into a list of Modifications that can be used for updating BufferCoord
2014-05-07Refactor LineAndColumn coordinatesMaxime Coste
BufferCoord -> ByteCoord DisplayCoord -> CharCoord Moved their definition along with LineAndColumn into coord.hh
2014-04-22Preserve current word in word completion if found elsewhereMaxime Coste
If occurence count in the buffer if greater that one, do not remove it from the matches.
2014-01-16Word completion use a WordDB stored as a buffer value.Maxime Coste
2013-12-20Get rid of Editor for goodMaxime Coste
ClientManager now stores only the free windows, clients take ownership of its own.
2013-12-15Move insert and erase to normal.cc, and move edition management to contextMaxime Coste
2013-12-14Remove Editor::select methods, add a non-const selections getterMaxime Coste
2013-12-14Remove Editor::main_selection(|index), directly use the SelectionList methodMaxime Coste
2013-12-14Remove simple selectors, always go through a multi selectorMaxime Coste
2013-11-14indent cleanup, correct erroneous 3 spaces indentMaxime Coste
2013-11-04Remove IncrementalInserter and move it's code to InputModes::InsertMaxime Coste
2013-09-23add subsequence_match(str, subseq) utility functionMaxime Coste
2013-09-23Add prefix_match function and use it instead of adhoc codeMaxime Coste
2013-07-30fix insert mode erase utf-8 handling, add unit testMaxime Coste
2013-07-24string escaping support functionsMaxime Coste
the split function now takes an additional escape parameter and does not split on separators that have the escaper before it. An utility escape function that adds escape before separators is also added.
2013-06-06add an UndoGroupOptimizer testMaxime Coste
2013-06-06Buffer: insert and erase go back to taking iterators, and return iteratorsMaxime Coste
2013-06-06remove BufferIterator conversion to/from BufferCoordMaxime Coste