e2e testing framework-ish for obsidian plugins
☙◦ The Tablet ❀ GamerGirlandCo ◦❧
b1d0453723
All checks were successful
Playwright Tests / test (push) Successful in 2m35s
This reverts commit 13c76cf3e5c403cad23088fb413fcff6167f9bee. |
||
---|---|---|
.github/workflows | ||
.vscode | ||
.yarn | ||
packages | ||
vault | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.yarnrc.yml | ||
package.json | ||
README.md | ||
yarn.lock |
the Obsidian Testing Framework
what is this?
this is a library that (finally!) lets you end-to-end test your obsidian plugins. it uses playwright to interact with obsidian, which is an Electron app under the hood.
great! how do i use it?
basic usage
import {test} from "obsidian-testing-library";
test('obsidian app url', async ({ page }) => {
console.log(page.url());
expect(/obsidian\.md/i.test(page.url())).toBeTruthy()
});
usage with the app
instance
test("idk", async({page}) => {
console.log("idk")
let tfile = await doWithApp(page, async (app) => {
return app.metadataCache.getFirstLinkpathDest("Welcome", "/");
});
expect(tfile.basename).toEqual("Welcome")
})
other utilities
see src/util.ts
for the currently included utilities and their documentation.