From 95a447de9c1c7e9b5dc6f560d41ad2a92ed799c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20H=C3=B6rmann?= Date: Sun, 21 Jul 2019 17:57:34 +0200 Subject: Tests for replacer (#2675) * Tests for Replacer: Replacer.Set and Replacer.Delete * update replacer test to new implementation * fix replacer: counted position wrong if placeholder was found * fix replacer: found placeholder again, if it was a non-existing one * test with spaces between the placeholders as this could have a different behaviour * Tests for Replacer.Map * Tests for Replacer.Set: check also for something like {l{test1} This should be replaced as {lTEST1REPLACEMENT * fix replacer: fix multiple occurrence of phOpen sign * Tests for Replacer: rewrite Set and ReplaceAll tests to use implementation not interface * Tests for Replacer: rewrite Delete test to use implementation not interface * Tests for Replacer: rewrite Map tests to use implementation not interface * Tests for Replacer: add test for NewReplacer * Tests for Replacer: add test for default replacements * Tests for Replacer: fixed and refactored tests * Tests for Replacer: moved default replacement tests to New-test as new should return a replace with provider which defines global replacements --- replacer.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'replacer.go') diff --git a/replacer.go b/replacer.go index e8a4f9b..d7beeab 100644 --- a/replacer.go +++ b/replacer.go @@ -115,12 +115,13 @@ func (r *replacer) ReplaceAll(input, empty string) string { } } if !found { + lastWriteCursor = i continue } // advance cursor to end of placeholder - i = end + 1 - lastWriteCursor = i + i = end + lastWriteCursor = i + 1 } // flush any unwritten remainder -- cgit v1.2.3