mirror of
https://github.com/tauri-apps/tauri.git
synced 2024-12-24 19:25:12 +03:00
54 lines
1.1 KiB
JavaScript
54 lines
1.1 KiB
JavaScript
const express = require('express')
|
|
const cors = require('cors')
|
|
const app = express()
|
|
app.use(cors())
|
|
app.use(express.json())
|
|
const port = 7000
|
|
let appPid
|
|
|
|
app.post('/reply', (req, res) => {
|
|
if (req.body && req.body.msg !== 'TEST') {
|
|
throw new Error(`unexpected reply ${JSON.stringify(req.body)}`)
|
|
}
|
|
console.log('App event replied')
|
|
exit(0)
|
|
})
|
|
|
|
const server = app.listen(port, () =>
|
|
console.log(`Test listening on port ${port}!`)
|
|
)
|
|
|
|
const exit = (code) => {
|
|
server.close()
|
|
process.kill(appPid)
|
|
process.exit(code)
|
|
}
|
|
|
|
const path = require('path')
|
|
const dist = path.resolve(__dirname, 'dist')
|
|
|
|
const build = require('../cli/tauri.js/dist/api/build')
|
|
build({
|
|
build: {
|
|
devPath: dist
|
|
},
|
|
ctx: {
|
|
debug: true
|
|
}
|
|
}).then(() => {
|
|
const spawn = require('../cli/tauri.js/dist/helpers/spawn').spawn
|
|
const artifactPath = path.resolve(__dirname, 'src-tauri/target/debug/app')
|
|
appPid = spawn(
|
|
process.platform === 'win32'
|
|
? `${artifactPath}.exe`
|
|
: artifactPath.replace('debug/app', 'debug/./app'),
|
|
[],
|
|
null
|
|
)
|
|
|
|
// if it didn't reply, throw an error
|
|
setTimeout(() => {
|
|
throw new Error("App didn't reply")
|
|
}, 2000)
|
|
})
|