NETSCRIPT: Rework script ram updates (#408)

This commit is contained in:
Snarling
2023-03-05 22:39:42 -05:00
committed by GitHub
parent 14aafbe0a3
commit 759f86d6e5
24 changed files with 171 additions and 177 deletions

View File

@@ -36,8 +36,11 @@ describe("Netscript RAM Calculation/Generation Tests", function () {
/** Creates a RunningScript object which calculates static ram usage */
function createRunningScript(code: string) {
script.code = code;
script.updateRamUsage([]);
const runningScript = new RunningScript(script);
// Force ram calculation reset
script.ramUsage = null;
const ramUsage = script.getRamUsage([]);
if (!ramUsage) throw new Error("Ram usage should be defined.");
const runningScript = new RunningScript(script, ramUsage);
return runningScript;
}

View File

@@ -52,7 +52,7 @@ test.each([
const alerted = new Promise((resolve) => {
alertDelete = AlertEvents.subscribe((x) => resolve(x));
});
server = new Server({ hostname: "home", hasAdminRights: true, maxRam: 8 });
server = new Server({ hostname: "home", adminRights: true, maxRam: 8 });
AddToAllServers(server);
for (const s of scripts) {
expect(server.writeToScriptFile(s.name, s.code)).toEqual({ success: true, overwritten: false });
@@ -61,8 +61,8 @@ test.each([
const script = server.scripts[server.scripts.length - 1];
expect(script.filename).toEqual(scripts[scripts.length - 1].name);
const runningScript = new RunningScript(script);
runningScript.threads = 1;
const ramUsage = script.getRamUsage(server.scripts);
const runningScript = new RunningScript(script, ramUsage as number);
expect(startWorkerScript(runningScript, server)).toBeGreaterThan(0);
// We don't care about start, so subscribe after that. Await script death.
const result = await Promise.race([