| Index: test/cctest/test-weaktypedarrays.cc
|
| diff --git a/test/cctest/test-weaktypedarrays.cc b/test/cctest/test-weaktypedarrays.cc
|
| index d9432a9eecac65ed97b286f1c33e222e958f87f8..6d0a247f537464b1e54b170d95cff625e068ede4 100644
|
| --- a/test/cctest/test-weaktypedarrays.cc
|
| +++ b/test/cctest/test-weaktypedarrays.cc
|
| @@ -62,22 +62,22 @@ static bool HasArrayBufferInWeakList(Heap* heap, JSArrayBuffer* ab) {
|
| }
|
|
|
|
|
| -static int CountTypedArrays(JSArrayBuffer* array_buffer) {
|
| +static int CountViews(JSArrayBuffer* array_buffer) {
|
| int count = 0;
|
| - for (Object* o = array_buffer->weak_first_array();
|
| + for (Object* o = array_buffer->weak_first_view();
|
| !o->IsUndefined();
|
| - o = JSTypedArray::cast(o)->weak_next()) {
|
| + o = JSArrayBufferView::cast(o)->weak_next()) {
|
| count++;
|
| }
|
|
|
| return count;
|
| }
|
|
|
| -static bool HasTypedArrayInWeakList(JSArrayBuffer* array_buffer,
|
| - JSTypedArray* ta) {
|
| - for (Object* o = array_buffer->weak_first_array();
|
| +static bool HasViewInWeakList(JSArrayBuffer* array_buffer,
|
| + JSObject* ta) {
|
| + for (Object* o = array_buffer->weak_first_view();
|
| !o->IsUndefined();
|
| - o = JSTypedArray::cast(o)->weak_next()) {
|
| + o = JSArrayBufferView::cast(o)->weak_next()) {
|
| if (ta == o) return true;
|
| }
|
| return false;
|
| @@ -196,18 +196,18 @@ void TestTypedArrayFromApi() {
|
|
|
| Handle<JSTypedArray> ita1 = v8::Utils::OpenHandle(*ta1);
|
| Handle<JSTypedArray> ita2 = v8::Utils::OpenHandle(*ta2);
|
| - CHECK_EQ(2, CountTypedArrays(*iab));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *ita1));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *ita2));
|
| + CHECK_EQ(2, CountViews(*iab));
|
| + CHECK(HasViewInWeakList(*iab, *ita1));
|
| + CHECK(HasViewInWeakList(*iab, *ita2));
|
| }
|
| isolate->heap()->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
| - CHECK_EQ(1, CountTypedArrays(*iab));
|
| + CHECK_EQ(1, CountViews(*iab));
|
| Handle<JSTypedArray> ita1 = v8::Utils::OpenHandle(*ta1);
|
| - CHECK(HasTypedArrayInWeakList(*iab, *ita1));
|
| + CHECK(HasViewInWeakList(*iab, *ita1));
|
| }
|
| isolate->heap()->CollectAllGarbage(Heap::kAbortIncrementalMarkingMask);
|
|
|
| - CHECK_EQ(0, CountTypedArrays(*iab));
|
| + CHECK_EQ(0, CountViews(*iab));
|
| }
|
|
|
|
|
| @@ -289,10 +289,10 @@ static void TestTypedArrayFromScript(const char* constructor) {
|
| v8::Handle<TypedArray>::Cast(CompileRun("ta3"));
|
| CHECK_EQ(1, CountArrayBuffersInWeakList(isolate->heap()));
|
| Handle<JSArrayBuffer> iab = v8::Utils::OpenHandle(*ab);
|
| - CHECK_EQ(3, CountTypedArrays(*iab));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *v8::Utils::OpenHandle(*ta1)));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *v8::Utils::OpenHandle(*ta2)));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *v8::Utils::OpenHandle(*ta3)));
|
| + CHECK_EQ(3, CountViews(*iab));
|
| + CHECK(HasViewInWeakList(*iab, *v8::Utils::OpenHandle(*ta1)));
|
| + CHECK(HasViewInWeakList(*iab, *v8::Utils::OpenHandle(*ta2)));
|
| + CHECK(HasViewInWeakList(*iab, *v8::Utils::OpenHandle(*ta3)));
|
| }
|
|
|
| i::OS::SNPrintF(source, "ta%d = null;", i);
|
| @@ -306,13 +306,13 @@ static void TestTypedArrayFromScript(const char* constructor) {
|
| v8::Handle<v8::ArrayBuffer> ab =
|
| v8::Handle<v8::ArrayBuffer>::Cast(CompileRun("ab"));
|
| Handle<JSArrayBuffer> iab = v8::Utils::OpenHandle(*ab);
|
| - CHECK_EQ(2, CountTypedArrays(*iab));
|
| + CHECK_EQ(2, CountViews(*iab));
|
| for (int j = 1; j <= 3; j++) {
|
| if (j == i) continue;
|
| i::OS::SNPrintF(source, "ta%d", j);
|
| v8::Handle<TypedArray> ta =
|
| v8::Handle<TypedArray>::Cast(CompileRun(source.start()));
|
| - CHECK(HasTypedArrayInWeakList(*iab, *v8::Utils::OpenHandle(*ta)));
|
| + CHECK(HasViewInWeakList(*iab, *v8::Utils::OpenHandle(*ta)));
|
| }
|
| }
|
|
|
| @@ -326,7 +326,7 @@ static void TestTypedArrayFromScript(const char* constructor) {
|
| v8::Handle<v8::ArrayBuffer> ab =
|
| v8::Handle<v8::ArrayBuffer>::Cast(CompileRun("ab"));
|
| Handle<JSArrayBuffer> iab = v8::Utils::OpenHandle(*ab);
|
| - CHECK_EQ(0, CountTypedArrays(*iab));
|
| + CHECK_EQ(0, CountViews(*iab));
|
| }
|
| }
|
| }
|
| @@ -376,3 +376,7 @@ TEST(Uint8ClampedArrayFromScript) {
|
| TestTypedArrayFromScript<v8::Uint8ClampedArray>("Uint8ClampedArray");
|
| }
|
|
|
| +
|
| +TEST(DataViewFromScript) {
|
| + TestTypedArrayFromScript<v8::Object>("DataView");
|
| +}
|
|
|