mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-28 21:22:16 +00:00
adaf742a7b
* Add a 1 second delay to the smoke tests Fixes a race condition where smoke tests exit before container can be attached to. See here for more info: https://github.com/overleaf/sharelatex/issues/274 * give the smoke tests additional work to do * escape slashes
64 lines
2.3 KiB
CoffeeScript
64 lines
2.3 KiB
CoffeeScript
chai = require("chai")
|
|
chai.should() unless Object.prototype.should?
|
|
expect = chai.expect
|
|
request = require "request"
|
|
Settings = require "settings-sharelatex"
|
|
|
|
buildUrl = (path) -> "http://#{Settings.internal.clsi.host}:#{Settings.internal.clsi.port}/#{path}"
|
|
|
|
url = buildUrl("project/smoketest-#{process.pid}/compile")
|
|
|
|
describe "Running a compile", ->
|
|
before (done) ->
|
|
request.post {
|
|
url: url
|
|
json:
|
|
compile:
|
|
resources: [
|
|
path: "main.tex"
|
|
content: """
|
|
% Membrane-like surface
|
|
% Author: Yotam Avital
|
|
\\documentclass{article}
|
|
\\usepackage{tikz}
|
|
\\usetikzlibrary{calc,fadings,decorations.pathreplacing}
|
|
\\begin{document}
|
|
\\begin{tikzpicture}
|
|
\\def\\nuPi{3.1459265}
|
|
\\foreach \\i in {5,4,...,2}{% This one doesn't matter
|
|
\\foreach \\j in {3,2,...,0}{% This will crate a membrane
|
|
% with the front lipids visible
|
|
% top layer
|
|
\\pgfmathsetmacro{\\dx}{rand*0.1}% A random variance in the x coordinate
|
|
\\pgfmathsetmacro{\\dy}{rand*0.1}% A random variance in the y coordinate,
|
|
% gives a hight fill to the lipid
|
|
\\pgfmathsetmacro{\\rot}{rand*0.1}% A random variance in the
|
|
% molecule orientation
|
|
\\shade[ball color=red] ({\\i+\\dx+\\rot},{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)}) circle(0.45);
|
|
\\shade[ball color=gray] (\\i+\\dx,{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)-0.9}) circle(0.45);
|
|
\\shade[ball color=gray] (\\i+\\dx-\\rot,{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)-1.8}) circle(0.45);
|
|
% bottom layer
|
|
\\pgfmathsetmacro{\\dx}{rand*0.1}
|
|
\\pgfmathsetmacro{\\dy}{rand*0.1}
|
|
\\pgfmathsetmacro{\\rot}{rand*0.1}
|
|
\\shade[ball color=gray] (\\i+\\dx+\\rot,{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)-2.8}) circle(0.45);
|
|
\\shade[ball color=gray] (\\i+\\dx,{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)-3.7}) circle(0.45);
|
|
\\shade[ball color=red] (\\i+\\dx-\\rot,{0.5*\\j+\\dy+0.4*sin(\\i*\\nuPi*10)-4.6}) circle(0.45);
|
|
}
|
|
}
|
|
\\end{tikzpicture}
|
|
\\end{document}
|
|
"""
|
|
]
|
|
}, (@error, @response, @body) =>
|
|
done()
|
|
|
|
it "should return the pdf", ->
|
|
for file in @body.compile.outputFiles
|
|
return if file.type == "pdf"
|
|
throw new Error("no pdf returned")
|
|
|
|
it "should return the log", ->
|
|
for file in @body.compile.outputFiles
|
|
return if file.type == "log"
|
|
throw new Error("no log returned")
|