const fs = require('fs'); const fsp = require('fs').promises; const { rmdir } = require('./../utils') jest.mock('got'); const md5 = require('md5') const { receive } = require('../../src/pingback/receive') const dumpdir = 'data/brainbaking.com' describe("receive pingback process tests happy path", () => { beforeEach(() => { if(fs.existsSync(dumpdir)) { rmdir(dumpdir) } fs.mkdirSync(dumpdir, { recursive: true }) }) function asFilename(body) { return `${dumpdir}/` + md5(`source=${body.source},target=${body.target}`) } test("receive a pingback processes it just like a webmention", async () => { const body = { source: "https://brainbaking.com/valid-bridgy-twitter-source.html", target: "https://brainbaking.com/post/2021/03/the-indieweb-mixed-bag" } await receive(` pingback.ping ${body.source} ${body.target} `) const result = await fsp.readFile(`${asFilename(body)}.json`, 'utf-8') const data = JSON.parse(result) expect(data.content).toContain("Recommended read:") }) })