diff options
author | hluk <hluk@email.cz> | 2013-12-01 15:09:04 +0100 |
---|---|---|
committer | hjk <hjk121@nokiamail.com> | 2013-12-03 11:40:51 +0100 |
commit | b1a714ed44501dd972b7f16e9a0321694832514a (patch) | |
tree | b1224b1ebcc46ff2d344a613d5fb20bd6abc0d1f /src/plugins/fakevim/fakevim_test.cpp | |
parent | 4fd4f5d9fcc4b6ea8b1d554fe013a994ef46b3ce (diff) | |
download | qt-creator-b1a714ed44501dd972b7f16e9a0321694832514a.tar.gz |
FakeVim: Fix infinite loop when replacing empty text
Change-Id: Ie4ba6420889b0a6a5712b43a11f8366aa9a30edc
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Diffstat (limited to 'src/plugins/fakevim/fakevim_test.cpp')
-rw-r--r-- | src/plugins/fakevim/fakevim_test.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/plugins/fakevim/fakevim_test.cpp b/src/plugins/fakevim/fakevim_test.cpp index 6b9144da5d..c87685e1ea 100644 --- a/src/plugins/fakevim/fakevim_test.cpp +++ b/src/plugins/fakevim/fakevim_test.cpp @@ -2206,6 +2206,17 @@ void FakeVimPlugin::test_vim_substitute() COMMAND("'<,'>s/^/*", "abc" N "**def" N X "**ghi" N "jkl"); KEYS("u", "abc" N X "*def" N "*ghi" N "jkl"); KEYS("gv:s/^/+<CR>", "abc" N "+*def" N X "+*ghi" N "jkl"); + + // replace empty string + data.setText("abc"); + COMMAND("s//--/g", "--a--b--c"); + + // remove characters + data.setText("abc def"); + COMMAND("s/[abde]//g", "c f"); + COMMAND("undo | s/[bcef]//g", "a d"); + COMMAND("undo | s/\\w//g", " "); + COMMAND("undo | s/f\\|$/-/g", "abc de-"); } void FakeVimPlugin::test_vim_ex_yank() |