blob: 80321e81c3783e5ff7deea135ea86140da5bff72 [file] [log] [blame]
// 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.
import "package:expect/expect.dart";
main() {
// Integer literals.
Expect.isTrue(2 is int);
Expect.equals(2, 2 as int);
Expect.isTrue(-2 is int);
Expect.equals(-2, -2 as int);
Expect.isTrue(0x10 is int);
Expect.isTrue(-0x10 is int);
// "a" will be part of hex literal, the following "s" is an error.
0x10as int; //# 01: syntax error
0x; //# 04: syntax error
// Double literals.
Expect.isTrue(2.0 is double);
Expect.equals(2.0, 2.0 as double);
Expect.isTrue(-2.0 is double);
Expect.equals(-2.0, -2.0 as double);
Expect.isTrue(.2 is double);
Expect.equals(0.2, .2 as double);
Expect.isTrue(1e2 is double);
Expect.equals(1e2, 1e2 as double);
Expect.isTrue(1e-2 is double);
Expect.equals(1e-2, 1e-2 as double);
Expect.isTrue(1e+2 is double);
Expect.equals(1e+2, 1e+2 as double);
Expect.throwsNoSuchMethodError(() => 1.e+2); //# 05: compile-time error
1d; //# 06: syntax error
1D; //# 07: syntax error
Expect.throwsNoSuchMethodError(() => 1.d+2); //# 08: compile-time error
Expect.throwsNoSuchMethodError(() => 1.D+2); //# 09: compile-time error
1.1d; //# 10: syntax error
1.1D; //# 11: syntax error
1e; //# 02: syntax error
1x; //# 03: syntax error
}