Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(833)

Unified Diff: tests/language/src/TypeVMTest.dart

Issue 10248007: test rename overhaul: step 8 - language tests (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests/language/src/TypeVMTest.dart
diff --git a/tests/language/src/TypeVMTest.dart b/tests/language/src/TypeVMTest.dart
deleted file mode 100644
index 5caf5bd7f9010a3819159bf6c6b27f1e33efd9d8..0000000000000000000000000000000000000000
--- a/tests/language/src/TypeVMTest.dart
+++ /dev/null
@@ -1,479 +0,0 @@
-// 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.
-// VMOptions=--enable_type_checks --enable_asserts
-//
-// Dart test program testing type checks.
-
-class TypeTest {
- static test() {
- int result = 0;
- try {
- int i = "hello"; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("int", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("i", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(12, error.line);
- Expect.equals(15, error.column);
- }
- return result;
- }
-
- static testSideEffect() {
- int result = 0;
- int index() {
- result++;
- return 0;
- }
- try {
- List<int> a = new List<int>(1);
- a[0] = 0;
- a[index()]++; // Type check succeeds, but does not create side effects.
- assert(a[0] == 1);
- } catch (TypeError error) {
- result = 100;
- }
- return result;
- }
-
- static testArgument() {
- int result = 0;
- int f(int i) {
- return i;
- }
- try {
- int i = f("hello"); // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("int", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("i", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(49, error.line);
- Expect.equals(15, error.column);
- }
- return result;
- }
-
- static testReturn() {
- int result = 0;
- int f(String s) {
- return s;
- }
- try {
- int i = f("hello"); // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("int", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("function result", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(74, error.line);
- Expect.equals(14, error.column);
- }
- return result;
- }
-
- static int field;
- static testField() {
- int result = 0;
- try {
- field = "hello"; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("int", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("field", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(99, error.line);
- Expect.equals(15, error.column);
- }
- return result;
- }
-
- static testAnyFunction() {
- int result = 0;
- Function anyFunction;
- f() { };
- anyFunction = f; // No error.
- try {
- int i = f; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("int", error.dstType);
- Expect.equals("() => Dynamic", error.srcType);
- Expect.equals("i", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(123, error.line);
- Expect.equals(15, error.column);
- }
- return result;
- }
-
- static testVoidFunction() {
- int result = 0;
- Function anyFunction;
- void acceptVoidFunObj(void voidFunObj(Object obj)) { };
- void acceptObjFunObj(Object objFunObj(Object obj)) { };
- void voidFunObj(Object obj) { };
- Object objFunObj(Object obj) { return obj; };
- anyFunction = voidFunObj; // No error.
- anyFunction = objFunObj; // No error.
- acceptVoidFunObj(voidFunObj);
- acceptVoidFunObj(objFunObj);
- acceptObjFunObj(objFunObj);
- try {
- acceptObjFunObj(voidFunObj); // Throws a TypeError.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("(Object) => Object", error.dstType);
- Expect.equals("(Object) => void", error.srcType);
- Expect.equals("objFunObj", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(145, error.line);
- Expect.equals(33, error.column);
- }
- return result;
- }
-
- static testFunctionNum() {
- int result = 0;
- Function anyFunction;
- void acceptFunNum(void funNum(num num)) { };
- void funObj(Object obj) { };
- void funNum(num num) { };
- void funInt(int i) { };
- void funString(String s) { };
- anyFunction = funObj; // No error.
- anyFunction = funNum; // No error.
- anyFunction = funInt; // No error.
- anyFunction = funString; // No error.
- acceptFunNum(funObj); // No error.
- acceptFunNum(funNum); // No error.
- acceptFunNum(funInt); // No error.
- try {
- acceptFunNum(funString); // Throws an error.
- } catch (TypeError error) {
- result = 1;
- Expect.equals("(num) => void", error.dstType);
- Expect.equals("(String) => void", error.srcType);
- Expect.equals("funNum", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(175, error.line);
- Expect.equals(28, error.column);
- }
- return result;
- }
-
- static testBoolCheck() {
- int result = 0;
- try {
- bool i = !"hello"; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(209, error.line);
- Expect.equals(17, error.column);
- }
- try {
- while ("hello") {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(225, error.line);
- Expect.equals(14, error.column);
- }
- try {
- do {} while ("hello"); // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(241, error.line);
- Expect.equals(20, error.column);
- }
- try {
- for (;"hello";) {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(257, error.line);
- Expect.equals(13, error.column);
- }
- try {
- int i = "hello" ? 1 : 0; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(273, error.line);
- Expect.equals(15, error.column);
- }
- try {
- if ("hello") {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(289, error.line);
- Expect.equals(11, error.column);
- }
- try {
- if ("hello" || false) {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(305, error.line);
- Expect.equals(11, error.column);
- }
- try {
- if (false || "hello") {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("OneByteString", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(321, error.line);
- Expect.equals(20, error.column);
- }
- try {
- if (null) {}; // Throws a TypeError if type checks are enabled.
- } catch (TypeError error) {
- result++;
- Expect.equals("bool", error.dstType);
- Expect.equals("Null", error.srcType);
- Expect.equals("boolean expression", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(337, error.line);
- Expect.equals(11, error.column);
- }
- return result;
- }
-
-
- static int testFactory() {
- int result = 0;
- try {
- var x = new C();
- } catch (TypeError error) {
- result++;
- Expect.equals("C", error.dstType);
- Expect.equals("int", error.srcType);
- Expect.equals("function result", error.dstName);
- int pos = error.url.lastIndexOf("/", error.url.length);
- if (pos == -1) {
- pos = error.url.lastIndexOf("\\", error.url.length);
- }
- String subs = error.url.substring(pos + 1, error.url.length);
- Expect.equals("TypeVMTest.dart", subs);
- Expect.equals(472, error.line);
- Expect.equals(12, error.column);
- }
- return result;
- }
-
- static int testListAssigment() {
- int result = 0;
- {
- var a = new List(5);
- List a0 = a;
- List<Object> ao = a;
- List<int> ai = a;
- List<num> an = a;
- List<String> as = a;
- }
- {
- var a = new List<Object>(5);
- List a0 = a;
- List<Object> ao = a;
- try {
- List<int> ai = a;
- } catch (TypeError error) {
- result++;
- }
- try {
- List<num> an = a;
- } catch (TypeError error) {
- result++;
- }
- try {
- List<String> as = a;
- } catch (TypeError error) {
- result++;
- }
- }
- {
- var a = new List<int>(5);
- List a0 = a;
- List<Object> ao = a;
- List<int> ai = a;
- List<num> an = a;
- try {
- List<String> as = a;
- } catch (TypeError error) {
- result++;
- }
- }
- {
- var a = new List<num>(5);
- List a0 = a;
- List<Object> ao = a;
- try {
- List<int> ai = a;
- } catch (TypeError error) {
- result++;
- }
- List<num> an = a;
- try {
- List<String> as = a;
- } catch (TypeError error) {
- result++;
- }
- }
- {
- var a = new List<String>(5);
- List a0 = a;
- List<Object> ao = a;
- try {
- List<int> ai = a;
- } catch (TypeError error) {
- result++;
- }
- try {
- List<num> an = a;
- } catch (TypeError error) {
- result++;
- }
- List<String> as = a;
- }
- return result;
- }
-
- static testMain() {
- Expect.equals(1, test());
- Expect.equals(1, testSideEffect());
- Expect.equals(1, testArgument());
- Expect.equals(1, testReturn());
- Expect.equals(1, testField());
- Expect.equals(1, testAnyFunction());
- Expect.equals(1, testVoidFunction());
- Expect.equals(1, testFunctionNum());
- Expect.equals(9, testBoolCheck());
- Expect.equals(1, testFactory());
- Expect.equals(8, testListAssigment());
- }
-}
-
-
-class C {
- factory C() {
- return 1; // Implicit result type is 'C', not int.
- }
-}
-
-
-main() {
- TypeTest.testMain();
-}
« no previous file with comments | « tests/language/src/TypePropagationInForUpdateTest.dart ('k') | tests/language/src/TypeVariableBounds2Test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698