--- a/RegressionTests__StringTests.st Tue Jul 09 14:30:19 2019 +0200
+++ b/RegressionTests__StringTests.st Tue Jul 09 18:53:03 2019 +0200
@@ -1665,6 +1665,101 @@
"Created: / 02-04-2019 / 11:00:43 / Claus Gittinger"
!
+test82c_expanding
+ | rslt |
+
+ rslt := '%1-%2-%3'
+ expandPlaceholders:$$
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:false
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = '%1-%2-%3').
+
+ rslt := '%1-%2-%3'
+ expandPlaceholders:$%
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:false
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = '10-20-30').
+
+ rslt := '%1-%2-%3'
+ expandPlaceholders:$%
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:true
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = '%1-%2-%3').
+
+ rslt := '%1%<cr>%2%<cr>%3'
+ expandPlaceholders:$%
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:true
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = c'%1\n%2\n%3').
+
+ rslt := '%1%<cr>%2%<cr>%3'
+ expandPlaceholders:$%
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:false
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = c'10\n20\n30').
+
+ rslt := '%1%<cr>%2%<cr>%3'
+ expandPlaceholders:$%
+ with:{10 . 20 . 30}
+ ignoreNumericEscapes:false
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:true
+ requireParentheses:false.
+ self assert:(rslt = '10%<cr>20%<cr>30').
+
+ rslt := '%1 %(a) %(1) %(b)'
+ expandPlaceholders:$%
+ with:(Dictionary withKeysAndValues:{ 'a' . 'AAA' . 'b' . 'BBB' })
+ ignoreNumericEscapes:false
+ ignoreNonNumericEscapes:true
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = ' %(a) %(b)').
+
+ rslt := '%1 %(a) %(1) %(b)'
+ expandPlaceholders:$%
+ with:(Dictionary withKeysAndValues:{ 'a' . 'AAA' . 'b' . 'BBB' })
+ ignoreNumericEscapes:true
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = '%1 AAA %(1) BBB').
+
+ rslt := '%1 %a %(1) %b'
+ expandPlaceholders:$%
+ with:(Dictionary withKeysAndValues:{ 'a' . 'AAA' . 'b' . 'BBB' })
+ ignoreNumericEscapes:true
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:false.
+ self assert:(rslt = '%1 AAA %(1) BBB').
+
+
+ rslt := '%1 %aa %(1) %bb'
+ expandPlaceholders:$%
+ with:(Dictionary withKeysAndValues:{ 'a' . 'AAA' . 'b' . 'BBB' })
+ ignoreNumericEscapes:true
+ ignoreNonNumericEscapes:false
+ ignoreSpecialEscapes:false
+ requireParentheses:true.
+ self assert:(rslt = '%1 AAAa %(1) BBBb').
+!
+
test83_padding
| rslt |