| OLD | NEW |
| 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 "bin/builtin.h" | 5 #include "bin/builtin.h" |
| 6 #include "include/dart_api.h" | 6 #include "include/dart_api.h" |
| 7 #include "include/dart_debugger_api.h" | 7 #include "include/dart_debugger_api.h" |
| 8 #include "include/dart_mirrors_api.h" | 8 #include "include/dart_mirrors_api.h" |
| 9 #include "include/dart_native_api.h" | 9 #include "include/dart_native_api.h" |
| 10 #include "platform/assert.h" | 10 #include "platform/assert.h" |
| (...skipping 3852 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3863 Dart_Handle lib = TestCase::LoadTestScript(kScriptChars, NULL); | 3863 Dart_Handle lib = TestCase::LoadTestScript(kScriptChars, NULL); |
| 3864 Dart_Handle type = Dart_GetType(lib, NewString("Fields"), 0, NULL); | 3864 Dart_Handle type = Dart_GetType(lib, NewString("Fields"), 0, NULL); |
| 3865 EXPECT_VALID(type); | 3865 EXPECT_VALID(type); |
| 3866 Dart_Handle instance = Dart_Invoke(lib, NewString("test"), 0, NULL); | 3866 Dart_Handle instance = Dart_Invoke(lib, NewString("test"), 0, NULL); |
| 3867 EXPECT_VALID(instance); | 3867 EXPECT_VALID(instance); |
| 3868 Dart_Handle name; | 3868 Dart_Handle name; |
| 3869 | 3869 |
| 3870 // Load imported lib. | 3870 // Load imported lib. |
| 3871 Dart_Handle url = NewString("library_url"); | 3871 Dart_Handle url = NewString("library_url"); |
| 3872 Dart_Handle source = NewString(kImportedScriptChars); | 3872 Dart_Handle source = NewString(kImportedScriptChars); |
| 3873 Dart_Handle imported_lib = Dart_LoadLibrary(url, source); | 3873 Dart_Handle imported_lib = Dart_LoadLibrary(url, source, 0, 0); |
| 3874 Dart_Handle prefix = NewString(""); | 3874 Dart_Handle prefix = NewString(""); |
| 3875 EXPECT_VALID(imported_lib); | 3875 EXPECT_VALID(imported_lib); |
| 3876 Dart_Handle result = Dart_LibraryImportLibrary(lib, imported_lib, prefix); | 3876 Dart_Handle result = Dart_LibraryImportLibrary(lib, imported_lib, prefix); |
| 3877 EXPECT_VALID(result); | 3877 EXPECT_VALID(result); |
| 3878 result = Dart_FinalizeLoading(false); | 3878 result = Dart_FinalizeLoading(false); |
| 3879 EXPECT_VALID(result); | 3879 EXPECT_VALID(result); |
| 3880 result = Dart_Invoke(imported_lib, NewString("test2"), 0, NULL); | 3880 result = Dart_Invoke(imported_lib, NewString("test2"), 0, NULL); |
| 3881 EXPECT_VALID(result); | 3881 EXPECT_VALID(result); |
| 3882 | 3882 |
| 3883 // Instance field. | 3883 // Instance field. |
| (...skipping 1336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5220 "void local() {}\n" | 5220 "void local() {}\n" |
| 5221 "void _local() {}\n"; | 5221 "void _local() {}\n"; |
| 5222 const char* kLibrary2Chars = | 5222 const char* kLibrary2Chars = |
| 5223 "library library2_name;\n" | 5223 "library library2_name;\n" |
| 5224 "void imported() {}\n" | 5224 "void imported() {}\n" |
| 5225 "void _imported() {}\n"; | 5225 "void _imported() {}\n"; |
| 5226 | 5226 |
| 5227 // Load lib1 | 5227 // Load lib1 |
| 5228 Dart_Handle url = NewString("library1_url"); | 5228 Dart_Handle url = NewString("library1_url"); |
| 5229 Dart_Handle source = NewString(kLibrary1Chars); | 5229 Dart_Handle source = NewString(kLibrary1Chars); |
| 5230 Dart_Handle lib1 = Dart_LoadLibrary(url, source); | 5230 Dart_Handle lib1 = Dart_LoadLibrary(url, source, 0, 0); |
| 5231 EXPECT_VALID(lib1); | 5231 EXPECT_VALID(lib1); |
| 5232 | 5232 |
| 5233 // Load lib2 | 5233 // Load lib2 |
| 5234 url = NewString("library2_url"); | 5234 url = NewString("library2_url"); |
| 5235 source = NewString(kLibrary2Chars); | 5235 source = NewString(kLibrary2Chars); |
| 5236 Dart_Handle lib2 = Dart_LoadLibrary(url, source); | 5236 Dart_Handle lib2 = Dart_LoadLibrary(url, source, 0, 0); |
| 5237 EXPECT_VALID(lib2); | 5237 EXPECT_VALID(lib2); |
| 5238 | 5238 |
| 5239 // Import lib2 from lib1 | 5239 // Import lib2 from lib1 |
| 5240 Dart_Handle result = Dart_LibraryImportLibrary(lib1, lib2, Dart_Null()); | 5240 Dart_Handle result = Dart_LibraryImportLibrary(lib1, lib2, Dart_Null()); |
| 5241 EXPECT_VALID(result); | 5241 EXPECT_VALID(result); |
| 5242 result = Dart_FinalizeLoading(false); | 5242 result = Dart_FinalizeLoading(false); |
| 5243 EXPECT_VALID(result); | 5243 EXPECT_VALID(result); |
| 5244 | 5244 |
| 5245 // We can invoke both private and non-private local functions. | 5245 // We can invoke both private and non-private local functions. |
| 5246 EXPECT_VALID(Dart_Invoke(lib1, NewString("local"), 0, NULL)); | 5246 EXPECT_VALID(Dart_Invoke(lib1, NewString("local"), 0, NULL)); |
| (...skipping 649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5896 // Create a test library and Load up a test script in it. | 5896 // Create a test library and Load up a test script in it. |
| 5897 Dart_Handle url = NewString(TestCase::url()); | 5897 Dart_Handle url = NewString(TestCase::url()); |
| 5898 Dart_Handle source = NewString(kScriptChars); | 5898 Dart_Handle source = NewString(kScriptChars); |
| 5899 Dart_Handle result = Dart_SetLibraryTagHandler(library_handler); | 5899 Dart_Handle result = Dart_SetLibraryTagHandler(library_handler); |
| 5900 EXPECT_VALID(result); | 5900 EXPECT_VALID(result); |
| 5901 result = Dart_LoadScript(url, source, 0, 0); | 5901 result = Dart_LoadScript(url, source, 0, 0); |
| 5902 EXPECT_VALID(result); | 5902 EXPECT_VALID(result); |
| 5903 | 5903 |
| 5904 url = NewString("library1_dart"); | 5904 url = NewString("library1_dart"); |
| 5905 source = NewString(kLibrary1Chars); | 5905 source = NewString(kLibrary1Chars); |
| 5906 result = Dart_LoadLibrary(url, source); | 5906 result = Dart_LoadLibrary(url, source, 0, 0); |
| 5907 EXPECT_VALID(result); | 5907 EXPECT_VALID(result); |
| 5908 | 5908 |
| 5909 result = Dart_LookupLibrary(url); | 5909 result = Dart_LookupLibrary(url); |
| 5910 EXPECT_VALID(result); | 5910 EXPECT_VALID(result); |
| 5911 | 5911 |
| 5912 result = Dart_LookupLibrary(Dart_Null()); | 5912 result = Dart_LookupLibrary(Dart_Null()); |
| 5913 EXPECT(Dart_IsError(result)); | 5913 EXPECT(Dart_IsError(result)); |
| 5914 EXPECT_STREQ("Dart_LookupLibrary expects argument 'url' to be non-null.", | 5914 EXPECT_STREQ("Dart_LookupLibrary expects argument 'url' to be non-null.", |
| 5915 Dart_GetError(result)); | 5915 Dart_GetError(result)); |
| 5916 | 5916 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 5930 EXPECT_STREQ("Dart_LookupLibrary: library 'noodles.dart' not found.", | 5930 EXPECT_STREQ("Dart_LookupLibrary: library 'noodles.dart' not found.", |
| 5931 Dart_GetError(result)); | 5931 Dart_GetError(result)); |
| 5932 } | 5932 } |
| 5933 | 5933 |
| 5934 | 5934 |
| 5935 TEST_CASE(LibraryName) { | 5935 TEST_CASE(LibraryName) { |
| 5936 const char* kLibrary1Chars = | 5936 const char* kLibrary1Chars = |
| 5937 "library library1_name;"; | 5937 "library library1_name;"; |
| 5938 Dart_Handle url = NewString("library1_url"); | 5938 Dart_Handle url = NewString("library1_url"); |
| 5939 Dart_Handle source = NewString(kLibrary1Chars); | 5939 Dart_Handle source = NewString(kLibrary1Chars); |
| 5940 Dart_Handle lib = Dart_LoadLibrary(url, source); | 5940 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 5941 Dart_Handle error = Dart_NewApiError("incoming error"); | 5941 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 5942 EXPECT_VALID(lib); | 5942 EXPECT_VALID(lib); |
| 5943 | 5943 |
| 5944 Dart_Handle result = Dart_LibraryName(Dart_Null()); | 5944 Dart_Handle result = Dart_LibraryName(Dart_Null()); |
| 5945 EXPECT(Dart_IsError(result)); | 5945 EXPECT(Dart_IsError(result)); |
| 5946 EXPECT_STREQ("Dart_LibraryName expects argument 'library' to be non-null.", | 5946 EXPECT_STREQ("Dart_LibraryName expects argument 'library' to be non-null.", |
| 5947 Dart_GetError(result)); | 5947 Dart_GetError(result)); |
| 5948 | 5948 |
| 5949 result = Dart_LibraryName(Dart_True()); | 5949 result = Dart_LibraryName(Dart_True()); |
| 5950 EXPECT(Dart_IsError(result)); | 5950 EXPECT(Dart_IsError(result)); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 5962 const char* cstr = NULL; | 5962 const char* cstr = NULL; |
| 5963 EXPECT_VALID(Dart_StringToCString(result, &cstr)); | 5963 EXPECT_VALID(Dart_StringToCString(result, &cstr)); |
| 5964 EXPECT_STREQ("library1_name", cstr); | 5964 EXPECT_STREQ("library1_name", cstr); |
| 5965 } | 5965 } |
| 5966 | 5966 |
| 5967 TEST_CASE(LibraryId) { | 5967 TEST_CASE(LibraryId) { |
| 5968 const char* kLibrary1Chars = | 5968 const char* kLibrary1Chars = |
| 5969 "library library1_name;"; | 5969 "library library1_name;"; |
| 5970 Dart_Handle url = NewString("library1_url"); | 5970 Dart_Handle url = NewString("library1_url"); |
| 5971 Dart_Handle source = NewString(kLibrary1Chars); | 5971 Dart_Handle source = NewString(kLibrary1Chars); |
| 5972 Dart_Handle lib = Dart_LoadLibrary(url, source); | 5972 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 5973 Dart_Handle error = Dart_NewApiError("incoming error"); | 5973 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 5974 EXPECT_VALID(lib); | 5974 EXPECT_VALID(lib); |
| 5975 intptr_t libraryId = -1; | 5975 intptr_t libraryId = -1; |
| 5976 | 5976 |
| 5977 Dart_Handle result = Dart_LibraryId(Dart_Null(), &libraryId); | 5977 Dart_Handle result = Dart_LibraryId(Dart_Null(), &libraryId); |
| 5978 EXPECT(Dart_IsError(result)); | 5978 EXPECT(Dart_IsError(result)); |
| 5979 EXPECT_STREQ("Dart_LibraryId expects argument 'library' to be non-null.", | 5979 EXPECT_STREQ("Dart_LibraryId expects argument 'library' to be non-null.", |
| 5980 Dart_GetError(result)); | 5980 Dart_GetError(result)); |
| 5981 | 5981 |
| 5982 result = Dart_LibraryId(Dart_True(), &libraryId); | 5982 result = Dart_LibraryId(Dart_True(), &libraryId); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 5999 EXPECT_VALID(Dart_StringToCString(result, &cstr)); | 5999 EXPECT_VALID(Dart_StringToCString(result, &cstr)); |
| 6000 EXPECT_STREQ("library1_name", cstr); | 6000 EXPECT_STREQ("library1_name", cstr); |
| 6001 } | 6001 } |
| 6002 | 6002 |
| 6003 | 6003 |
| 6004 TEST_CASE(LibraryUrl) { | 6004 TEST_CASE(LibraryUrl) { |
| 6005 const char* kLibrary1Chars = | 6005 const char* kLibrary1Chars = |
| 6006 "library library1_name;"; | 6006 "library library1_name;"; |
| 6007 Dart_Handle url = NewString("library1_url"); | 6007 Dart_Handle url = NewString("library1_url"); |
| 6008 Dart_Handle source = NewString(kLibrary1Chars); | 6008 Dart_Handle source = NewString(kLibrary1Chars); |
| 6009 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6009 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6010 Dart_Handle error = Dart_NewApiError("incoming error"); | 6010 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 6011 EXPECT_VALID(lib); | 6011 EXPECT_VALID(lib); |
| 6012 | 6012 |
| 6013 Dart_Handle result = Dart_LibraryUrl(Dart_Null()); | 6013 Dart_Handle result = Dart_LibraryUrl(Dart_Null()); |
| 6014 EXPECT(Dart_IsError(result)); | 6014 EXPECT(Dart_IsError(result)); |
| 6015 EXPECT_STREQ("Dart_LibraryUrl expects argument 'library' to be non-null.", | 6015 EXPECT_STREQ("Dart_LibraryUrl expects argument 'library' to be non-null.", |
| 6016 Dart_GetError(result)); | 6016 Dart_GetError(result)); |
| 6017 | 6017 |
| 6018 result = Dart_LibraryUrl(Dart_True()); | 6018 result = Dart_LibraryUrl(Dart_True()); |
| 6019 EXPECT(Dart_IsError(result)); | 6019 EXPECT(Dart_IsError(result)); |
| (...skipping 23 matching lines...) Expand all Loading... |
| 6043 "abstract class C {}\n" | 6043 "abstract class C {}\n" |
| 6044 "class _A {}\n" | 6044 "class _A {}\n" |
| 6045 "class _B {}\n" | 6045 "class _B {}\n" |
| 6046 "abstract class _C {}\n" | 6046 "abstract class _C {}\n" |
| 6047 "\n" | 6047 "\n" |
| 6048 "_compare(String a, String b) => a.compareTo(b);\n" | 6048 "_compare(String a, String b) => a.compareTo(b);\n" |
| 6049 "sort(list) => list.sort(_compare);\n"; | 6049 "sort(list) => list.sort(_compare);\n"; |
| 6050 | 6050 |
| 6051 Dart_Handle url = NewString("library_url"); | 6051 Dart_Handle url = NewString("library_url"); |
| 6052 Dart_Handle source = NewString(kLibraryChars); | 6052 Dart_Handle source = NewString(kLibraryChars); |
| 6053 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6053 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6054 EXPECT_VALID(lib); | 6054 EXPECT_VALID(lib); |
| 6055 Dart_Handle result = Dart_FinalizeLoading(false); | 6055 Dart_Handle result = Dart_FinalizeLoading(false); |
| 6056 EXPECT_VALID(result); | 6056 EXPECT_VALID(result); |
| 6057 | 6057 |
| 6058 Dart_Handle list = Dart_LibraryGetClassNames(lib); | 6058 Dart_Handle list = Dart_LibraryGetClassNames(lib); |
| 6059 EXPECT_VALID(list); | 6059 EXPECT_VALID(list); |
| 6060 EXPECT(Dart_IsList(list)); | 6060 EXPECT(Dart_IsList(list)); |
| 6061 | 6061 |
| 6062 // Sort the list. | 6062 // Sort the list. |
| 6063 const int kNumArgs = 1; | 6063 const int kNumArgs = 1; |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6096 " set _C2(x) { }\n" | 6096 " set _C2(x) { }\n" |
| 6097 " var _D2;\n" | 6097 " var _D2;\n" |
| 6098 "}\n" | 6098 "}\n" |
| 6099 "\n" | 6099 "\n" |
| 6100 "_compare(String a, String b) => a.compareTo(b);\n" | 6100 "_compare(String a, String b) => a.compareTo(b);\n" |
| 6101 "sort(list) => list.sort(_compare);\n"; | 6101 "sort(list) => list.sort(_compare);\n"; |
| 6102 | 6102 |
| 6103 // Get the functions from a library. | 6103 // Get the functions from a library. |
| 6104 Dart_Handle url = NewString("library_url"); | 6104 Dart_Handle url = NewString("library_url"); |
| 6105 Dart_Handle source = NewString(kLibraryChars); | 6105 Dart_Handle source = NewString(kLibraryChars); |
| 6106 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6106 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6107 EXPECT_VALID(lib); | 6107 EXPECT_VALID(lib); |
| 6108 Dart_Handle result = Dart_FinalizeLoading(false); | 6108 Dart_Handle result = Dart_FinalizeLoading(false); |
| 6109 EXPECT_VALID(result); | 6109 EXPECT_VALID(result); |
| 6110 | 6110 |
| 6111 Dart_Handle list = Dart_GetFunctionNames(lib); | 6111 Dart_Handle list = Dart_GetFunctionNames(lib); |
| 6112 EXPECT_VALID(list); | 6112 EXPECT_VALID(list); |
| 6113 EXPECT(Dart_IsList(list)); | 6113 EXPECT(Dart_IsList(list)); |
| 6114 | 6114 |
| 6115 // Sort the list. | 6115 // Sort the list. |
| 6116 const int kNumArgs = 1; | 6116 const int kNumArgs = 1; |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6148 TEST_CASE(LibraryImportLibrary) { | 6148 TEST_CASE(LibraryImportLibrary) { |
| 6149 const char* kLibrary1Chars = | 6149 const char* kLibrary1Chars = |
| 6150 "library library1_name;"; | 6150 "library library1_name;"; |
| 6151 const char* kLibrary2Chars = | 6151 const char* kLibrary2Chars = |
| 6152 "library library2_name;"; | 6152 "library library2_name;"; |
| 6153 Dart_Handle error = Dart_NewApiError("incoming error"); | 6153 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 6154 Dart_Handle result; | 6154 Dart_Handle result; |
| 6155 | 6155 |
| 6156 Dart_Handle url = NewString("library1_url"); | 6156 Dart_Handle url = NewString("library1_url"); |
| 6157 Dart_Handle source = NewString(kLibrary1Chars); | 6157 Dart_Handle source = NewString(kLibrary1Chars); |
| 6158 Dart_Handle lib1 = Dart_LoadLibrary(url, source); | 6158 Dart_Handle lib1 = Dart_LoadLibrary(url, source, 0, 0); |
| 6159 EXPECT_VALID(lib1); | 6159 EXPECT_VALID(lib1); |
| 6160 | 6160 |
| 6161 url = NewString("library2_url"); | 6161 url = NewString("library2_url"); |
| 6162 source = NewString(kLibrary2Chars); | 6162 source = NewString(kLibrary2Chars); |
| 6163 Dart_Handle lib2 = Dart_LoadLibrary(url, source); | 6163 Dart_Handle lib2 = Dart_LoadLibrary(url, source, 0, 0); |
| 6164 EXPECT_VALID(lib2); | 6164 EXPECT_VALID(lib2); |
| 6165 | 6165 |
| 6166 result = Dart_LibraryImportLibrary(Dart_Null(), lib2, Dart_Null()); | 6166 result = Dart_LibraryImportLibrary(Dart_Null(), lib2, Dart_Null()); |
| 6167 EXPECT(Dart_IsError(result)); | 6167 EXPECT(Dart_IsError(result)); |
| 6168 EXPECT_STREQ( | 6168 EXPECT_STREQ( |
| 6169 "Dart_LibraryImportLibrary expects argument 'library' to be non-null.", | 6169 "Dart_LibraryImportLibrary expects argument 'library' to be non-null.", |
| 6170 Dart_GetError(result)); | 6170 Dart_GetError(result)); |
| 6171 | 6171 |
| 6172 result = Dart_LibraryImportLibrary(Dart_True(), lib2, Dart_Null()); | 6172 result = Dart_LibraryImportLibrary(Dart_True(), lib2, Dart_Null()); |
| 6173 EXPECT(Dart_IsError(result)); | 6173 EXPECT(Dart_IsError(result)); |
| (...skipping 25 matching lines...) Expand all Loading... |
| 6199 EXPECT_VALID(result); | 6199 EXPECT_VALID(result); |
| 6200 } | 6200 } |
| 6201 | 6201 |
| 6202 | 6202 |
| 6203 TEST_CASE(ImportLibraryWithPrefix) { | 6203 TEST_CASE(ImportLibraryWithPrefix) { |
| 6204 const char* kLibrary1Chars = | 6204 const char* kLibrary1Chars = |
| 6205 "library library1_name;" | 6205 "library library1_name;" |
| 6206 "int bar() => 42;"; | 6206 "int bar() => 42;"; |
| 6207 Dart_Handle url1 = NewString("library1_url"); | 6207 Dart_Handle url1 = NewString("library1_url"); |
| 6208 Dart_Handle source1 = NewString(kLibrary1Chars); | 6208 Dart_Handle source1 = NewString(kLibrary1Chars); |
| 6209 Dart_Handle lib1 = Dart_LoadLibrary(url1, source1); | 6209 Dart_Handle lib1 = Dart_LoadLibrary(url1, source1, 0, 0); |
| 6210 EXPECT_VALID(lib1); | 6210 EXPECT_VALID(lib1); |
| 6211 EXPECT(Dart_IsLibrary(lib1)); | 6211 EXPECT(Dart_IsLibrary(lib1)); |
| 6212 | 6212 |
| 6213 const char* kLibrary2Chars = | 6213 const char* kLibrary2Chars = |
| 6214 "library library2_name;" | 6214 "library library2_name;" |
| 6215 "int foobar() => foo.bar();"; | 6215 "int foobar() => foo.bar();"; |
| 6216 Dart_Handle url2 = NewString("library2_url"); | 6216 Dart_Handle url2 = NewString("library2_url"); |
| 6217 Dart_Handle source2 = NewString(kLibrary2Chars); | 6217 Dart_Handle source2 = NewString(kLibrary2Chars); |
| 6218 Dart_Handle lib2 = Dart_LoadLibrary(url2, source2); | 6218 Dart_Handle lib2 = Dart_LoadLibrary(url2, source2, 0, 0); |
| 6219 EXPECT_VALID(lib2); | 6219 EXPECT_VALID(lib2); |
| 6220 EXPECT(Dart_IsLibrary(lib2)); | 6220 EXPECT(Dart_IsLibrary(lib2)); |
| 6221 | 6221 |
| 6222 Dart_Handle prefix = NewString("foo"); | 6222 Dart_Handle prefix = NewString("foo"); |
| 6223 Dart_Handle result = Dart_LibraryImportLibrary(lib2, lib1, prefix); | 6223 Dart_Handle result = Dart_LibraryImportLibrary(lib2, lib1, prefix); |
| 6224 EXPECT_VALID(result); | 6224 EXPECT_VALID(result); |
| 6225 result = Dart_FinalizeLoading(false); | 6225 result = Dart_FinalizeLoading(false); |
| 6226 EXPECT_VALID(result); | 6226 EXPECT_VALID(result); |
| 6227 | 6227 |
| 6228 // Lib1 is imported under a library prefix and therefore 'foo' should | 6228 // Lib1 is imported under a library prefix and therefore 'foo' should |
| (...skipping 16 matching lines...) Expand all Loading... |
| 6245 | 6245 |
| 6246 TEST_CASE(LoadLibrary) { | 6246 TEST_CASE(LoadLibrary) { |
| 6247 const char* kLibrary1Chars = | 6247 const char* kLibrary1Chars = |
| 6248 "library library1_name;"; | 6248 "library library1_name;"; |
| 6249 Dart_Handle error = Dart_NewApiError("incoming error"); | 6249 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 6250 Dart_Handle result; | 6250 Dart_Handle result; |
| 6251 | 6251 |
| 6252 Dart_Handle url = NewString("library1_url"); | 6252 Dart_Handle url = NewString("library1_url"); |
| 6253 Dart_Handle source = NewString(kLibrary1Chars); | 6253 Dart_Handle source = NewString(kLibrary1Chars); |
| 6254 | 6254 |
| 6255 result = Dart_LoadLibrary(Dart_Null(), source); | 6255 result = Dart_LoadLibrary(Dart_Null(), source, 0, 0); |
| 6256 EXPECT(Dart_IsError(result)); | 6256 EXPECT(Dart_IsError(result)); |
| 6257 EXPECT_STREQ("Dart_LoadLibrary expects argument 'url' to be non-null.", | 6257 EXPECT_STREQ("Dart_LoadLibrary expects argument 'url' to be non-null.", |
| 6258 Dart_GetError(result)); | 6258 Dart_GetError(result)); |
| 6259 | 6259 |
| 6260 result = Dart_LoadLibrary(Dart_True(), source); | 6260 result = Dart_LoadLibrary(Dart_True(), source, 0, 0); |
| 6261 EXPECT(Dart_IsError(result)); | 6261 EXPECT(Dart_IsError(result)); |
| 6262 EXPECT_STREQ("Dart_LoadLibrary expects argument 'url' to be of type String.", | 6262 EXPECT_STREQ("Dart_LoadLibrary expects argument 'url' to be of type String.", |
| 6263 Dart_GetError(result)); | 6263 Dart_GetError(result)); |
| 6264 | 6264 |
| 6265 result = Dart_LoadLibrary(error, source); | 6265 result = Dart_LoadLibrary(error, source, 0, 0); |
| 6266 EXPECT(Dart_IsError(result)); | 6266 EXPECT(Dart_IsError(result)); |
| 6267 EXPECT_STREQ("incoming error", Dart_GetError(result)); | 6267 EXPECT_STREQ("incoming error", Dart_GetError(result)); |
| 6268 | 6268 |
| 6269 result = Dart_LoadLibrary(url, Dart_Null()); | 6269 result = Dart_LoadLibrary(url, Dart_Null(), 0, 0); |
| 6270 EXPECT(Dart_IsError(result)); | 6270 EXPECT(Dart_IsError(result)); |
| 6271 EXPECT_STREQ("Dart_LoadLibrary expects argument 'source' to be non-null.", | 6271 EXPECT_STREQ("Dart_LoadLibrary expects argument 'source' to be non-null.", |
| 6272 Dart_GetError(result)); | 6272 Dart_GetError(result)); |
| 6273 | 6273 |
| 6274 result = Dart_LoadLibrary(url, Dart_True()); | 6274 result = Dart_LoadLibrary(url, Dart_True(), 0, 0); |
| 6275 EXPECT(Dart_IsError(result)); | 6275 EXPECT(Dart_IsError(result)); |
| 6276 EXPECT_STREQ( | 6276 EXPECT_STREQ( |
| 6277 "Dart_LoadLibrary expects argument 'source' to be of type String.", | 6277 "Dart_LoadLibrary expects argument 'source' to be of type String.", |
| 6278 Dart_GetError(result)); | 6278 Dart_GetError(result)); |
| 6279 | 6279 |
| 6280 result = Dart_LoadLibrary(url, error); | 6280 result = Dart_LoadLibrary(url, error, 0, 0); |
| 6281 EXPECT(Dart_IsError(result)); | 6281 EXPECT(Dart_IsError(result)); |
| 6282 EXPECT_STREQ("incoming error", Dart_GetError(result)); | 6282 EXPECT_STREQ("incoming error", Dart_GetError(result)); |
| 6283 | 6283 |
| 6284 // Success. | 6284 // Success. |
| 6285 result = Dart_LoadLibrary(url, source); | 6285 result = Dart_LoadLibrary(url, source, 0, 0); |
| 6286 EXPECT_VALID(result); | 6286 EXPECT_VALID(result); |
| 6287 EXPECT(Dart_IsLibrary(result)); | 6287 EXPECT(Dart_IsLibrary(result)); |
| 6288 | 6288 |
| 6289 // Duplicate library load fails. | 6289 // Duplicate library load fails. |
| 6290 result = Dart_LoadLibrary(url, source); | 6290 result = Dart_LoadLibrary(url, source, 0, 0); |
| 6291 EXPECT(Dart_IsError(result)); | 6291 EXPECT(Dart_IsError(result)); |
| 6292 EXPECT_STREQ( | 6292 EXPECT_STREQ( |
| 6293 "Dart_LoadLibrary: library 'library1_url' has already been loaded.", | 6293 "Dart_LoadLibrary: library 'library1_url' has already been loaded.", |
| 6294 Dart_GetError(result)); | 6294 Dart_GetError(result)); |
| 6295 } | 6295 } |
| 6296 | 6296 |
| 6297 | 6297 |
| 6298 TEST_CASE(LoadLibrary_CompileError) { | 6298 TEST_CASE(LoadLibrary_CompileError) { |
| 6299 const char* kLibrary1Chars = | 6299 const char* kLibrary1Chars = |
| 6300 "library library1_name;" | 6300 "library library1_name;" |
| 6301 ")"; | 6301 ")"; |
| 6302 Dart_Handle url = NewString("library1_url"); | 6302 Dart_Handle url = NewString("library1_url"); |
| 6303 Dart_Handle source = NewString(kLibrary1Chars); | 6303 Dart_Handle source = NewString(kLibrary1Chars); |
| 6304 Dart_Handle result = Dart_LoadLibrary(url, source); | 6304 Dart_Handle result = Dart_LoadLibrary(url, source, 0, 0); |
| 6305 EXPECT(Dart_IsError(result)); | 6305 EXPECT(Dart_IsError(result)); |
| 6306 EXPECT(strstr(Dart_GetError(result), "unexpected token ')'")); | 6306 EXPECT(strstr(Dart_GetError(result), "unexpected token ')'")); |
| 6307 } | 6307 } |
| 6308 | 6308 |
| 6309 | 6309 |
| 6310 TEST_CASE(LoadSource) { | 6310 TEST_CASE(LoadSource) { |
| 6311 const char* kLibrary1Chars = | 6311 const char* kLibrary1Chars = |
| 6312 "library library1_name;"; | 6312 "library library1_name;"; |
| 6313 const char* kSourceChars = | 6313 const char* kSourceChars = |
| 6314 "part of library1_name;\n// Something innocuous"; | 6314 "part of library1_name;\n// Something innocuous"; |
| 6315 const char* kBadSourceChars = | 6315 const char* kBadSourceChars = |
| 6316 ")"; | 6316 ")"; |
| 6317 Dart_Handle error = Dart_NewApiError("incoming error"); | 6317 Dart_Handle error = Dart_NewApiError("incoming error"); |
| 6318 Dart_Handle result; | 6318 Dart_Handle result; |
| 6319 | 6319 |
| 6320 // Load up a library. | 6320 // Load up a library. |
| 6321 Dart_Handle url = NewString("library1_url"); | 6321 Dart_Handle url = NewString("library1_url"); |
| 6322 Dart_Handle source = NewString(kLibrary1Chars); | 6322 Dart_Handle source = NewString(kLibrary1Chars); |
| 6323 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6323 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6324 EXPECT_VALID(lib); | 6324 EXPECT_VALID(lib); |
| 6325 EXPECT(Dart_IsLibrary(lib)); | 6325 EXPECT(Dart_IsLibrary(lib)); |
| 6326 | 6326 |
| 6327 url = NewString("source_url"); | 6327 url = NewString("source_url"); |
| 6328 source = NewString(kSourceChars); | 6328 source = NewString(kSourceChars); |
| 6329 | 6329 |
| 6330 result = Dart_LoadSource(Dart_Null(), url, source); | 6330 result = Dart_LoadSource(Dart_Null(), url, source, 0, 0); |
| 6331 EXPECT(Dart_IsError(result)); | 6331 EXPECT(Dart_IsError(result)); |
| 6332 EXPECT_STREQ("Dart_LoadSource expects argument 'library' to be non-null.", | 6332 EXPECT_STREQ("Dart_LoadSource expects argument 'library' to be non-null.", |
| 6333 Dart_GetError(result)); | 6333 Dart_GetError(result)); |
| 6334 | 6334 |
| 6335 result = Dart_LoadSource(Dart_True(), url, source); | 6335 result = Dart_LoadSource(Dart_True(), url, source, 0, 0); |
| 6336 EXPECT(Dart_IsError(result)); | 6336 EXPECT(Dart_IsError(result)); |
| 6337 EXPECT_STREQ( | 6337 EXPECT_STREQ( |
| 6338 "Dart_LoadSource expects argument 'library' to be of type Library.", | 6338 "Dart_LoadSource expects argument 'library' to be of type Library.", |
| 6339 Dart_GetError(result)); | 6339 Dart_GetError(result)); |
| 6340 | 6340 |
| 6341 result = Dart_LoadSource(error, url, source); | 6341 result = Dart_LoadSource(error, url, source, 0, 0); |
| 6342 EXPECT(Dart_IsError(result)); | 6342 EXPECT(Dart_IsError(result)); |
| 6343 EXPECT_STREQ("incoming error", Dart_GetError(result)); | 6343 EXPECT_STREQ("incoming error", Dart_GetError(result)); |
| 6344 | 6344 |
| 6345 result = Dart_LoadSource(lib, Dart_Null(), source); | 6345 result = Dart_LoadSource(lib, Dart_Null(), source, 0, 0); |
| 6346 EXPECT(Dart_IsError(result)); | 6346 EXPECT(Dart_IsError(result)); |
| 6347 EXPECT_STREQ("Dart_LoadSource expects argument 'url' to be non-null.", | 6347 EXPECT_STREQ("Dart_LoadSource expects argument 'url' to be non-null.", |
| 6348 Dart_GetError(result)); | 6348 Dart_GetError(result)); |
| 6349 | 6349 |
| 6350 result = Dart_LoadSource(lib, Dart_True(), source); | 6350 result = Dart_LoadSource(lib, Dart_True(), source, 0, 0); |
| 6351 EXPECT(Dart_IsError(result)); | 6351 EXPECT(Dart_IsError(result)); |
| 6352 EXPECT_STREQ("Dart_LoadSource expects argument 'url' to be of type String.", | 6352 EXPECT_STREQ("Dart_LoadSource expects argument 'url' to be of type String.", |
| 6353 Dart_GetError(result)); | 6353 Dart_GetError(result)); |
| 6354 | 6354 |
| 6355 result = Dart_LoadSource(lib, error, source); | 6355 result = Dart_LoadSource(lib, error, source, 0, 0); |
| 6356 EXPECT(Dart_IsError(result)); | 6356 EXPECT(Dart_IsError(result)); |
| 6357 EXPECT_STREQ("incoming error", Dart_GetError(result)); | 6357 EXPECT_STREQ("incoming error", Dart_GetError(result)); |
| 6358 | 6358 |
| 6359 result = Dart_LoadSource(lib, url, Dart_Null()); | 6359 result = Dart_LoadSource(lib, url, Dart_Null(), 0, 0); |
| 6360 EXPECT(Dart_IsError(result)); | 6360 EXPECT(Dart_IsError(result)); |
| 6361 EXPECT_STREQ("Dart_LoadSource expects argument 'source' to be non-null.", | 6361 EXPECT_STREQ("Dart_LoadSource expects argument 'source' to be non-null.", |
| 6362 Dart_GetError(result)); | 6362 Dart_GetError(result)); |
| 6363 | 6363 |
| 6364 result = Dart_LoadSource(lib, url, Dart_True()); | 6364 result = Dart_LoadSource(lib, url, Dart_True(), 0, 0); |
| 6365 EXPECT(Dart_IsError(result)); | 6365 EXPECT(Dart_IsError(result)); |
| 6366 EXPECT_STREQ( | 6366 EXPECT_STREQ( |
| 6367 "Dart_LoadSource expects argument 'source' to be of type String.", | 6367 "Dart_LoadSource expects argument 'source' to be of type String.", |
| 6368 Dart_GetError(result)); | 6368 Dart_GetError(result)); |
| 6369 | 6369 |
| 6370 result = Dart_LoadSource(lib, error, source); | 6370 result = Dart_LoadSource(lib, error, source, 0, 0); |
| 6371 EXPECT(Dart_IsError(result)); | 6371 EXPECT(Dart_IsError(result)); |
| 6372 EXPECT_STREQ("incoming error", Dart_GetError(result)); | 6372 EXPECT_STREQ("incoming error", Dart_GetError(result)); |
| 6373 | 6373 |
| 6374 // Success. | 6374 // Success. |
| 6375 result = Dart_LoadSource(lib, url, source); | 6375 result = Dart_LoadSource(lib, url, source, 0, 0); |
| 6376 EXPECT_VALID(result); | 6376 EXPECT_VALID(result); |
| 6377 EXPECT(Dart_IsLibrary(result)); | 6377 EXPECT(Dart_IsLibrary(result)); |
| 6378 EXPECT(Dart_IdentityEquals(lib, result)); | 6378 EXPECT(Dart_IdentityEquals(lib, result)); |
| 6379 | 6379 |
| 6380 // Duplicate calls are okay. | 6380 // Duplicate calls are okay. |
| 6381 result = Dart_LoadSource(lib, url, source); | 6381 result = Dart_LoadSource(lib, url, source, 0, 0); |
| 6382 EXPECT_VALID(result); | 6382 EXPECT_VALID(result); |
| 6383 EXPECT(Dart_IsLibrary(result)); | 6383 EXPECT(Dart_IsLibrary(result)); |
| 6384 EXPECT(Dart_IdentityEquals(lib, result)); | 6384 EXPECT(Dart_IdentityEquals(lib, result)); |
| 6385 | 6385 |
| 6386 // Language errors are detected. | 6386 // Language errors are detected. |
| 6387 source = NewString(kBadSourceChars); | 6387 source = NewString(kBadSourceChars); |
| 6388 result = Dart_LoadSource(lib, url, source); | 6388 result = Dart_LoadSource(lib, url, source, 0, 0); |
| 6389 EXPECT(Dart_IsError(result)); | 6389 EXPECT(Dart_IsError(result)); |
| 6390 } | 6390 } |
| 6391 | 6391 |
| 6392 | 6392 |
| 6393 TEST_CASE(LoadSource_LateLoad) { | 6393 TEST_CASE(LoadSource_LateLoad) { |
| 6394 const char* kLibrary1Chars = | 6394 const char* kLibrary1Chars = |
| 6395 "library library1_name;\n" | 6395 "library library1_name;\n" |
| 6396 "class OldClass {\n" | 6396 "class OldClass {\n" |
| 6397 " foo() => 'foo';\n" | 6397 " foo() => 'foo';\n" |
| 6398 "}\n"; | 6398 "}\n"; |
| 6399 const char* kSourceChars = | 6399 const char* kSourceChars = |
| 6400 "part of library1_name;\n" | 6400 "part of library1_name;\n" |
| 6401 "class NewClass extends OldClass{\n" | 6401 "class NewClass extends OldClass{\n" |
| 6402 " bar() => 'bar';\n" | 6402 " bar() => 'bar';\n" |
| 6403 "}\n"; | 6403 "}\n"; |
| 6404 Dart_Handle url = NewString("library1_url"); | 6404 Dart_Handle url = NewString("library1_url"); |
| 6405 Dart_Handle source = NewString(kLibrary1Chars); | 6405 Dart_Handle source = NewString(kLibrary1Chars); |
| 6406 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6406 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6407 EXPECT_VALID(lib); | 6407 EXPECT_VALID(lib); |
| 6408 EXPECT(Dart_IsLibrary(lib)); | 6408 EXPECT(Dart_IsLibrary(lib)); |
| 6409 Dart_Handle result = Dart_FinalizeLoading(false); | 6409 Dart_Handle result = Dart_FinalizeLoading(false); |
| 6410 EXPECT_VALID(result); | 6410 EXPECT_VALID(result); |
| 6411 | 6411 |
| 6412 // Call a dynamic function on OldClass. | 6412 // Call a dynamic function on OldClass. |
| 6413 Dart_Handle type = Dart_GetType(lib, NewString("OldClass"), 0, NULL); | 6413 Dart_Handle type = Dart_GetType(lib, NewString("OldClass"), 0, NULL); |
| 6414 EXPECT_VALID(type); | 6414 EXPECT_VALID(type); |
| 6415 Dart_Handle recv = Dart_New(type, Dart_Null(), 0, NULL); | 6415 Dart_Handle recv = Dart_New(type, Dart_Null(), 0, NULL); |
| 6416 result = Dart_Invoke(recv, NewString("foo"), 0, NULL); | 6416 result = Dart_Invoke(recv, NewString("foo"), 0, NULL); |
| 6417 EXPECT_VALID(result); | 6417 EXPECT_VALID(result); |
| 6418 EXPECT(Dart_IsString(result)); | 6418 EXPECT(Dart_IsString(result)); |
| 6419 const char* result_cstr = ""; | 6419 const char* result_cstr = ""; |
| 6420 EXPECT_VALID(Dart_StringToCString(result, &result_cstr)); | 6420 EXPECT_VALID(Dart_StringToCString(result, &result_cstr)); |
| 6421 EXPECT_STREQ("foo", result_cstr); | 6421 EXPECT_STREQ("foo", result_cstr); |
| 6422 | 6422 |
| 6423 // Load a source file late. | 6423 // Load a source file late. |
| 6424 url = NewString("source_url"); | 6424 url = NewString("source_url"); |
| 6425 source = NewString(kSourceChars); | 6425 source = NewString(kSourceChars); |
| 6426 EXPECT_VALID(Dart_LoadSource(lib, url, source)); | 6426 EXPECT_VALID(Dart_LoadSource(lib, url, source, 0, 0)); |
| 6427 result = Dart_FinalizeLoading(false); | 6427 result = Dart_FinalizeLoading(false); |
| 6428 EXPECT_VALID(result); | 6428 EXPECT_VALID(result); |
| 6429 | 6429 |
| 6430 // Call a dynamic function on NewClass in the updated library. | 6430 // Call a dynamic function on NewClass in the updated library. |
| 6431 type = Dart_GetType(lib, NewString("NewClass"), 0, NULL); | 6431 type = Dart_GetType(lib, NewString("NewClass"), 0, NULL); |
| 6432 EXPECT_VALID(type); | 6432 EXPECT_VALID(type); |
| 6433 recv = Dart_New(type, Dart_Null(), 0, NULL); | 6433 recv = Dart_New(type, Dart_Null(), 0, NULL); |
| 6434 result = Dart_Invoke(recv, NewString("bar"), 0, NULL); | 6434 result = Dart_Invoke(recv, NewString("bar"), 0, NULL); |
| 6435 EXPECT_VALID(result); | 6435 EXPECT_VALID(result); |
| 6436 EXPECT(Dart_IsString(result)); | 6436 EXPECT(Dart_IsString(result)); |
| 6437 result_cstr = ""; | 6437 result_cstr = ""; |
| 6438 EXPECT_VALID(Dart_StringToCString(result, &result_cstr)); | 6438 EXPECT_VALID(Dart_StringToCString(result, &result_cstr)); |
| 6439 EXPECT_STREQ("bar", result_cstr); | 6439 EXPECT_STREQ("bar", result_cstr); |
| 6440 } | 6440 } |
| 6441 | 6441 |
| 6442 | 6442 |
| 6443 TEST_CASE(LoadPatch) { | 6443 TEST_CASE(LoadPatch) { |
| 6444 const char* kLibrary1Chars = | 6444 const char* kLibrary1Chars = |
| 6445 "library library1_name;"; | 6445 "library library1_name;"; |
| 6446 const char* kSourceChars = | 6446 const char* kSourceChars = |
| 6447 "part of library1_name;\n" | 6447 "part of library1_name;\n" |
| 6448 "external int foo();"; | 6448 "external int foo();"; |
| 6449 const char* kPatchChars = | 6449 const char* kPatchChars = |
| 6450 "patch int foo() => 42;"; | 6450 "patch int foo() => 42;"; |
| 6451 | 6451 |
| 6452 // Load up a library. | 6452 // Load up a library. |
| 6453 Dart_Handle url = NewString("library1_url"); | 6453 Dart_Handle url = NewString("library1_url"); |
| 6454 Dart_Handle source = NewString(kLibrary1Chars); | 6454 Dart_Handle source = NewString(kLibrary1Chars); |
| 6455 Dart_Handle lib = Dart_LoadLibrary(url, source); | 6455 Dart_Handle lib = Dart_LoadLibrary(url, source, 0, 0); |
| 6456 EXPECT_VALID(lib); | 6456 EXPECT_VALID(lib); |
| 6457 EXPECT(Dart_IsLibrary(lib)); | 6457 EXPECT(Dart_IsLibrary(lib)); |
| 6458 | 6458 |
| 6459 url = NewString("source_url"); | 6459 url = NewString("source_url"); |
| 6460 source = NewString(kSourceChars); | 6460 source = NewString(kSourceChars); |
| 6461 | 6461 |
| 6462 Dart_Handle result = Dart_LoadSource(lib, url, source); | 6462 Dart_Handle result = Dart_LoadSource(lib, url, source, 0, 0); |
| 6463 EXPECT_VALID(result); | 6463 EXPECT_VALID(result); |
| 6464 | 6464 |
| 6465 url = NewString("patch_url"); | 6465 url = NewString("patch_url"); |
| 6466 source = NewString(kPatchChars); | 6466 source = NewString(kPatchChars); |
| 6467 | 6467 |
| 6468 result = Dart_LibraryLoadPatch(lib, url, source); | 6468 result = Dart_LibraryLoadPatch(lib, url, source); |
| 6469 EXPECT_VALID(result); | 6469 EXPECT_VALID(result); |
| 6470 result = Dart_FinalizeLoading(false); | 6470 result = Dart_FinalizeLoading(false); |
| 6471 EXPECT_VALID(result); | 6471 EXPECT_VALID(result); |
| 6472 | 6472 |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6577 ; // NOLINT | 6577 ; // NOLINT |
| 6578 | 6578 |
| 6579 bin::Builtin::SetNativeResolver(bin::Builtin::kBuiltinLibrary); | 6579 bin::Builtin::SetNativeResolver(bin::Builtin::kBuiltinLibrary); |
| 6580 bin::Builtin::SetNativeResolver(bin::Builtin::kIOLibrary); | 6580 bin::Builtin::SetNativeResolver(bin::Builtin::kIOLibrary); |
| 6581 | 6581 |
| 6582 Dart_Handle result = Dart_SetLibraryTagHandler(library_handler); | 6582 Dart_Handle result = Dart_SetLibraryTagHandler(library_handler); |
| 6583 EXPECT_VALID(result); | 6583 EXPECT_VALID(result); |
| 6584 | 6584 |
| 6585 Dart_Handle url = NewString("theLibrary"); | 6585 Dart_Handle url = NewString("theLibrary"); |
| 6586 Dart_Handle source = NewString(kLibraryChars); | 6586 Dart_Handle source = NewString(kLibraryChars); |
| 6587 result = Dart_LoadLibrary(url, source); | 6587 result = Dart_LoadLibrary(url, source, 0, 0); |
| 6588 EXPECT_VALID(result); | 6588 EXPECT_VALID(result); |
| 6589 | 6589 |
| 6590 const char* patchNames[] = { "main library patch", | 6590 const char* patchNames[] = { "main library patch", |
| 6591 "patch class only", | 6591 "patch class only", |
| 6592 "patch no class" }; | 6592 "patch no class" }; |
| 6593 const char* patches[] = { kPatchChars, | 6593 const char* patches[] = { kPatchChars, |
| 6594 kPatchClassOnlyChars, | 6594 kPatchClassOnlyChars, |
| 6595 kPatchNoClassChars }; | 6595 kPatchNoClassChars }; |
| 6596 const String& lib_url = String::Handle(String::New("theLibrary")); | 6596 const String& lib_url = String::Handle(String::New("theLibrary")); |
| 6597 | 6597 |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6801 Dart_Handle result; | 6801 Dart_Handle result; |
| 6802 // Create a test library and Load up a test script in it. | 6802 // Create a test library and Load up a test script in it. |
| 6803 Dart_Handle url = NewString(TestCase::url()); | 6803 Dart_Handle url = NewString(TestCase::url()); |
| 6804 Dart_Handle source = NewString(kScriptChars); | 6804 Dart_Handle source = NewString(kScriptChars); |
| 6805 result = Dart_SetLibraryTagHandler(library_handler); | 6805 result = Dart_SetLibraryTagHandler(library_handler); |
| 6806 EXPECT_VALID(result); | 6806 EXPECT_VALID(result); |
| 6807 result = Dart_LoadScript(url, source, 0, 0); | 6807 result = Dart_LoadScript(url, source, 0, 0); |
| 6808 | 6808 |
| 6809 url = NewString("library1_dart"); | 6809 url = NewString("library1_dart"); |
| 6810 source = NewString(kLibrary1Chars); | 6810 source = NewString(kLibrary1Chars); |
| 6811 Dart_LoadLibrary(url, source); | 6811 Dart_LoadLibrary(url, source, 0, 0); |
| 6812 | 6812 |
| 6813 url = NewString("library2_dart"); | 6813 url = NewString("library2_dart"); |
| 6814 source = NewString(kLibrary2Chars); | 6814 source = NewString(kLibrary2Chars); |
| 6815 Dart_LoadLibrary(url, source); | 6815 Dart_LoadLibrary(url, source, 0, 0); |
| 6816 | 6816 |
| 6817 Dart_FinalizeLoading(false); | 6817 Dart_FinalizeLoading(false); |
| 6818 | 6818 |
| 6819 result = Dart_Invoke(result, NewString("main"), 0, NULL); | 6819 result = Dart_Invoke(result, NewString("main"), 0, NULL); |
| 6820 EXPECT_VALID(result); | 6820 EXPECT_VALID(result); |
| 6821 } | 6821 } |
| 6822 | 6822 |
| 6823 | 6823 |
| 6824 // Test that if the same name is imported from two libraries, it is | 6824 // Test that if the same name is imported from two libraries, it is |
| 6825 // an error if that name is referenced. | 6825 // an error if that name is referenced. |
| (...skipping 14 matching lines...) Expand all Loading... |
| 6840 // Create a test library and Load up a test script in it. | 6840 // Create a test library and Load up a test script in it. |
| 6841 Dart_Handle url = NewString(TestCase::url()); | 6841 Dart_Handle url = NewString(TestCase::url()); |
| 6842 Dart_Handle source = NewString(kScriptChars); | 6842 Dart_Handle source = NewString(kScriptChars); |
| 6843 result = Dart_SetLibraryTagHandler(library_handler); | 6843 result = Dart_SetLibraryTagHandler(library_handler); |
| 6844 EXPECT_VALID(result); | 6844 EXPECT_VALID(result); |
| 6845 result = Dart_LoadScript(url, source, 0, 0); | 6845 result = Dart_LoadScript(url, source, 0, 0); |
| 6846 EXPECT_VALID(result); | 6846 EXPECT_VALID(result); |
| 6847 | 6847 |
| 6848 url = NewString("library2_dart"); | 6848 url = NewString("library2_dart"); |
| 6849 source = NewString(kLibrary2Chars); | 6849 source = NewString(kLibrary2Chars); |
| 6850 Dart_LoadLibrary(url, source); | 6850 Dart_LoadLibrary(url, source, 0, 0); |
| 6851 | 6851 |
| 6852 url = NewString("library1_dart"); | 6852 url = NewString("library1_dart"); |
| 6853 source = NewString(kLibrary1Chars); | 6853 source = NewString(kLibrary1Chars); |
| 6854 Dart_LoadLibrary(url, source); | 6854 Dart_LoadLibrary(url, source, 0, 0); |
| 6855 result = Dart_FinalizeLoading(false); | 6855 result = Dart_FinalizeLoading(false); |
| 6856 EXPECT_VALID(result); | 6856 EXPECT_VALID(result); |
| 6857 | 6857 |
| 6858 result = Dart_Invoke(result, NewString("main"), 0, NULL); | 6858 result = Dart_Invoke(result, NewString("main"), 0, NULL); |
| 6859 EXPECT(Dart_IsError(result)); | 6859 EXPECT(Dart_IsError(result)); |
| 6860 EXPECT_SUBSTRING("NoSuchMethodError", Dart_GetError(result)); | 6860 EXPECT_SUBSTRING("NoSuchMethodError", Dart_GetError(result)); |
| 6861 } | 6861 } |
| 6862 | 6862 |
| 6863 | 6863 |
| 6864 // Test that if the same name is imported from two libraries, it is | 6864 // Test that if the same name is imported from two libraries, it is |
| (...skipping 14 matching lines...) Expand all Loading... |
| 6879 // Create a test library and Load up a test script in it. | 6879 // Create a test library and Load up a test script in it. |
| 6880 Dart_Handle url = NewString(TestCase::url()); | 6880 Dart_Handle url = NewString(TestCase::url()); |
| 6881 Dart_Handle source = NewString(kScriptChars); | 6881 Dart_Handle source = NewString(kScriptChars); |
| 6882 result = Dart_SetLibraryTagHandler(library_handler); | 6882 result = Dart_SetLibraryTagHandler(library_handler); |
| 6883 EXPECT_VALID(result); | 6883 EXPECT_VALID(result); |
| 6884 result = Dart_LoadScript(url, source, 0, 0); | 6884 result = Dart_LoadScript(url, source, 0, 0); |
| 6885 EXPECT_VALID(result); | 6885 EXPECT_VALID(result); |
| 6886 | 6886 |
| 6887 url = NewString("library2_dart"); | 6887 url = NewString("library2_dart"); |
| 6888 source = NewString(kLibrary2Chars); | 6888 source = NewString(kLibrary2Chars); |
| 6889 Dart_LoadLibrary(url, source); | 6889 Dart_LoadLibrary(url, source, 0, 0); |
| 6890 | 6890 |
| 6891 url = NewString("library1_dart"); | 6891 url = NewString("library1_dart"); |
| 6892 source = NewString(kLibrary1Chars); | 6892 source = NewString(kLibrary1Chars); |
| 6893 Dart_LoadLibrary(url, source); | 6893 Dart_LoadLibrary(url, source, 0, 0); |
| 6894 Dart_FinalizeLoading(false); | 6894 Dart_FinalizeLoading(false); |
| 6895 | 6895 |
| 6896 result = Dart_Invoke(result, NewString("main"), 0, NULL); | 6896 result = Dart_Invoke(result, NewString("main"), 0, NULL); |
| 6897 EXPECT_VALID(result); | 6897 EXPECT_VALID(result); |
| 6898 } | 6898 } |
| 6899 | 6899 |
| 6900 | 6900 |
| 6901 TEST_CASE(ImportLibrary5) { | 6901 TEST_CASE(ImportLibrary5) { |
| 6902 const char* kScriptChars = | 6902 const char* kScriptChars = |
| 6903 "import 'lib.dart';\n" | 6903 "import 'lib.dart';\n" |
| (...skipping 10 matching lines...) Expand all Loading... |
| 6914 | 6914 |
| 6915 // Create a test library and Load up a test script in it. | 6915 // Create a test library and Load up a test script in it. |
| 6916 Dart_Handle url = NewString(TestCase::url()); | 6916 Dart_Handle url = NewString(TestCase::url()); |
| 6917 Dart_Handle source = NewString(kScriptChars); | 6917 Dart_Handle source = NewString(kScriptChars); |
| 6918 result = Dart_SetLibraryTagHandler(library_handler); | 6918 result = Dart_SetLibraryTagHandler(library_handler); |
| 6919 EXPECT_VALID(result); | 6919 EXPECT_VALID(result); |
| 6920 result = Dart_LoadScript(url, source, 0, 0); | 6920 result = Dart_LoadScript(url, source, 0, 0); |
| 6921 | 6921 |
| 6922 url = NewString("lib.dart"); | 6922 url = NewString("lib.dart"); |
| 6923 source = NewString(kLibraryChars); | 6923 source = NewString(kLibraryChars); |
| 6924 Dart_LoadLibrary(url, source); | 6924 Dart_LoadLibrary(url, source, 0, 0); |
| 6925 Dart_FinalizeLoading(false); | 6925 Dart_FinalizeLoading(false); |
| 6926 | 6926 |
| 6927 result = Dart_Invoke(result, NewString("main"), 0, NULL); | 6927 result = Dart_Invoke(result, NewString("main"), 0, NULL); |
| 6928 EXPECT_VALID(result); | 6928 EXPECT_VALID(result); |
| 6929 } | 6929 } |
| 6930 | 6930 |
| 6931 | 6931 |
| 6932 void NewNativePort_send123(Dart_Port dest_port_id, | 6932 void NewNativePort_send123(Dart_Port dest_port_id, |
| 6933 Dart_CObject *message) { | 6933 Dart_CObject *message) { |
| 6934 // Gets a send port message. | 6934 // Gets a send port message. |
| (...skipping 1458 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8393 Dart_Handle result; | 8393 Dart_Handle result; |
| 8394 // Create a test library and Load up a test script in it. | 8394 // Create a test library and Load up a test script in it. |
| 8395 Dart_Handle lib1 = TestCase::LoadTestScript(kLoadFirst, NULL); | 8395 Dart_Handle lib1 = TestCase::LoadTestScript(kLoadFirst, NULL); |
| 8396 Dart_Handle dart_args[1]; | 8396 Dart_Handle dart_args[1]; |
| 8397 dart_args[0] = Dart_NewInteger(0); | 8397 dart_args[0] = Dart_NewInteger(0); |
| 8398 result = Dart_Invoke(lib1, NewString("start"), 1, dart_args); | 8398 result = Dart_Invoke(lib1, NewString("start"), 1, dart_args); |
| 8399 EXPECT_VALID(result); | 8399 EXPECT_VALID(result); |
| 8400 | 8400 |
| 8401 Dart_Handle source = NewString(kLoadSecond); | 8401 Dart_Handle source = NewString(kLoadSecond); |
| 8402 Dart_Handle url = NewString(TestCase::url()); | 8402 Dart_Handle url = NewString(TestCase::url()); |
| 8403 Dart_LoadSource(TestCase::lib(), url, source); | 8403 Dart_LoadSource(TestCase::lib(), url, source, 0, 0); |
| 8404 result = Dart_FinalizeLoading(false); | 8404 result = Dart_FinalizeLoading(false); |
| 8405 EXPECT_VALID(result); | 8405 EXPECT_VALID(result); |
| 8406 | 8406 |
| 8407 dart_args[0] = Dart_NewInteger(1); | 8407 dart_args[0] = Dart_NewInteger(1); |
| 8408 result = Dart_Invoke(lib1, NewString("start"), 1, dart_args); | 8408 result = Dart_Invoke(lib1, NewString("start"), 1, dart_args); |
| 8409 EXPECT_VALID(result); | 8409 EXPECT_VALID(result); |
| 8410 } | 8410 } |
| 8411 | 8411 |
| 8412 | 8412 |
| 8413 // Test external strings and optimized code. | 8413 // Test external strings and optimized code. |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8606 NewString("main"), | 8606 NewString("main"), |
| 8607 1, | 8607 1, |
| 8608 dart_args); | 8608 dart_args); |
| 8609 int64_t value = 0; | 8609 int64_t value = 0; |
| 8610 result = Dart_IntegerToInt64(result, &value); | 8610 result = Dart_IntegerToInt64(result, &value); |
| 8611 EXPECT_VALID(result); | 8611 EXPECT_VALID(result); |
| 8612 EXPECT_EQ(6, value); | 8612 EXPECT_EQ(6, value); |
| 8613 } | 8613 } |
| 8614 | 8614 |
| 8615 } // namespace dart | 8615 } // namespace dart |
| OLD | NEW |