mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
more tests
This commit is contained in:
parent
7d80fe19e0
commit
0efc42081d
@ -15,13 +15,15 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"start-server": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
"start-server": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
||||||
"start-server-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
"start-server-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
||||||
"qstart-server": "rm -r ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-server-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
"qstart-server": "npm run qswitch-server && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon ./src/www",
|
||||||
"start-electron": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron --inspect=5858 .",
|
"start-electron": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron --inspect=5858 .",
|
||||||
"start-electron-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 electron --inspect=5858 .",
|
"start-electron-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 electron --inspect=5858 .",
|
||||||
"qstart-electron": "rm -r ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-desktop-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron --inspect=5858 .",
|
"qstart-electron": "npm run qswitch-electron && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron --inspect=5858 .",
|
||||||
"start-test-server": "rm -rf ./data-test; cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data-test TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev TRILIUM_PORT=9999 node ./src/www",
|
"start-test-server": "npm run qswitch-server; rm -rf ./data-test; cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data-test TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev TRILIUM_PORT=9999 node ./src/www",
|
||||||
"switch-server": "rm -rf ./node_modules/better-sqlite3 && npm install",
|
"switch-server": "rm -rf ./node_modules/better-sqlite3 && npm install",
|
||||||
"switch-electron": "./node_modules/.bin/electron-rebuild",
|
"switch-electron": "./node_modules/.bin/electron-rebuild",
|
||||||
|
"qswitch-server": "rm -rf ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-server-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node",
|
||||||
|
"qswitch-electron": "rm -rf ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-desktop-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node",
|
||||||
"build-backend-docs": "rm -rf ./docs/backend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/backend_api src/becca/entities/*.js src/services/backend_script_api.js src/services/sql.js",
|
"build-backend-docs": "rm -rf ./docs/backend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/backend_api src/becca/entities/*.js src/services/backend_script_api.js src/services/sql.js",
|
||||||
"build-frontend-docs": "rm -rf ./docs/frontend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/frontend_api src/public/app/entities/*.js src/public/app/services/frontend_script_api.js src/public/app/widgets/basic_widget.js src/public/app/widgets/note_context_aware_widget.js src/public/app/widgets/right_panel_widget.js",
|
"build-frontend-docs": "rm -rf ./docs/frontend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/frontend_api src/public/app/entities/*.js src/public/app/services/frontend_script_api.js src/public/app/widgets/basic_widget.js src/public/app/widgets/note_context_aware_widget.js src/public/app/widgets/right_panel_widget.js",
|
||||||
"build-docs": "npm run build-backend-docs && npm run build-frontend-docs",
|
"build-docs": "npm run build-backend-docs && npm run build-frontend-docs",
|
||||||
|
12
spec/etapi/app_info.js
Normal file
12
spec/etapi/app_info.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
const {
|
||||||
|
describeEtapi, postEtapi,
|
||||||
|
putEtapiContent
|
||||||
|
} = require("../support/etapi");
|
||||||
|
const {getEtapi} = require("../support/etapi.js");
|
||||||
|
|
||||||
|
describeEtapi("app_info", () => {
|
||||||
|
it("get", async () => {
|
||||||
|
const appInfo = await getEtapi("app-info");
|
||||||
|
expect(appInfo.clipperProtocolVersion).toEqual("1.0");
|
||||||
|
});
|
||||||
|
});
|
12
spec/etapi/backup.js
Normal file
12
spec/etapi/backup.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
const {
|
||||||
|
describeEtapi, postEtapi,
|
||||||
|
getEtapi,
|
||||||
|
} = require("../support/etapi");
|
||||||
|
const {putEtapiContent} = require("../support/etapi.js");
|
||||||
|
|
||||||
|
describeEtapi("backup", () => {
|
||||||
|
it("create", async () => {
|
||||||
|
const response = await putEtapiContent("backup/etapi_test");
|
||||||
|
expect(response.status).toEqual(204);
|
||||||
|
});
|
||||||
|
});
|
24
spec/etapi/import.js
Normal file
24
spec/etapi/import.js
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
const {
|
||||||
|
describeEtapi, postEtapi,
|
||||||
|
postEtapiContent,
|
||||||
|
} = require("../support/etapi");
|
||||||
|
const fs = require("fs");
|
||||||
|
const path = require("path");
|
||||||
|
const {getEtapiContent} = require("../support/etapi.js");
|
||||||
|
|
||||||
|
describeEtapi("import", () => {
|
||||||
|
it("import", async () => {
|
||||||
|
const zipFileBuffer = fs.readFileSync(path.resolve(__dirname, 'test-export.zip'));
|
||||||
|
|
||||||
|
const response = await postEtapiContent("notes/root/import", zipFileBuffer);
|
||||||
|
expect(response.status).toEqual(201);
|
||||||
|
|
||||||
|
const {note, branch} = await response.json();
|
||||||
|
|
||||||
|
expect(note.title).toEqual("test-export");
|
||||||
|
expect(branch.parentNoteId).toEqual("root");
|
||||||
|
|
||||||
|
const content = await (await getEtapiContent(`notes/${note.noteId}/content`)).text();
|
||||||
|
expect(content).toContain("test export content");
|
||||||
|
});
|
||||||
|
});
|
@ -1,6 +1,13 @@
|
|||||||
const {describeEtapi, postEtapi, getEtapi, getEtapiContent, patchEtapi, putEtapi, putEtapiContent} = require("../support/etapi");
|
|
||||||
const crypto = require('crypto');
|
const crypto = require('crypto');
|
||||||
const {deleteEtapi, getEtapiResponse} = require("../support/etapi.js");
|
const {
|
||||||
|
deleteEtapi,
|
||||||
|
getEtapiResponse,
|
||||||
|
describeEtapi, postEtapi,
|
||||||
|
getEtapi,
|
||||||
|
getEtapiContent,
|
||||||
|
patchEtapi, putEtapi,
|
||||||
|
putEtapiContent
|
||||||
|
} = require("../support/etapi");
|
||||||
|
|
||||||
describeEtapi("notes", () => {
|
describeEtapi("notes", () => {
|
||||||
it("create", async () => {
|
it("create", async () => {
|
||||||
|
@ -90,6 +90,21 @@ async function postEtapi(url, data = {}) {
|
|||||||
return await processEtapiResponse(response);
|
return await processEtapiResponse(response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function postEtapiContent(url, data) {
|
||||||
|
const response = await fetch(`${HOST}/etapi/${url}`, {
|
||||||
|
method: 'POST',
|
||||||
|
headers: {
|
||||||
|
"Content-Type": "application/octet-stream",
|
||||||
|
Authorization: getEtapiAuthorizationHeader()
|
||||||
|
},
|
||||||
|
body: data
|
||||||
|
});
|
||||||
|
|
||||||
|
checkStatus(response);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
}
|
||||||
|
|
||||||
async function putEtapi(url, data = {}) {
|
async function putEtapi(url, data = {}) {
|
||||||
const response = await fetch(`${HOST}/etapi/${url}`, {
|
const response = await fetch(`${HOST}/etapi/${url}`, {
|
||||||
method: 'PUT',
|
method: 'PUT',
|
||||||
@ -113,6 +128,8 @@ async function putEtapiContent(url, data) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
checkStatus(response);
|
checkStatus(response);
|
||||||
|
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function patchEtapi(url, data = {}) {
|
async function patchEtapi(url, data = {}) {
|
||||||
@ -159,6 +176,7 @@ module.exports = {
|
|||||||
getEtapiResponse,
|
getEtapiResponse,
|
||||||
getEtapiContent,
|
getEtapiContent,
|
||||||
postEtapi,
|
postEtapi,
|
||||||
|
postEtapiContent,
|
||||||
putEtapi,
|
putEtapi,
|
||||||
putEtapiContent,
|
putEtapiContent,
|
||||||
patchEtapi,
|
patchEtapi,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user