Record upload IP and add dated administrative key reports
This commit is contained in:
@@ -71,11 +71,23 @@ describe("online backup client and service", () => {
|
||||
const listed = run("list", rootDir);
|
||||
expect(listed.status).toBe(0);
|
||||
expect(JSON.parse(listed.stdout).id).toBe(stored.id);
|
||||
expect(JSON.parse(listed.stdout).sourceIp).toBe("127.0.0.1");
|
||||
expect(listed.stdout).not.toContain(created.key);
|
||||
const recovered = run("recover", rootDir, stored.id, privateFile, outputFile);
|
||||
expect(recovered.status).toBe(0);
|
||||
expect(recovered.stdout + recovered.stderr).not.toContain(created.key);
|
||||
expect((await fs.promises.readFile(outputFile, "utf8")).trim()).toBe(created.key);
|
||||
const reportFile = path.join(directory, "report.txt");
|
||||
const report = run("recover", rootDir, stored.id, privateFile, reportFile, "--with-metadata");
|
||||
expect(report.status).toBe(0);
|
||||
expect(report.stdout + report.stderr).not.toContain(created.key);
|
||||
expect(await fs.promises.readFile(reportFile, "utf8")).toMatch(new RegExp(`^\\d{2}\\.\\d{2}\\.\\d{4} - \\d{2}:\\d{2} \\| IP: 127\\.0\\.0\\.1 \\| Schlüssel: ${created.key}\\n$`));
|
||||
const legacyFile = path.join(directory, "legacy-report.txt");
|
||||
const legacyRecord = { ...JSON.parse(raw) };
|
||||
delete legacyRecord.sourceIp;
|
||||
await fs.promises.writeFile(path.join(rootDir, `${stored.id}.json`), JSON.stringify(legacyRecord));
|
||||
expect(run("recover", rootDir, stored.id, privateFile, legacyFile, "--with-metadata").status).toBe(0);
|
||||
expect(await fs.promises.readFile(legacyFile, "utf8")).toContain(` | IP: unbekannt | Schlüssel: ${created.key}`);
|
||||
expect(run("recover", rootDir, stored.id, privateFile, outputFile).status).toBe(1);
|
||||
expect(run("recover", rootDir, "../invalid", privateFile, outputFile).status).toBe(1);
|
||||
expect(run("recover", rootDir, stored.id, privateFile, path.join(rootDir, "leaked.txt")).status).toBe(1);
|
||||
|
||||
Reference in New Issue
Block a user