64d7bc5acf
Review URL: https://chromiumcodereview.appspot.com//10248007 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@7101 260f80e4-7a28-3924-810f-c04153c831b5
34 lines
1.0 KiB
Dart
34 lines
1.0 KiB
Dart
// 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.
|
|
|
|
// Test that Object.dynamic returns the identical object.
|
|
|
|
main() {
|
|
// Primitives
|
|
var anInt = 5;
|
|
var aString = 'Hello';
|
|
var aBool = true;
|
|
var aDouble = 3.14159;
|
|
|
|
// Compounds
|
|
var aMap = {};
|
|
|
|
// The type should not change.
|
|
Expect.isTrue(dyn(anInt) is int, 'is int');
|
|
Expect.isTrue(dyn(aString) is String, 'is String');
|
|
Expect.isTrue(dyn(aBool) is bool, 'is bool');
|
|
Expect.isTrue(dyn(aMap) is Map, 'is Map');
|
|
|
|
// The object should be identical.
|
|
Expect.isTrue(eq(anInt, anInt.dynamic), 'anInt.dynamic');
|
|
Expect.isTrue(eq(aString, aString.dynamic), 'aString.dynamic');
|
|
Expect.isTrue(eq(aBool, aBool.dynamic), 'aBool.dynamic');
|
|
Expect.isTrue(eq(aDouble, aDouble.dynamic), 'aDouble.dynamic');
|
|
Expect.isTrue(eq(aMap, aMap.dynamic), 'aMap.dynamic');
|
|
}
|
|
|
|
dyn(x) => x.dynamic;
|
|
|
|
eq(a, b) => a === b;
|