Fix browser tests

This commit is contained in:
haad 2023-01-12 13:10:12 +02:00
parent 9892d57d67
commit 13f79e6a65
5 changed files with 42 additions and 28 deletions

View File

@ -5,7 +5,6 @@ deps:
test: deps
npm run test:all -- --exit
npx validate-maintainers orbit-db --match --ci
build:
mkdir -p examples/browser/lib/

View File

@ -1,31 +1,39 @@
import path from 'path'
import webpack from 'webpack'
import { fileURLToPath } from 'url'
import { createRequire } from 'module'
export default (env, argv) => {
const require = createRequire(import.meta.url)
const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)
return {
mode: 'production',
entry: './src/OrbitDB.js',
output: {
libraryTarget: 'var',
library: 'OrbitDB',
filename: '../dist/orbitdb.min.js'
filename: '../dist/orbitdb.min.js',
library: {
name: 'OrbitDB',
type: 'var',
export: 'default'
}
},
mode: 'development',
target: 'web',
devtool: 'none',
externals: {
fs: '{}',
fs: '{ existsSync: () => true }',
'fs-shim': '{ existsSync: () => true }',
mkdirp: '{}'
},
node: {
console: false,
Buffer: true,
mkdirp: 'empty'
},
plugins: [
new webpack.DefinePlugin({
'process.env': {
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
}
}),
new webpack.ProvidePlugin({
process: 'process/browser',
Buffer: ['buffer', 'Buffer']
})
],
resolve: {
@ -33,8 +41,12 @@ export default (env, argv) => {
'node_modules',
path.resolve(__dirname, '../node_modules')
],
alias: {
leveldown: 'level-js'
fallback: {
path: require.resolve('path-browserify'),
os: false,
fs: false,
constants: false,
stream: false
}
},
resolveLoader: {
@ -42,7 +54,8 @@ export default (env, argv) => {
'node_modules',
path.resolve(__dirname, '../node_modules')
],
moduleExtensions: ['-loader']
extensions: ['.js', '.json'],
mainFields: ['loader', 'main']
}
}
}

24
package-lock.json generated
View File

@ -18597,18 +18597,18 @@
}
},
"node_modules/orbit-db-identity-provider": {
"version": "0.4.1-699a573.0",
"resolved": "https://registry.npmjs.org/orbit-db-identity-provider/-/orbit-db-identity-provider-0.4.1-699a573.0.tgz",
"integrity": "sha512-zfYgJWIRsxJyUO+NRn6dTslGENWmotJN/JkzT/kSO7lPW9CqAOv+H71Eeg1frJ5/3qnhUn1nCEi2vyw5oEb0bA==",
"version": "0.4.1-1f5a165.0",
"resolved": "https://registry.npmjs.org/orbit-db-identity-provider/-/orbit-db-identity-provider-0.4.1-1f5a165.0.tgz",
"integrity": "sha512-8JnFS5Oz07Yg7sj+RsyuCBe6Rw2uKWZvPAajVBRJG0GOAdrb5DXle9xxs1SVL+hnu9ku007RgRmy4xtCpKo59Q==",
"dependencies": {
"@ethersproject/wallet": "^5.0.10",
"@ethersproject/wallet": "^5.7.0",
"assert": "^2.0.0",
"dids": "^3.4.0",
"lru": "^3.1.0",
"orbit-db-keystore": "^1.0.1-ae215fb.0",
"orbit-db-keystore": "next",
"path-browserify": "^1.0.1",
"stream-browserify": "^3.0.0",
"uint8arrays": "^4.0.2"
"uint8arrays": "^4.0.3"
}
},
"node_modules/orbit-db-identity-provider/node_modules/multiformats": {
@ -41829,18 +41829,18 @@
}
},
"orbit-db-identity-provider": {
"version": "0.4.1-699a573.0",
"resolved": "https://registry.npmjs.org/orbit-db-identity-provider/-/orbit-db-identity-provider-0.4.1-699a573.0.tgz",
"integrity": "sha512-zfYgJWIRsxJyUO+NRn6dTslGENWmotJN/JkzT/kSO7lPW9CqAOv+H71Eeg1frJ5/3qnhUn1nCEi2vyw5oEb0bA==",
"version": "0.4.1-1f5a165.0",
"resolved": "https://registry.npmjs.org/orbit-db-identity-provider/-/orbit-db-identity-provider-0.4.1-1f5a165.0.tgz",
"integrity": "sha512-8JnFS5Oz07Yg7sj+RsyuCBe6Rw2uKWZvPAajVBRJG0GOAdrb5DXle9xxs1SVL+hnu9ku007RgRmy4xtCpKo59Q==",
"requires": {
"@ethersproject/wallet": "^5.0.10",
"@ethersproject/wallet": "^5.7.0",
"assert": "^2.0.0",
"dids": "^3.4.0",
"lru": "^3.1.0",
"orbit-db-keystore": "^1.0.1-ae215fb.0",
"orbit-db-keystore": "next",
"path-browserify": "^1.0.1",
"stream-browserify": "^3.0.0",
"uint8arrays": "^4.0.2"
"uint8arrays": "^4.0.3"
},
"dependencies": {
"multiformats": {

View File

@ -85,7 +85,7 @@
"lint:docs": "remark -qf -u validate-links .",
"test:all": "npm run test:browser-multiple-tabs && npm run test",
"test": "cross-env TEST=all mocha --config test/.mocharc.json",
"test:browser-multiple-tabs": "npm run build:dist && cpy dist/orbitdb.min.js ./test/browser/ --rename=orbitdb.js --flat && cpy node_modules/ipfs/index.min.js ./test/browser --rename=ipfs.js --flat && cpy node_modules/orbit-db-identity-provider/dist/index-browser.min.js ./test/browser --rename=identities.js --flat && cpy node_modules/ipfs-log/dist/ipfslog.min.js ./test/browser --flat && mocha ./test/browser/concurrent.spec.js",
"test:browser-multiple-tabs": "npm run build:dist && cpy dist/orbitdb.min.js ./test/browser/ --rename=orbitdb.js --flat && cpy node_modules/ipfs/index.min.js ./test/browser --rename=ipfs.js --flat && cpy node_modules/orbit-db-identity-provider/dist/orbit-db-identity-provider.min.js ./test/browser --rename=identities.js --flat && cpy node_modules/ipfs-log/dist/ipfslog.min.js ./test/browser --flat && mocha ./test/browser/concurrent.spec.js",
"build": "npm run build:es5 && npm run build:debug && npm run build:dist && npm run build:examples && npm run build:docs/toc",
"build:examples": "webpack --config conf/webpack.example.config.js",
"build:dist": "webpack --config conf/webpack.config.js",

View File

@ -23,6 +23,7 @@ describe(`orbit-db - browser concurrent writes`, function () {
let browser
const options = {
ignoreHTTPSErrors: true,
dumpio: true,
args: ['--no-sandbox', '--disable-setuid-sandbox'],
executablePath: chromium.path
}
@ -43,6 +44,7 @@ describe(`orbit-db - browser concurrent writes`, function () {
await page.goto(`file://${path.resolve('test/browser/index.html')}`)
page.on('dialog', dialog => dialog.dismiss())
page.on('pageerror', err => console.error(err))
page.on('console', message => console.log(message))
await wait(1000)
return page
}