// Copyright 2019 the V8 project authors. All rights reserved.// Use of this source code is governed by a BSD-style license that can be// found in the LICENSE file.
// Test wasm compilation explicitly, since this creates a promise which is only// resolved later, i.e. the message queue gets empty in-between.// The important part here is that d8 exits with a non-zero exit code.load('test/mjsunit/mjsunit.js');load('test/mjsunit/wasm/wasm-module-builder.js');assertPromiseResult((asyncfunctiontest(){letok_buffer=(()=>{letbuilder=newWasmModuleBuilder();builder.addFunction(undefined,kSig_i_v).addBody([kExprI32Const,42]);returnbuilder.toBuffer();})();letbad_buffer=newArrayBuffer(0);letkNumCompiles=3;// Three compilations of the OK module should succeed.for(vari=0;i<kNumCompiles;++i){awaitWebAssembly.compile(ok_buffer);}// Three compilations of the bad module should fail.for(vari=0;i<kNumCompiles;++i){awaitWebAssembly.compile(bad_buffer);}})());