string: fix bug and add tests for string.count

pull/1461/head
Alvydas Vitkauskas 2019-08-03 23:24:03 +03:00 committed by Alexander Medvednikov
parent 93d27b0b9f
commit 331d6f98ee
2 changed files with 11 additions and 1 deletions

View File

@ -462,7 +462,7 @@ pub fn (s string) count(substr string) int {
mut n := 0
mut i := 0
for {
i := s.index_after(substr, i)
i = s.index_after(substr, i)
if i == -1 {
return n
}

View File

@ -338,3 +338,13 @@ fn test_bytes_to_string() {
bytes := [`h`, `e`, `l`, `l`, `o`]
assert string(bytes, 5) == 'hello'
}
fn test_count() {
assert ''.count('') == 0
assert ''.count('a') == 0
assert 'a'.count('') == 0
assert 'aa'.count('a') == 2
assert 'aa'.count('aa') == 1
assert 'aabbaa'.count('aa') == 2
assert 'bbaabb'.count('aa') == 1
}