30 lines
977 B
V
30 lines
977 B
V
|
|
||
|
fn test_excape_dollar_in_string() {
|
||
|
i := 42
|
||
|
|
||
|
assert '($i)' == '(42)'
|
||
|
assert '(\$i)'.contains('i') && !'(\$i)'.contains('42')
|
||
|
assert !'(\\$i)'.contains('i') && '(\\$i)'.contains('42') && '(\\$i)'.contains('\\')
|
||
|
assert '(\\\$i)'.contains('i') && !'(\\\$i)'.contains('42') && '(\\$i)'.contains('\\')
|
||
|
assert !'(\\\\$i)'.contains('i') && '(\\\\$i)'.contains('42') && '(\\\\$i)'.contains('\\\\')
|
||
|
|
||
|
assert '(${i})' == '(42)'
|
||
|
assert '(\${i})'.contains('i') && !'(\${i})'.contains('42')
|
||
|
assert !'(\\${i})'.contains('i') && '(\\${i})'.contains('42') && '(\\${i})'.contains('\\')
|
||
|
assert '(\\\${i})'.contains('i') && !'(\\\${i})'.contains('42') && '(\\${i})'.contains('\\')
|
||
|
assert !'(\\\\${i})'.contains('i') && '(\\\\${i})'.contains('42') && '(\\\\${i})'.contains('\\\\')
|
||
|
assert i==42
|
||
|
}
|
||
|
|
||
|
fn test_implicit_str() {
|
||
|
i := 42
|
||
|
assert 'int $i' == 'int 42'
|
||
|
assert '$i' == '42'
|
||
|
|
||
|
check := '$i' == '42'
|
||
|
assert check
|
||
|
|
||
|
text := '$i' + '42'
|
||
|
assert text == '4242'
|
||
|
}
|