Ctrl K
ComunidadGuías…

test/session-store.test.js

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
"use strict";

const assert = require("assert");
const fs = require("fs");
const os = require("os");
const path = require("path");
const SessionStore = require("../lib/session-store");

const dir = fs.mkdtempSync(path.join(os.tmpdir(), "c9-store-"));
const file = path.join(dir, "session.json");
const store = new SessionStore(file);

store.change((state) => {
  state.layout = { type: "leaf", _id: 1, active: null, tabs: [] };
  state.docs["demo.txt"] = {
    path: "demo.txt",
    content: "unsaved",
    dirty: true,
    revision: 1,
  };
});
store.flush();

const restored = new SessionStore(file);
assert.strictEqual(restored.state.docs["demo.txt"].content, "unsaved");
assert.strictEqual(restored.state.docs["demo.txt"].dirty, true);
assert.strictEqual(restored.state.layout.type, "leaf");
assert.ok(restored.state.revision > 0);

fs.rmSync ? fs.rmSync(dir, { recursive: true, force: true }) : fs.rmdirSync(dir, { recursive: true });
console.log("session-store: ok");