mirror of https://codeberg.org/pzp/pzp-sdk.git
Add simple test
This commit is contained in:
parent
0f77ff66d6
commit
dd0f0d042f
|
@ -0,0 +1,13 @@
|
||||||
|
matrix:
|
||||||
|
NODE_VERSION:
|
||||||
|
- 18
|
||||||
|
- 20
|
||||||
|
|
||||||
|
steps:
|
||||||
|
test:
|
||||||
|
when:
|
||||||
|
event: [push]
|
||||||
|
image: node:${NODE_VERSION}
|
||||||
|
commands:
|
||||||
|
- npm install
|
||||||
|
- npm test
|
|
@ -21,6 +21,7 @@ const Keypair = require('pzp-keypair')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @typedef {Emitter & {
|
* @typedef {Emitter & {
|
||||||
|
* close(cb?: (err?: Error) => void): void,
|
||||||
* db: PZPDB,
|
* db: PZPDB,
|
||||||
* dict: PZPDict,
|
* dict: PZPDict,
|
||||||
* set: PZPSet,
|
* set: PZPSet,
|
||||||
|
@ -38,11 +39,11 @@ const Keypair = require('pzp-keypair')
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param {{ path: string }} opts
|
* @param {{ path?: string }=} opts
|
||||||
* @returns {Promise<Peer>}
|
* @returns {Promise<Peer>}
|
||||||
*/
|
*/
|
||||||
async function createPeer({ path }) {
|
async function createPeer(opts) {
|
||||||
|
let { path } = opts ?? {}
|
||||||
if (!path) {
|
if (!path) {
|
||||||
if (process.env.PZP_DIR) {
|
if (process.env.PZP_DIR) {
|
||||||
path = process.env.PZP_DIR
|
path = process.env.PZP_DIR
|
||||||
|
@ -101,6 +102,6 @@ async function createPeer({ path }) {
|
||||||
return peer
|
return peer
|
||||||
}
|
}
|
||||||
|
|
||||||
exports = {
|
module.exports = {
|
||||||
createPeer,
|
createPeer,
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,8 @@
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"files": [
|
"files": [
|
||||||
"lib/**/*"
|
"lib/**/*",
|
||||||
|
"declarations/**/*"
|
||||||
],
|
],
|
||||||
"exports": {
|
"exports": {
|
||||||
".": {
|
".": {
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
const { test } = require('node:test')
|
||||||
|
const assert = require('node:assert')
|
||||||
|
const p = require('node:util').promisify
|
||||||
|
const { createPeer } = require('../lib/')
|
||||||
|
|
||||||
|
test('Basic createPeer', async (t) => {
|
||||||
|
const peer = await createPeer()
|
||||||
|
|
||||||
|
// TODO: getting warning
|
||||||
|
//Warning: A resource generated asynchronous activity after the test ended. This activity created the error "Error: Cannot call values() before loading" which triggered an uncaughtException event, caught by the test runner.
|
||||||
|
await new Promise((res, rej) => {
|
||||||
|
peer.db.account.create({
|
||||||
|
subdomain: 'account',
|
||||||
|
_nonce: 'bob',
|
||||||
|
}, (err, account) => {
|
||||||
|
assert(!err)
|
||||||
|
|
||||||
|
peer.db.feed.publish({
|
||||||
|
account,
|
||||||
|
domain: "post",
|
||||||
|
data: {
|
||||||
|
text: 'woo a post'
|
||||||
|
}
|
||||||
|
}, (err, rec) => {
|
||||||
|
assert(!err)
|
||||||
|
|
||||||
|
peer.close(() => res(null))
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"include": [
|
"include": [
|
||||||
"declarations",
|
"declarations",
|
||||||
"lib/**/*.js"
|
"lib/**/*.js",
|
||||||
|
"test/"
|
||||||
],
|
],
|
||||||
"exclude": [
|
"exclude": [
|
||||||
"coverage/",
|
"coverage/",
|
||||||
"node_modules/",
|
"node_modules/",
|
||||||
"test/"
|
|
||||||
],
|
],
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"checkJs": true,
|
"checkJs": true,
|
||||||
|
|
Loading…
Reference in New Issue