2023-08-15 14:47:29 +00:00

39 lines
944 B
JavaScript

import { setWorldConstructor } from 'cucumber'
import request from 'request'
class CustomWorld {
constructor () {
// webFinger.feature
this.lastResponses = []
this.lastContentType = null
this.lastInboxUrl = null
this.lastActivity = null
// object-article.feature
this.statusCode = null
}
get (pathname) {
return new Promise((resolve, reject) => {
request(`http://localhost:4000/${this.replaceSlashes(pathname)}`, {
headers: {
'Accept': 'application/activity+json'
}}, (error, response, body) => {
if (!error) {
resolve({
lastResponse: body,
lastContentType: response.headers['content-type'],
statusCode: response.statusCode
})
} else {
reject(error)
}
})
})
}
replaceSlashes (pathname) {
return pathname.replace(/^\/+/, '')
}
}
setWorldConstructor(CustomWorld)