public void JsDataViewInfoCanBeRetrieved() { using (var runtimeHandle = Engine.JsCreateRuntime(JavaScriptRuntimeAttributes.None, null)) { using (var contextHandle = Engine.JsCreateContext(runtimeHandle)) { Engine.JsSetCurrentContext(contextHandle); var arrayBufferHandle = Engine.JsCreateArrayBuffer(50); var dataViewHandle = Engine.JsCreateDataView(arrayBufferHandle, 0, 50); Assert.True(dataViewHandle != JavaScriptValueSafeHandle.Invalid); var handleType = Engine.JsGetValueType(dataViewHandle); Assert.True(handleType == JsValueType.DataView); var dataViewInfoHandle = Engine.JsGetDataViewInfo(dataViewHandle, out uint byteOffset, out uint byteLength); Assert.True(byteOffset == 0); Assert.True(byteLength == 50); Assert.True(dataViewInfoHandle != JavaScriptValueSafeHandle.Invalid); handleType = Engine.JsGetValueType(dataViewInfoHandle); Assert.True(handleType == JsValueType.ArrayBuffer); dataViewInfoHandle.Dispose(); arrayBufferHandle.Dispose(); dataViewHandle.Dispose(); } } }