blob: 483c2252f97268a76936e2871042a79c0510e8df [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 'dart:typed_data';
import 'package:test/test.dart';
import 'package:wasm/wasm.dart';
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);
});
}