blob: 95ea28850cd5ba022130f6b1b4dec0329a1a5d52 [file] [log] [blame]
// Copyright (c) 2021, 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.
// Test that we can create a WasmMemory, edit it, and grow it.
import "package:test/test.dart";
import "package:wasm/wasm.dart";
import "dart:typed_data";
void main() {
test("memory", () {
// Empty wasm module.
var data = Uint8List.fromList([
0x00, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00, 0x06, 0x81, 0x00, 0x00,
]);
var module = WasmModule(data);
var mem = module.createMemory(100);
expect(mem.lengthInPages, 100);
expect(mem.lengthInBytes, 100 * WasmMemory.kPageSizeInBytes);
mem[123] = 45;
expect(mem[123], 45);
mem.grow(10);
expect(mem.lengthInPages, 110);
expect(mem.lengthInBytes, 110 * WasmMemory.kPageSizeInBytes);
expect(mem[123], 45);
});
}