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

Side by Side Diff: runtime/vm/snapshot_test.cc

Issue 2666133002: Added new type of unit test, RAW_UNIT_TEST_CASE, which is used for tests that can be flaky if run w… (Closed)
Patch Set: Fixed name of UNIT_TEST_CASE macro Created 3 years, 10 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 unified diff | Download patch
« no previous file with comments | « runtime/vm/os_test.cc ('k') | runtime/vm/stack_frame_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "platform/globals.h" 5 #include "platform/globals.h"
6 6
7 #include "include/dart_tools_api.h" 7 #include "include/dart_tools_api.h"
8 #include "platform/assert.h" 8 #include "platform/assert.h"
9 #include "vm/class_finalizer.h" 9 #include "vm/class_finalizer.h"
10 #include "vm/clustered_snapshot.h" 10 #include "vm/clustered_snapshot.h"
(...skipping 984 matching lines...) Expand 10 before | Expand all | Expand 10 after
995 // Check if we are able to generate the source from the token stream. 995 // Check if we are able to generate the source from the token stream.
996 // Rescan this source and compare the token stream to see if they are 996 // Rescan this source and compare the token stream to see if they are
997 // the same. 997 // the same.
998 GenerateSourceAndCheck(serialized_script); 998 GenerateSourceAndCheck(serialized_script);
999 999
1000 free(buffer); 1000 free(buffer);
1001 } 1001 }
1002 1002
1003 1003
1004 #if !defined(PRODUCT) // Uses deferred loading. 1004 #if !defined(PRODUCT) // Uses deferred loading.
1005 UNIT_TEST_CASE(CanonicalizationInScriptSnapshots) { 1005 VM_UNIT_TEST_CASE(CanonicalizationInScriptSnapshots) {
1006 const char* kScriptChars = 1006 const char* kScriptChars =
1007 "\n" 1007 "\n"
1008 "import 'dart:mirrors';" 1008 "import 'dart:mirrors';"
1009 "import 'dart:isolate';" 1009 "import 'dart:isolate';"
1010 "void main() {" 1010 "void main() {"
1011 " if (reflectClass(MyException).superclass.reflectedType != " 1011 " if (reflectClass(MyException).superclass.reflectedType != "
1012 " IsolateSpawnException) {" 1012 " IsolateSpawnException) {"
1013 " throw new Exception('Canonicalization failure');" 1013 " throw new Exception('Canonicalization failure');"
1014 " }" 1014 " }"
1015 " if (reflectClass(IsolateSpawnException).reflectedType != " 1015 " if (reflectClass(IsolateSpawnException).reflectedType != "
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
1114 String& uri = String::Handle(); 1114 String& uri = String::Handle();
1115 for (intptr_t i = 0; i < lib_scripts.Length(); i++) { 1115 for (intptr_t i = 0; i < lib_scripts.Length(); i++) {
1116 script ^= lib_scripts.At(i); 1116 script ^= lib_scripts.At(i);
1117 EXPECT(!script.IsNull()); 1117 EXPECT(!script.IsNull());
1118 uri = script.url(); 1118 uri = script.url();
1119 OS::Print("Generating source for part: %s\n", uri.ToCString()); 1119 OS::Print("Generating source for part: %s\n", uri.ToCString());
1120 GenerateSourceAndCheck(script); 1120 GenerateSourceAndCheck(script);
1121 } 1121 }
1122 } 1122 }
1123 1123
1124 VM_TEST_CASE(GenerateSource) { 1124 ISOLATE_UNIT_TEST_CASE(GenerateSource) {
1125 Zone* zone = thread->zone(); 1125 Zone* zone = thread->zone();
1126 Isolate* isolate = thread->isolate(); 1126 Isolate* isolate = thread->isolate();
1127 const GrowableObjectArray& libs = 1127 const GrowableObjectArray& libs =
1128 GrowableObjectArray::Handle(zone, isolate->object_store()->libraries()); 1128 GrowableObjectArray::Handle(zone, isolate->object_store()->libraries());
1129 Library& lib = Library::Handle(); 1129 Library& lib = Library::Handle();
1130 String& uri = String::Handle(); 1130 String& uri = String::Handle();
1131 for (intptr_t i = 0; i < libs.Length(); i++) { 1131 for (intptr_t i = 0; i < libs.Length(); i++) {
1132 lib ^= libs.At(i); 1132 lib ^= libs.At(i);
1133 EXPECT(!lib.IsNull()); 1133 EXPECT(!lib.IsNull());
1134 uri = lib.url(); 1134 uri = lib.url();
1135 OS::Print("Generating source for library: %s\n", uri.ToCString()); 1135 OS::Print("Generating source for library: %s\n", uri.ToCString());
1136 IterateScripts(lib); 1136 IterateScripts(lib);
1137 } 1137 }
1138 } 1138 }
1139 1139
1140 1140
1141 UNIT_TEST_CASE(FullSnapshot) { 1141 VM_UNIT_TEST_CASE(FullSnapshot) {
1142 const char* kScriptChars = 1142 const char* kScriptChars =
1143 "class Fields {\n" 1143 "class Fields {\n"
1144 " Fields(int i, int j) : fld1 = i, fld2 = j {}\n" 1144 " Fields(int i, int j) : fld1 = i, fld2 = j {}\n"
1145 " int fld1;\n" 1145 " int fld1;\n"
1146 " final int fld2;\n" 1146 " final int fld2;\n"
1147 " final int bigint_fld = 0xfffffffffff;\n" 1147 " final int bigint_fld = 0xfffffffffff;\n"
1148 " static int fld3;\n" 1148 " static int fld3;\n"
1149 " static const int smi_sfld = 10;\n" 1149 " static const int smi_sfld = 10;\n"
1150 " static const int bigint_sfld = 0xfffffffffff;\n" 1150 " static const int bigint_sfld = 0xfffffffffff;\n"
1151 "}\n" 1151 "}\n"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
1205 Dart_Handle cls = Dart_GetClass(TestCase::lib(), NewString("FieldsTest")); 1205 Dart_Handle cls = Dart_GetClass(TestCase::lib(), NewString("FieldsTest"));
1206 result = Dart_Invoke(cls, NewString("testMain"), 0, NULL); 1206 result = Dart_Invoke(cls, NewString("testMain"), 0, NULL);
1207 EXPECT_VALID(result); 1207 EXPECT_VALID(result);
1208 Dart_ExitScope(); 1208 Dart_ExitScope();
1209 } 1209 }
1210 Dart_ShutdownIsolate(); 1210 Dart_ShutdownIsolate();
1211 free(isolate_snapshot_data_buffer); 1211 free(isolate_snapshot_data_buffer);
1212 } 1212 }
1213 1213
1214 1214
1215 UNIT_TEST_CASE(FullSnapshot1) { 1215 VM_UNIT_TEST_CASE(FullSnapshot1) {
1216 // This buffer has to be static for this to compile with Visual Studio. 1216 // This buffer has to be static for this to compile with Visual Studio.
1217 // If it is not static compilation of this file with Visual Studio takes 1217 // If it is not static compilation of this file with Visual Studio takes
1218 // more than 30 minutes! 1218 // more than 30 minutes!
1219 static const char kFullSnapshotScriptChars[] = { 1219 static const char kFullSnapshotScriptChars[] = {
1220 #include "snapshot_test.dat" 1220 #include "snapshot_test.dat"
1221 }; 1221 };
1222 const char* kScriptChars = kFullSnapshotScriptChars; 1222 const char* kScriptChars = kFullSnapshotScriptChars;
1223 1223
1224 uint8_t* isolate_snapshot_data_buffer; 1224 uint8_t* isolate_snapshot_data_buffer;
1225 1225
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
1274 Dart_ExitScope(); 1274 Dart_ExitScope();
1275 } 1275 }
1276 Dart_ShutdownIsolate(); 1276 Dart_ShutdownIsolate();
1277 free(isolate_snapshot_data_buffer); 1277 free(isolate_snapshot_data_buffer);
1278 } 1278 }
1279 1279
1280 1280
1281 #ifndef PRODUCT 1281 #ifndef PRODUCT
1282 1282
1283 1283
1284 UNIT_TEST_CASE(ScriptSnapshot) { 1284 VM_UNIT_TEST_CASE(ScriptSnapshot) {
1285 const char* kLibScriptChars = 1285 const char* kLibScriptChars =
1286 "library dart_import_lib;" 1286 "library dart_import_lib;"
1287 "class LibFields {" 1287 "class LibFields {"
1288 " LibFields(int i, int j) : fld1 = i, fld2 = j {}" 1288 " LibFields(int i, int j) : fld1 = i, fld2 = j {}"
1289 " int fld1;" 1289 " int fld1;"
1290 " final int fld2;" 1290 " final int fld2;"
1291 "}"; 1291 "}";
1292 const char* kScriptChars = 1292 const char* kScriptChars =
1293 "class TestTrace implements StackTrace {" 1293 "class TestTrace implements StackTrace {"
1294 " TestTrace();" 1294 " TestTrace();"
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
1409 result = Dart_Invoke(cls, NewString("testMain"), 0, NULL); 1409 result = Dart_Invoke(cls, NewString("testMain"), 0, NULL);
1410 EXPECT_VALID(result); 1410 EXPECT_VALID(result);
1411 Dart_ExitScope(); 1411 Dart_ExitScope();
1412 Dart_ShutdownIsolate(); 1412 Dart_ShutdownIsolate();
1413 } 1413 }
1414 free(full_snapshot); 1414 free(full_snapshot);
1415 free(script_snapshot); 1415 free(script_snapshot);
1416 } 1416 }
1417 1417
1418 1418
1419 UNIT_TEST_CASE(ScriptSnapshot1) { 1419 VM_UNIT_TEST_CASE(ScriptSnapshot1) {
1420 const char* kScriptChars = 1420 const char* kScriptChars =
1421 "class _SimpleNumEnumerable<T extends num> {" 1421 "class _SimpleNumEnumerable<T extends num> {"
1422 "final Iterable<T> _source;" 1422 "final Iterable<T> _source;"
1423 "const _SimpleNumEnumerable(this._source) : super();" 1423 "const _SimpleNumEnumerable(this._source) : super();"
1424 "}"; 1424 "}";
1425 1425
1426 Dart_Handle result; 1426 Dart_Handle result;
1427 uint8_t* buffer; 1427 uint8_t* buffer;
1428 intptr_t size; 1428 intptr_t size;
1429 intptr_t vm_isolate_snapshot_size; 1429 intptr_t vm_isolate_snapshot_size;
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
1482 Dart_ExitScope(); 1482 Dart_ExitScope();
1483 } 1483 }
1484 1484
1485 FLAG_load_deferred_eagerly = saved_load_deferred_eagerly_mode; 1485 FLAG_load_deferred_eagerly = saved_load_deferred_eagerly_mode;
1486 Dart_ShutdownIsolate(); 1486 Dart_ShutdownIsolate();
1487 free(full_snapshot); 1487 free(full_snapshot);
1488 free(script_snapshot); 1488 free(script_snapshot);
1489 } 1489 }
1490 1490
1491 1491
1492 UNIT_TEST_CASE(ScriptSnapshot2) { 1492 VM_UNIT_TEST_CASE(ScriptSnapshot2) {
1493 // The snapshot of this library is always created in production mode, but 1493 // The snapshot of this library is always created in production mode, but
1494 // loaded and executed in both production and checked modes. 1494 // loaded and executed in both production and checked modes.
1495 // This test verifies that type information is still contained in the snapshot 1495 // This test verifies that type information is still contained in the snapshot
1496 // although it was created in production mode and that type errors and 1496 // although it was created in production mode and that type errors and
1497 // compilation errors (for const fields) are correctly reported according to 1497 // compilation errors (for const fields) are correctly reported according to
1498 // the execution mode. 1498 // the execution mode.
1499 const char* kLibScriptChars = 1499 const char* kLibScriptChars =
1500 "library dart_import_lib;" 1500 "library dart_import_lib;"
1501 "const String s = 1.0;" 1501 "const String s = 1.0;"
1502 "final int i = true;" 1502 "final int i = true;"
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
1598 result = Dart_Invoke(lib, NewString("test_b"), 0, NULL); 1598 result = Dart_Invoke(lib, NewString("test_b"), 0, NULL);
1599 EXPECT(Dart_IsError(result) == saved_enable_type_checks_mode); 1599 EXPECT(Dart_IsError(result) == saved_enable_type_checks_mode);
1600 Dart_ExitScope(); 1600 Dart_ExitScope();
1601 } 1601 }
1602 Dart_ShutdownIsolate(); 1602 Dart_ShutdownIsolate();
1603 free(full_snapshot); 1603 free(full_snapshot);
1604 free(script_snapshot); 1604 free(script_snapshot);
1605 } 1605 }
1606 1606
1607 1607
1608 UNIT_TEST_CASE(MismatchedSnapshotKinds) { 1608 VM_UNIT_TEST_CASE(MismatchedSnapshotKinds) {
1609 const char* kScriptChars = "main() { print('Hello, world!'); }"; 1609 const char* kScriptChars = "main() { print('Hello, world!'); }";
1610 Dart_Handle result; 1610 Dart_Handle result;
1611 1611
1612 uint8_t* buffer; 1612 uint8_t* buffer;
1613 intptr_t size; 1613 intptr_t size;
1614 intptr_t vm_isolate_snapshot_size; 1614 intptr_t vm_isolate_snapshot_size;
1615 uint8_t* isolate_snapshot = NULL; 1615 uint8_t* isolate_snapshot = NULL;
1616 intptr_t isolate_snapshot_size; 1616 intptr_t isolate_snapshot_size;
1617 uint8_t* full_snapshot = NULL; 1617 uint8_t* full_snapshot = NULL;
1618 uint8_t* script_snapshot = NULL; 1618 uint8_t* script_snapshot = NULL;
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
1774 1774
1775 // Read object back from the snapshot into a C structure. 1775 // Read object back from the snapshot into a C structure.
1776 ApiNativeScope scope; 1776 ApiNativeScope scope;
1777 ApiMessageReader api_reader(buffer, buffer_len); 1777 ApiMessageReader api_reader(buffer, buffer_len);
1778 Dart_CObject* root = api_reader.ReadMessage(); 1778 Dart_CObject* root = api_reader.ReadMessage();
1779 EXPECT_NOTNULL(root); 1779 EXPECT_NOTNULL(root);
1780 EXPECT_EQ(Dart_CObject_kUnsupported, root->type); 1780 EXPECT_EQ(Dart_CObject_kUnsupported, root->type);
1781 } 1781 }
1782 1782
1783 1783
1784 UNIT_TEST_CASE(DartGeneratedMessages) { 1784 VM_UNIT_TEST_CASE(DartGeneratedMessages) {
1785 static const char* kCustomIsolateScriptChars = 1785 static const char* kCustomIsolateScriptChars =
1786 "getSmi() {\n" 1786 "getSmi() {\n"
1787 " return 42;\n" 1787 " return 42;\n"
1788 "}\n" 1788 "}\n"
1789 "getBigint() {\n" 1789 "getBigint() {\n"
1790 " return -0x424242424242424242424242424242424242;\n" 1790 " return -0x424242424242424242424242424242424242;\n"
1791 "}\n" 1791 "}\n"
1792 "getAsciiString() {\n" 1792 "getAsciiString() {\n"
1793 " return \"Hello, world!\";\n" 1793 " return \"Hello, world!\";\n"
1794 "}\n" 1794 "}\n"
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
1922 CheckStringInvalid(lead_surrogate_string_result); 1922 CheckStringInvalid(lead_surrogate_string_result);
1923 CheckStringInvalid(trail_surrogate_string_result); 1923 CheckStringInvalid(trail_surrogate_string_result);
1924 CheckStringInvalid(crappy_string_result); 1924 CheckStringInvalid(crappy_string_result);
1925 CheckStringInvalid(surrogates_string_result); 1925 CheckStringInvalid(surrogates_string_result);
1926 } 1926 }
1927 Dart_ExitScope(); 1927 Dart_ExitScope();
1928 Dart_ShutdownIsolate(); 1928 Dart_ShutdownIsolate();
1929 } 1929 }
1930 1930
1931 1931
1932 UNIT_TEST_CASE(DartGeneratedListMessages) { 1932 VM_UNIT_TEST_CASE(DartGeneratedListMessages) {
1933 const int kArrayLength = 10; 1933 const int kArrayLength = 10;
1934 static const char* kScriptChars = 1934 static const char* kScriptChars =
1935 "final int kArrayLength = 10;\n" 1935 "final int kArrayLength = 10;\n"
1936 "getList() {\n" 1936 "getList() {\n"
1937 " return new List(kArrayLength);\n" 1937 " return new List(kArrayLength);\n"
1938 "}\n" 1938 "}\n"
1939 "getIntList() {\n" 1939 "getIntList() {\n"
1940 " var list = new List<int>(kArrayLength);\n" 1940 " var list = new List<int>(kArrayLength);\n"
1941 " for (var i = 0; i < kArrayLength; i++) list[i] = i;\n" 1941 " for (var i = 0; i < kArrayLength; i++) list[i] = i;\n"
1942 " return list;\n" 1942 " return list;\n"
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
2033 EXPECT_EQ(Dart_CObject_kNull, root->value.as_array.values[i]->type); 2033 EXPECT_EQ(Dart_CObject_kNull, root->value.as_array.values[i]->type);
2034 } 2034 }
2035 } 2035 }
2036 } 2036 }
2037 } 2037 }
2038 Dart_ExitScope(); 2038 Dart_ExitScope();
2039 Dart_ShutdownIsolate(); 2039 Dart_ShutdownIsolate();
2040 } 2040 }
2041 2041
2042 2042
2043 UNIT_TEST_CASE(DartGeneratedArrayLiteralMessages) { 2043 VM_UNIT_TEST_CASE(DartGeneratedArrayLiteralMessages) {
2044 const int kArrayLength = 10; 2044 const int kArrayLength = 10;
2045 static const char* kScriptChars = 2045 static const char* kScriptChars =
2046 "final int kArrayLength = 10;\n" 2046 "final int kArrayLength = 10;\n"
2047 "getList() {\n" 2047 "getList() {\n"
2048 " return [null, null, null, null, null, null, null, null, null, null];\n" 2048 " return [null, null, null, null, null, null, null, null, null, null];\n"
2049 "}\n" 2049 "}\n"
2050 "getIntList() {\n" 2050 "getIntList() {\n"
2051 " return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\n" 2051 " return [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\n"
2052 "}\n" 2052 "}\n"
2053 "getStringList() {\n" 2053 "getStringList() {\n"
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
2254 EXPECT_EQ(Dart_CObject_kInt32, e->type); 2254 EXPECT_EQ(Dart_CObject_kInt32, e->type);
2255 EXPECT_EQ(i + 1, e->value.as_int32); 2255 EXPECT_EQ(i + 1, e->value.as_int32);
2256 } 2256 }
2257 } 2257 }
2258 } 2258 }
2259 Dart_ExitScope(); 2259 Dart_ExitScope();
2260 Dart_ShutdownIsolate(); 2260 Dart_ShutdownIsolate();
2261 } 2261 }
2262 2262
2263 2263
2264 UNIT_TEST_CASE(DartGeneratedListMessagesWithBackref) { 2264 VM_UNIT_TEST_CASE(DartGeneratedListMessagesWithBackref) {
2265 const int kArrayLength = 10; 2265 const int kArrayLength = 10;
2266 static const char* kScriptChars = 2266 static const char* kScriptChars =
2267 "import 'dart:typed_data';\n" 2267 "import 'dart:typed_data';\n"
2268 "final int kArrayLength = 10;\n" 2268 "final int kArrayLength = 10;\n"
2269 "getStringList() {\n" 2269 "getStringList() {\n"
2270 " var s = 'Hello, world!';\n" 2270 " var s = 'Hello, world!';\n"
2271 " var list = new List<String>(kArrayLength);\n" 2271 " var list = new List<String>(kArrayLength);\n"
2272 " for (var i = 0; i < kArrayLength; i++) list[i] = s;\n" 2272 " for (var i = 0; i < kArrayLength; i++) list[i] = s;\n"
2273 " return list;\n" 2273 " return list;\n"
2274 "}\n" 2274 "}\n"
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
2474 EXPECT_EQ(Dart_CObject_kArray, element->type); 2474 EXPECT_EQ(Dart_CObject_kArray, element->type);
2475 EXPECT_EQ(root, element); 2475 EXPECT_EQ(root, element);
2476 } 2476 }
2477 } 2477 }
2478 } 2478 }
2479 Dart_ExitScope(); 2479 Dart_ExitScope();
2480 Dart_ShutdownIsolate(); 2480 Dart_ShutdownIsolate();
2481 } 2481 }
2482 2482
2483 2483
2484 UNIT_TEST_CASE(DartGeneratedArrayLiteralMessagesWithBackref) { 2484 VM_UNIT_TEST_CASE(DartGeneratedArrayLiteralMessagesWithBackref) {
2485 const int kArrayLength = 10; 2485 const int kArrayLength = 10;
2486 static const char* kScriptChars = 2486 static const char* kScriptChars =
2487 "import 'dart:typed_data';\n" 2487 "import 'dart:typed_data';\n"
2488 "final int kArrayLength = 10;\n" 2488 "final int kArrayLength = 10;\n"
2489 "getStringList() {\n" 2489 "getStringList() {\n"
2490 " var s = 'Hello, world!';\n" 2490 " var s = 'Hello, world!';\n"
2491 " var list = [s, s, s, s, s, s, s, s, s, s];\n" 2491 " var list = [s, s, s, s, s, s, s, s, s, s];\n"
2492 " return list;\n" 2492 " return list;\n"
2493 "}\n" 2493 "}\n"
2494 "getMintList() {\n" 2494 "getMintList() {\n"
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
2709 2709
2710 2710
2711 static void CheckTypedData(Dart_CObject* object, 2711 static void CheckTypedData(Dart_CObject* object,
2712 Dart_TypedData_Type typed_data_type, 2712 Dart_TypedData_Type typed_data_type,
2713 int len) { 2713 int len) {
2714 EXPECT_EQ(Dart_CObject_kTypedData, object->type); 2714 EXPECT_EQ(Dart_CObject_kTypedData, object->type);
2715 EXPECT_EQ(typed_data_type, object->value.as_typed_data.type); 2715 EXPECT_EQ(typed_data_type, object->value.as_typed_data.type);
2716 EXPECT_EQ(len, object->value.as_typed_data.length); 2716 EXPECT_EQ(len, object->value.as_typed_data.length);
2717 } 2717 }
2718 2718
2719 UNIT_TEST_CASE(DartGeneratedListMessagesWithTypedData) { 2719 VM_UNIT_TEST_CASE(DartGeneratedListMessagesWithTypedData) {
2720 static const char* kScriptChars = 2720 static const char* kScriptChars =
2721 "import 'dart:typed_data';\n" 2721 "import 'dart:typed_data';\n"
2722 "getTypedDataList() {\n" 2722 "getTypedDataList() {\n"
2723 " var list = new List(10);\n" 2723 " var list = new List(10);\n"
2724 " var index = 0;\n" 2724 " var index = 0;\n"
2725 " list[index++] = new Int8List(256);\n" 2725 " list[index++] = new Int8List(256);\n"
2726 " list[index++] = new Uint8List(256);\n" 2726 " list[index++] = new Uint8List(256);\n"
2727 " list[index++] = new Int16List(256);\n" 2727 " list[index++] = new Int16List(256);\n"
2728 " list[index++] = new Uint16List(256);\n" 2728 " list[index++] = new Uint16List(256);\n"
2729 " list[index++] = new Int32List(256);\n" 2729 " list[index++] = new Int32List(256);\n"
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
2896 i++; 2896 i++;
2897 } 2897 }
2898 EXPECT_EQ(i, root->value.as_array.length); 2898 EXPECT_EQ(i, root->value.as_array.length);
2899 } 2899 }
2900 } 2900 }
2901 Dart_ExitScope(); 2901 Dart_ExitScope();
2902 Dart_ShutdownIsolate(); 2902 Dart_ShutdownIsolate();
2903 } 2903 }
2904 2904
2905 2905
2906 UNIT_TEST_CASE(PostCObject) { 2906 VM_UNIT_TEST_CASE(PostCObject) {
2907 // Create a native port for posting from C to Dart 2907 // Create a native port for posting from C to Dart
2908 TestIsolateScope __test_isolate__; 2908 TestIsolateScope __test_isolate__;
2909 const char* kScriptChars = 2909 const char* kScriptChars =
2910 "import 'dart:isolate';\n" 2910 "import 'dart:isolate';\n"
2911 "main() {\n" 2911 "main() {\n"
2912 " var messageCount = 0;\n" 2912 " var messageCount = 0;\n"
2913 " var exception = '';\n" 2913 " var exception = '';\n"
2914 " var port = new RawReceivePort();\n" 2914 " var port = new RawReceivePort();\n"
2915 " var sendPort = port.sendPort;\n" 2915 " var sendPort = port.sendPort;\n"
2916 " port.handler = (message) {\n" 2916 " port.handler = (message) {\n"
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
3003 StackZone zone(Thread::Current()); 3003 StackZone zone(Thread::Current());
3004 uint8_t* buffer; 3004 uint8_t* buffer;
3005 MessageWriter writer(&buffer, &zone_allocator, &zone_deallocator, true); 3005 MessageWriter writer(&buffer, &zone_allocator, &zone_deallocator, true);
3006 writer.WriteInlinedObjectHeader(kOmittedObjectId); 3006 writer.WriteInlinedObjectHeader(kOmittedObjectId);
3007 // For performance, we'd like single-byte headers when ids are omitted. 3007 // For performance, we'd like single-byte headers when ids are omitted.
3008 // If this starts failing, consider renumbering the snapshot ids. 3008 // If this starts failing, consider renumbering the snapshot ids.
3009 EXPECT_EQ(1, writer.BytesWritten()); 3009 EXPECT_EQ(1, writer.BytesWritten());
3010 } 3010 }
3011 3011
3012 } // namespace dart 3012 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/os_test.cc ('k') | runtime/vm/stack_frame_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698