overleaf/services/clsi/test/acceptance/js/SimpleLatexFileTests.js

70 lines
1.8 KiB
JavaScript
Raw Normal View History

// 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
* Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
*/
const Client = require('./helpers/Client')
const request = require('request')
const ClsiApp = require('./helpers/ClsiApp')
2014-02-12 12:27:43 -05:00
2020-08-10 12:01:11 -04:00
describe('Simple LaTeX file', function () {
before(function (done) {
this.project_id = Client.randomId()
this.request = {
resources: [
{
path: 'main.tex',
content: `\
\\documentclass{article}
\\begin{document}
Hello world
\\end{document}\
2021-07-13 07:04:48 -04:00
`,
},
],
}
return ClsiApp.ensureRunning(() => {
return Client.compile(
this.project_id,
this.request,
(error, res, body) => {
this.error = error
this.res = res
this.body = body
return done()
}
)
})
})
2014-02-12 12:27:43 -05:00
2020-08-10 12:01:11 -04:00
it('should return the PDF', function () {
const pdf = Client.getOutputFile(this.body, 'pdf')
return pdf.type.should.equal('pdf')
})
2014-02-12 12:27:43 -05:00
2020-08-10 12:01:11 -04:00
it('should return the log', function () {
const log = Client.getOutputFile(this.body, 'log')
return log.type.should.equal('log')
})
2020-08-10 12:01:11 -04:00
it('should provide the pdf for download', function (done) {
const pdf = Client.getOutputFile(this.body, 'pdf')
return request.get(pdf.url, (error, res, body) => {
if (error) return done(error)
res.statusCode.should.equal(200)
return done()
})
})
2020-08-10 12:01:11 -04:00
return it('should provide the log for download', function (done) {
const log = Client.getOutputFile(this.body, 'pdf')
return request.get(log.url, (error, res, body) => {
if (error) return done(error)
res.statusCode.should.equal(200)
return done()
})
})
})