| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| /** |
| * @assertion An interpolated string 's1${e}s2' is equivalent to the |
| * concatenation of the strings 's1', e.toString() and 's2'. |
| * @description Checks that an interpolated string ‘s1${e}s2’ is equivalent to |
| * the concatenation of the strings 's1', e.toString() and 's2'. |
| * @author msyabro |
| */ |
| import '../../../../Utils/expect.dart'; |
| |
| func() {return "str";} |
| |
| main() { |
| StringBuffer buffer = new StringBuffer(); |
| |
| buffer.write('List '); |
| buffer.write([]); |
| Expect.equals(buffer.toString(), 'List ${[]}'); |
| |
| buffer.clear(); |
| buffer.write('Number '); |
| buffer.write(1 + 1); |
| Expect.equals(buffer.toString(), 'Number ${1 + 1}'); |
| |
| buffer.clear(); |
| buffer.write('Result is '); |
| buffer.write(func()); |
| buffer.write(' string'); |
| Expect.equals(buffer.toString(), 'Result is ${func()} string'); |
| |
| buffer.clear(); |
| buffer.write('!false is '); |
| buffer.write(!false); |
| Expect.equals(buffer.toString(), '!false is ${!false}'); |
| |
| buffer.clear(); |
| buffer.write(2); |
| buffer.write(' is greater than '); |
| buffer.write(1); |
| Expect.equals(buffer.toString(), '${2} is greater than ${1}'); |
| |
| buffer.clear(); |
| buffer.write(3 - 2); |
| buffer.write(1 * 2); |
| Expect.equals(buffer.toString(), '${3 - 2}${1 * 2}'); |
| |
| buffer.clear(); |
| buffer.write("a"); |
| buffer.write(' b c'); |
| Expect.equals(buffer.toString(), '${"a"} b c'); |
| |
| buffer.clear(); |
| buffer.write(1); |
| buffer.write(2); |
| Expect.equals(buffer.toString(), '${'${1}' '${2}'}'); |
| } |