8fd6d0aafd
Committed: https://code.google.com/p/dart/source/detail?r=19755 Reverted: http://code.google.com/p/dart/source/detail?r=19756 Review URL: https://codereview.chromium.org//12212016 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20996 260f80e4-7a28-3924-810f-c04153c831b5
99 lines
3.0 KiB
Dart
99 lines
3.0 KiB
Dart
// Copyright (c) 2012, 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.
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
|
|
class Conster {
|
|
const Conster(this.value);
|
|
|
|
final value;
|
|
|
|
toString() {
|
|
return value.toString();
|
|
}
|
|
}
|
|
|
|
main() {
|
|
testEmpty();
|
|
testInterpolation();
|
|
testMultiline();
|
|
}
|
|
|
|
testEmpty() {
|
|
Expect.equals("", (const Conster("" "" "")).toString());
|
|
Expect.equals("", (const Conster("" '' "")).toString());
|
|
Expect.equals("", (const Conster("" "" r"")).toString());
|
|
|
|
Expect.equals("a", (const Conster("a" "")).toString());
|
|
Expect.equals("a", (const Conster("a" '')).toString());
|
|
Expect.equals("a", (const Conster("a" r'')).toString());
|
|
|
|
Expect.equals("b", (const Conster('b' "")).toString());
|
|
Expect.equals("b", (const Conster('b' '')).toString());
|
|
Expect.equals("b", (const Conster('b' r'')).toString());
|
|
|
|
Expect.equals("c", (const Conster(r'c' "")).toString());
|
|
Expect.equals("c", (const Conster(r'c' '')).toString());
|
|
Expect.equals("c", (const Conster(r'c' r'')).toString());
|
|
|
|
Expect.equals("a", (const Conster("" "a")).toString());
|
|
Expect.equals("a", (const Conster("" 'a')).toString());
|
|
Expect.equals("a", (const Conster("" r'a')).toString());
|
|
|
|
Expect.equals("b", (const Conster('' "b")).toString());
|
|
Expect.equals("b", (const Conster('' 'b')).toString());
|
|
Expect.equals("b", (const Conster('' r'b')).toString());
|
|
|
|
Expect.equals("c", (const Conster(r'' "c")).toString());
|
|
Expect.equals("c", (const Conster(r'' 'c')).toString());
|
|
Expect.equals("c", (const Conster(r'' r'c')).toString());
|
|
}
|
|
|
|
const s = "a";
|
|
|
|
testInterpolation() {
|
|
Expect.equals(r"ab", (const Conster("$s" "b")).toString());
|
|
Expect.equals(r"ab", (const Conster('$s' "b")).toString());
|
|
Expect.equals(r"$sb", (const Conster(r'$s' "b")).toString());
|
|
|
|
Expect.equals(r"-a-b", (const Conster("-$s-" "b")).toString());
|
|
Expect.equals(r"-a-b", (const Conster('-$s-' "b")).toString());
|
|
Expect.equals(r"-$s-b", (const Conster(r'-$s-' "b")).toString());
|
|
|
|
Expect.equals(r"ba", (const Conster('b' "$s")).toString());
|
|
Expect.equals(r"ba", (const Conster('b' '$s')).toString());
|
|
Expect.equals(r"b$s", (const Conster('b' r'$s')).toString());
|
|
|
|
Expect.equals(r"b-a-", (const Conster('b' "-$s-")).toString());
|
|
Expect.equals(r"b-a-", (const Conster('b' '-$s-')).toString());
|
|
Expect.equals(r"b-$s-", (const Conster('b' r'-$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());
|
|
}
|
|
|