chore: code formatting

This commit is contained in:
github-actions[bot]
2022-01-27 02:02:31 +00:00
parent 1982162ba6
commit 3ecb385154
2 changed files with 22 additions and 19 deletions

View File

@@ -1,10 +1,10 @@
//Imports //Imports
import fs from "fs/promises"
import processes from "child_process" import processes from "child_process"
import yaml from "js-yaml" import yaml from "js-yaml"
import sgit from "simple-git"
import paths from "path" import paths from "path"
import sgit from "simple-git"
import url from "url" import url from "url"
import fs from "fs/promises"
//Mode //Mode
const [mode = "dryrun"] = process.argv.slice(2) const [mode = "dryrun"] = process.argv.slice(2)
@@ -14,8 +14,8 @@ console.log(`Mode: ${mode}`)
const __metrics = paths.join(paths.dirname(url.fileURLToPath(import.meta.url)), "../..") const __metrics = paths.join(paths.dirname(url.fileURLToPath(import.meta.url)), "../..")
const __presets = paths.join(__metrics, ".presets") const __presets = paths.join(__metrics, ".presets")
if ((!await fs.access(__presets).then(_ => true).catch(_ => false))||(!(await fs.lstat(__presets)).isDirectory())) if ((!await fs.access(__presets).then(_ => true).catch(_ => false)) || (!(await fs.lstat(__presets)).isDirectory()))
await sgit().clone(`https://github-actions[bot]:${process.env.GITHUB_TOKEN}@github.com/lowlighter/metrics`, __presets, {"--branch":"presets", "--single-branch":true}) await sgit().clone(`https://github-actions[bot]:${process.env.GITHUB_TOKEN}@github.com/lowlighter/metrics`, __presets, { "--branch": "presets", "--single-branch": true })
const git = sgit(__presets) const git = sgit(__presets)
await git.pull() await git.pull()
const staged = new Set() const staged = new Set()
@@ -49,14 +49,16 @@ for (const path of await fs.readdir(__presets)) {
//Example //Example
console.log(`generating: ${preset}/example.svg`) console.log(`generating: ${preset}/example.svg`)
const svg = await action.run({config_presets:`@${preset}`, debug_print: true, plugins_errors_fatal: true, dryrun: true, use_mocked_data: true, verify: true, token:"MOCKED_TOKEN"}) const svg = await action.run({ config_presets: `@${preset}`, debug_print: true, plugins_errors_fatal: true, dryrun: true, use_mocked_data: true, verify: true, token: "MOCKED_TOKEN" })
await fs.writeFile(paths.join(__presets, path, "example.svg"), svg) await fs.writeFile(paths.join(__presets, path, "example.svg"), svg)
staged.add(paths.join(__presets, path, "example.svg")) staged.add(paths.join(__presets, path, "example.svg"))
//Readme //Readme
console.log(`generating: ${preset}/README.svg`) console.log(`generating: ${preset}/README.svg`)
const {name, description} = await yaml.load(await fs.readFile(paths.join(__presets, preset, "preset.yml"))) const { name, description } = await yaml.load(await fs.readFile(paths.join(__presets, preset, "preset.yml")))
await fs.writeFile(paths.join(__presets, path, "README.md"), ` await fs.writeFile(
paths.join(__presets, path, "README.md"),
`
<table> <table>
<tr><th><h3>${name}</h3></th></tr> <tr><th><h3>${name}</h3></th></tr>
<tr><td align="center"><p>${description}</p></td></tr> <tr><td align="center"><p>${description}</p></td></tr>
@@ -65,7 +67,8 @@ for (const path of await fs.readdir(__presets)) {
<img width="900" height="1" alt=""> <img width="900" height="1" alt="">
</td></tr> </td></tr>
</table> </table>
`.trim()) `.trim(),
)
staged.add(paths.join(__presets, path, "README.md")) staged.add(paths.join(__presets, path, "README.md"))
} }
@@ -78,6 +81,6 @@ if (mode === "publish") {
.add([...staged]) .add([...staged])
.commit("ci: auto-regenerate files") .commit("ci: auto-regenerate files")
.push("origin", "presets") .push("origin", "presets")
console.log(gitted) console.log(gitted)
} }
console.log("Success!") console.log("Success!")

View File

@@ -30,21 +30,21 @@ for (const path of fss.readdirSync(__presets)) {
test("syntax is valid", () => expect(true).toBe(true)) test("syntax is valid", () => expect(true).toBe(true))
try { try {
//Load schema //Load schema
const {properties} = yaml.load(fss.readFileSync(paths.join(__presets, "@schema", `${preset.schema}.yml`))) const { properties } = yaml.load(fss.readFileSync(paths.join(__presets, "@schema", `${preset.schema}.yml`)))
test("schema is valid", () => expect(preset.schema).toBeDefined()) test("schema is valid", () => expect(preset.schema).toBeDefined())
//Test schema //Test schema
for (const [key, {type, required}] of Object.entries(properties)) { for (const [key, { type, required }] of Object.entries(properties)) {
if (required) if (required)
test(`preset.${key} is defined`, () => expect(preset[key]).toBeDefined()) test(`preset.${key} is defined`, () => expect(preset[key]).toBeDefined())
test(`preset.${key} type is ${type}`, () => { test(`preset.${key} type is ${type}`, () => {
switch (true) { switch (true) {
case /^'.*'$/.test(type):{ case /^'.*'$/.test(type): {
const value = type.substring(1, type.length-1) const value = type.substring(1, type.length - 1)
expect(preset[key]).toBe(value) expect(preset[key]).toBe(value)
return return
} }
case /\{\}$/.test(type):{ case /\{\}$/.test(type): {
const typed = type.substring(0, type.length-2) const typed = type.substring(0, type.length - 2)
expect(typeof preset[key]).toBe("object") expect(typeof preset[key]).toBe("object")
if (typed !== "unknown") { if (typed !== "unknown") {
for (const value of Object.values(preset[key])) for (const value of Object.values(preset[key]))
@@ -52,8 +52,8 @@ for (const path of fss.readdirSync(__presets)) {
} }
return return
} }
case /\[\]$/.test(type):{ case /\[\]$/.test(type): {
const typed = type.substring(0, type.length-2) const typed = type.substring(0, type.length - 2)
expect(Array.isArray(preset[key])).toBe(true) expect(Array.isArray(preset[key])).toBe(true)
if (typed !== "unknown") { if (typed !== "unknown") {
for (const value of Object.values(preset[key])) for (const value of Object.values(preset[key]))
@@ -75,4 +75,4 @@ for (const path of fss.readdirSync(__presets)) {
test("syntax is valid", () => expect(false).toBe(true)) test("syntax is valid", () => expect(false).toBe(true))
} }
}) })
} }