| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- /* eslint-disable
- camelcase,
- max-len,
- */
- // TODO: This file was created by bulk-decaffeinate.
- // Fix any style issues and re-enable lint.
- /*
- * decaffeinate suggestions:
- * DS102: Remove unnecessary code created because of implicit returns
- * DS205: Consider reworking code to avoid use of IIFEs
- * DS207: Consider shorter variations of null checks
- * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
- */
- let MockDocStoreApi
- const express = require('express')
- const bodyParser = require('body-parser')
- const app = express()
- module.exports = MockDocStoreApi = {
- docs: {},
- run() {
- app.post(
- '/project/:project_id/doc/:doc_id',
- bodyParser.json(),
- (req, res, next) => {
- const { project_id, doc_id } = req.params
- const { lines, version, ranges } = req.body
- if (this.docs[project_id] == null) {
- this.docs[project_id] = {}
- }
- this.docs[project_id][doc_id] = { lines, version, ranges }
- if (this.docs[project_id][doc_id].rev == null) {
- this.docs[project_id][doc_id].rev = 0
- }
- this.docs[project_id][doc_id].rev += 1
- this.docs[project_id][doc_id]._id = doc_id
- return res.json({
- modified: true,
- rev: this.docs[project_id][doc_id].rev
- })
- }
- )
- app.get('/project/:project_id/doc', (req, res, next) => {
- const docs = (() => {
- const result = []
- for (let doc_id in this.docs[req.params.project_id]) {
- const doc = this.docs[req.params.project_id][doc_id]
- result.push(doc)
- }
- return result
- })()
- return res.json(docs)
- })
- app.get('/project/:project_id/doc/:doc_id', (req, res, next) => {
- const { project_id, doc_id } = req.params
- const doc = this.docs[project_id][doc_id]
- if (doc == null || (doc.deleted && !req.query.include_deleted)) {
- return res.sendStatus(404)
- } else {
- return res.json(doc)
- }
- })
- app.delete('/project/:project_id/doc/:doc_id', (req, res, next) => {
- const { project_id, doc_id } = req.params
- if (this.docs[project_id] == null) {
- return res.sendStatus(404)
- } else if (this.docs[project_id][doc_id] == null) {
- return res.sendStatus(404)
- } else {
- this.docs[project_id][doc_id].deleted = true
- return res.sendStatus(204)
- }
- })
- return app
- .listen(3016, function(error) {
- if (error != null) {
- throw error
- }
- })
- .on('error', function(error) {
- console.error('error starting MockDocStoreApi:', error.message)
- return process.exit(1)
- })
- }
- }
- MockDocStoreApi.run()
|