builtin: add string.camel_to_snake/0 and string.snake_to_camel/0 methods (#21679)

This commit is contained in:
kbkpbot 2024-06-16 02:02:44 +08:00 committed by GitHub
parent 3ad77b2551
commit df1e4f1246
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 108 additions and 0 deletions

View file

@ -1521,3 +1521,17 @@ fn test_contains_byte() {
assert 'abc abca'.contains_u8(` `)
assert !'abc abca'.contains_u8(`A`)
}
fn test_camel_to_snake() {
assert 'Abcd'.camel_to_snake() == 'abcd'
assert 'aaBB'.camel_to_snake() == 'aa_bb'
assert 'BBaa'.camel_to_snake() == 'b_baa'
assert 'aa_BB'.camel_to_snake() == 'aa_bb'
}
fn test_snake_to_camel() {
assert 'abcd'.snake_to_camel() == 'Abcd'
assert 'ab_cd'.snake_to_camel() == 'AbCd'
assert '_abcd'.snake_to_camel() == 'Abcd'
assert '_abcd_'.snake_to_camel() == 'Abcd'
}