blob: 332c7e1363e51010d814153118b79060fefb719a [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.
/// @assertion int parse(String source, {int radix, int onError(String source)})
/// Parse source as a, possibly signed, integer literal and return its value.
///
/// The source must be a non-empty sequence of base-radix digits, optionally
/// prefixed with a minus or plus sign ('-' or '+').
/// ...
/// @description Checks that correct string can be converted to int.
/// @author msyabro
import "../../../Utils/expect.dart";
main() {
Expect.isTrue(int.parse("1") == 1);
Expect.isTrue(int.parse("01") == 1);
Expect.isTrue(int.parse("-1") == -1);
Expect.isTrue(int.parse("+1") == 1);
Expect.isTrue(int.parse("0") == 0);
Expect.isTrue(int.parse("-0") == 0);
Expect.isTrue(int.parse("10") == 10);
Expect.isTrue(int.parse("0x10") == 16);
Expect.isTrue(int.parse("0xA") == 10);
Expect.isTrue(int.parse("0Xff") == 255);
Expect.isTrue(int.parse(" 12") == 12);
Expect.isTrue(int.parse("12 ") == 12);
Expect.isTrue(int.parse("\n\t 12 ") == 12);
Expect.isTrue(int.parse("9007199254740991") == 9007199254740991);
Expect.isTrue(int.parse("-9007199254740991") == -9007199254740991);
}