Chromium Code Reviews| Index: tests/language/src/AdjacentConstStringLiteralsTest.dart |
| =================================================================== |
| --- tests/language/src/AdjacentConstStringLiteralsTest.dart (revision 0) |
| +++ tests/language/src/AdjacentConstStringLiteralsTest.dart (revision 0) |
| @@ -0,0 +1,96 @@ |
| +// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
|
zundel
2012/03/13 00:55:30
date
|
| +// 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. |
| + |
| + |
| +class Conster { |
| + const Conster(this.value); |
| + |
| + final value; |
| + |
| + toString() { |
|
kasperl
2012/03/13 08:32:23
=>
|
| + return value.toString(); |
| + } |
| +} |
| + |
| +main() { |
| + testEmpty(); |
| + testInterpolation(); |
| + testMultiline(); |
| +} |
| + |
| +testEmpty() { |
| + Expect.equals("", (const Conster("" "" "")).toString()); |
| + Expect.equals("", (const Conster("" '' "")).toString()); |
| + Expect.equals("", (const Conster("" "" @"")).toString()); |
| + |
| + Expect.equals("a", (const Conster("a" "")).toString()); |
| + Expect.equals("a", (const Conster("a" '')).toString()); |
| + Expect.equals("a", (const Conster("a" @'')).toString()); |
| + |
| + Expect.equals("b", (const Conster('b' "")).toString()); |
| + Expect.equals("b", (const Conster('b' '')).toString()); |
| + Expect.equals("b", (const Conster('b' @'')).toString()); |
| + |
| + Expect.equals("c", (const Conster(@'c' "")).toString()); |
| + Expect.equals("c", (const Conster(@'c' '')).toString()); |
| + Expect.equals("c", (const Conster(@'c' @'')).toString()); |
| + |
| + Expect.equals("a", (const Conster("" "a")).toString()); |
| + Expect.equals("a", (const Conster("" 'a')).toString()); |
| + Expect.equals("a", (const Conster("" @'a')).toString()); |
| + |
| + Expect.equals("b", (const Conster('' "b")).toString()); |
| + Expect.equals("b", (const Conster('' 'b')).toString()); |
| + Expect.equals("b", (const Conster('' @'b')).toString()); |
| + |
| + Expect.equals("c", (const Conster(@'' "c")).toString()); |
| + Expect.equals("c", (const Conster(@'' 'c')).toString()); |
| + Expect.equals("c", (const Conster(@'' @'c')).toString()); |
| +} |
| + |
| +final s = "a"; |
| + |
| +testInterpolation() { |
| + Expect.equals(@"ab", (const Conster("$s" "b")).toString()); |
| + Expect.equals(@"ab", (const Conster('$s' "b")).toString()); |
| + Expect.equals(@"$sb", (const Conster(@'$s' "b")).toString()); |
| + |
| + Expect.equals(@"-a-b", (const Conster("-$s-" "b")).toString()); |
| + Expect.equals(@"-a-b", (const Conster('-$s-' "b")).toString()); |
| + Expect.equals(@"-$s-b", (const Conster(@'-$s-' "b")).toString()); |
| + |
| + Expect.equals(@"ba", (const Conster('b' "$s")).toString()); |
| + Expect.equals(@"ba", (const Conster('b' '$s')).toString()); |
| + Expect.equals(@"b$s", (const Conster('b' @'$s')).toString()); |
| + |
| + Expect.equals(@"b-a-", (const Conster('b' "-$s-")).toString()); |
| + Expect.equals(@"b-a-", (const Conster('b' '-$s-')).toString()); |
| + Expect.equals(@"b-$s-", (const Conster('b' @'-$s-')).toString()); |
| +} |
| + |
| +testMultiline() { |
| + Expect.equals("abe", |
| + (const Conster("a" |
| + "b" |
| + "e")).toString()); |
| + Expect.equals("a b e", |
| + (const Conster("a " |
| + "b " |
| + "e")).toString()); |
| + Expect.equals("a b e", |
| + (const Conster("a" |
| + " b" |
| + " e")).toString()); |
| + |
| + Expect.equals("abe", (const Conster(""" |
| +a""" "b" "e")).toString()); |
| + Expect.equals("a b e", (const Conster(""" |
| +a""" " b" " e")).toString()); |
| + |
| + Expect.equals("abe", (const Conster(""" |
| +a""" """ |
| +b""" """ |
| +e""")).toString()); |
| +} |
| + |