update:
This commit is contained in:
39
test/frp-config.test.js
Normal file
39
test/frp-config.test.js
Normal file
@@ -0,0 +1,39 @@
|
||||
"use strict";
|
||||
|
||||
const assert = require("node:assert/strict");
|
||||
const test = require("node:test");
|
||||
|
||||
const { parseFrpConfig, renderParsedFrpConfig } = require("../src/cli");
|
||||
|
||||
test("parses and renders frp proxy sections", () => {
|
||||
const parsed = parseFrpConfig(`server_addr = "81.70.134.9"
|
||||
server_port = 15443
|
||||
token = "secret"
|
||||
|
||||
[ssh]
|
||||
type = "tcp"
|
||||
local_ip = "127.0.0.1"
|
||||
local_port = 22
|
||||
remote_port = 17227
|
||||
`);
|
||||
|
||||
assert.equal(parsed.sections.get("ssh").values.local_port, 22);
|
||||
assert.equal(parsed.sections.get("ssh").values.remote_port, 17227);
|
||||
|
||||
parsed.sections.set("mysql", {
|
||||
name: "mysql",
|
||||
values: {
|
||||
type: "tcp",
|
||||
local_ip: "127.0.0.1",
|
||||
local_port: 3306,
|
||||
remote_port: 33061,
|
||||
},
|
||||
});
|
||||
|
||||
const rendered = renderParsedFrpConfig(parsed);
|
||||
|
||||
assert.match(rendered, /\[ssh]/);
|
||||
assert.match(rendered, /local_port = 22/);
|
||||
assert.match(rendered, /\[mysql]/);
|
||||
assert.match(rendered, /remote_port = 33061/);
|
||||
});
|
||||
Reference in New Issue
Block a user