overleaf/services/docstore/test/acceptance/coffee/helpers/DocstoreClient.js

58 lines
2.1 KiB
JavaScript
Raw Normal View History

request = require("request").defaults(jar: false)
{db, ObjectId} = require("../../../../app/js/mongojs")
2015-06-01 17:24:40 -04:00
settings = require("settings-sharelatex")
2015-06-02 18:24:45 -04:00
DocArchiveManager = require("../../../../app/js/DocArchiveManager.js")
module.exports = DocstoreClient =
2014-04-30 08:06:12 -04:00
2016-12-05 09:21:49 -05:00
createDoc: (project_id, doc_id, lines, version, ranges, callback = (error) ->) ->
DocstoreClient.updateDoc project_id, doc_id, lines, version, ranges, callback
getDoc: (project_id, doc_id, qs, callback = (error, res, body) ->) ->
request.get {
2015-06-01 17:24:40 -04:00
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/doc/#{doc_id}"
json: true
qs:qs
}, callback
2014-04-30 08:06:12 -04:00
getAllDocs: (project_id, callback = (error, res, body) ->) ->
request.get {
2015-06-01 17:24:40 -04:00
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/doc"
2014-04-30 08:06:12 -04:00
json: true
}, callback
getAllRanges: (project_id, callback = (error, res, body) ->) ->
request.get {
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/ranges"
json: true
}, callback
2016-12-05 09:21:49 -05:00
updateDoc: (project_id, doc_id, lines, version, ranges, callback = (error, res, body) ->) ->
request.post {
2015-06-01 17:24:40 -04:00
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/doc/#{doc_id}"
json:
lines: lines
version: version
2016-12-05 09:21:49 -05:00
ranges: ranges
}, callback
deleteDoc: (project_id, doc_id, callback = (error, res, body) ->) ->
request.del {
2015-06-01 17:24:40 -04:00
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/doc/#{doc_id}"
}, callback
2015-06-01 17:24:40 -04:00
archiveAllDoc: (project_id, callback = (error, res, body) ->) ->
request.post {
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/archive"
}, callback
destroyAllDoc: (project_id, callback = (error, res, body) ->) ->
request.post {
url: "http://localhost:#{settings.internal.docstore.port}/project/#{project_id}/destroy"
}, callback
2015-06-02 18:24:45 -04:00
getS3Doc: (project_id, doc_id, callback = (error, res, body) ->) ->
2017-03-30 12:13:43 -04:00
options = DocArchiveManager.buildS3Options(project_id+"/"+doc_id)
options.json = true
request.get options, callback