acceptence tests pass inside docker container (apart from sync)
This commit is contained in:
15
Dockerfile
15
Dockerfile
@@ -1,23 +1,16 @@
|
|||||||
FROM node:6.9.5
|
FROM node:6.13.0
|
||||||
|
|
||||||
RUN wget -qO- https://get.docker.com/ | sh
|
|
||||||
|
|
||||||
run apt-get install poppler-utils vim ghostscript --yes
|
|
||||||
|
|
||||||
# run git build-essential --yes
|
|
||||||
# RUN git clone https://github.com/netblue30/firejail.git
|
|
||||||
# RUN cd firejail && ./configure && make && make install-strip
|
|
||||||
# run mkdir /data
|
|
||||||
|
|
||||||
COPY ./ /app
|
COPY ./ /app
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
|
|
||||||
RUN npm install
|
RUN npm install
|
||||||
|
|
||||||
|
RUN [ -e ./install_deps.sh ] && ./install_deps.sh
|
||||||
|
|
||||||
RUN npm run compile
|
RUN npm run compile
|
||||||
|
|
||||||
ENV SHARELATEX_CONFIG /app/config/settings.production.coffee
|
|
||||||
ENV NODE_ENV production
|
ENV NODE_ENV production
|
||||||
|
|
||||||
CMD ["node","/app/app.js"]
|
CMD ["node","/app/app.js"]
|
||||||
|
|||||||
12
app.coffee
12
app.coffee
@@ -165,8 +165,16 @@ app.use (error, req, res, next) ->
|
|||||||
logger.error {err: error, url: req.url}, "server error"
|
logger.error {err: error, url: req.url}, "server error"
|
||||||
res.sendStatus(error?.statusCode || 500)
|
res.sendStatus(error?.statusCode || 500)
|
||||||
|
|
||||||
app.listen port = (Settings.internal?.clsi?.port or 3013), host = (Settings.internal?.clsi?.host or "localhost"), (error) ->
|
port = (Settings.internal?.clsi?.port or 3013)
|
||||||
logger.info "CLSI starting up, listening on #{host}:#{port}"
|
host = (Settings.internal?.clsi?.host or "localhost")
|
||||||
|
|
||||||
|
if !module.parent # Called directly
|
||||||
|
app.listen port, host, (error) ->
|
||||||
|
logger.info "CLSI starting up, listening on #{host}:#{port}"
|
||||||
|
|
||||||
|
module.exports = app
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
setInterval () ->
|
setInterval () ->
|
||||||
ProjectPersistenceManager.clearExpiredProjects()
|
ProjectPersistenceManager.clearExpiredProjects()
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ module.exports =
|
|||||||
clsi:
|
clsi:
|
||||||
port: 3013
|
port: 3013
|
||||||
host: process.env["LISTEN_ADDRESS"] or "0.0.0.0"
|
host: process.env["LISTEN_ADDRESS"] or "0.0.0.0"
|
||||||
|
|
||||||
apis:
|
apis:
|
||||||
clsi:
|
clsi:
|
||||||
url: "http://#{process.env['CLSI_HOST'] or 'localhost'}:3013"
|
url: "http://#{process.env['CLSI_HOST'] or 'localhost'}:3013"
|
||||||
|
|||||||
@@ -14,16 +14,17 @@ services:
|
|||||||
entrypoint: npm run test:unit
|
entrypoint: npm run test:unit
|
||||||
|
|
||||||
test_acceptance:
|
test_acceptance:
|
||||||
image: node:6.9.5
|
build: .
|
||||||
volumes:
|
|
||||||
- .:/app
|
|
||||||
environment:
|
environment:
|
||||||
REDIS_HOST: redis
|
TEXLIVE_IMAGE: quay.io/sharelatex/texlive-full:2017.1
|
||||||
MONGO_HOST: mongo
|
TEXLIVE_IMAGE_USER: root # Not ideal, but makes running in dev very simple
|
||||||
depends_on:
|
SHARELATEX_CONFIG: /app/config/settings.defaults.coffee
|
||||||
- redis
|
COMMAND_RUNNER: docker-runner-sharelatex
|
||||||
- mongo
|
COMPILES_HOST_DIR: $PWD/compiles
|
||||||
working_dir: /app
|
volumes:
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
- ./docker-runner:/app/node_modules/docker-runner-sharelatex
|
||||||
|
- ./compiles:/app/compiles
|
||||||
entrypoint: npm run test:acceptance
|
entrypoint: npm run test:acceptance
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
@@ -31,19 +32,3 @@ services:
|
|||||||
|
|
||||||
mongo:
|
mongo:
|
||||||
image: mongo:3.4
|
image: mongo:3.4
|
||||||
|
|
||||||
app:
|
|
||||||
image: gcr.io/henry-terraform-admin/clsi
|
|
||||||
build: .
|
|
||||||
environment:
|
|
||||||
TEXLIVE_IMAGE: quay.io/sharelatex/texlive-full:2017.1
|
|
||||||
TEXLIVE_IMAGE_USER: root # Not ideal, but makes running in dev very simple
|
|
||||||
COMMAND_RUNNER: docker-runner-sharelatex
|
|
||||||
SHARELATEX_CONFIG: /app/config/settings.defaults.coffee
|
|
||||||
COMPILES_HOST_DIR: $PWD/compiles
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
- ./docker-runner:/app/node_modules/docker-runner-sharelatex
|
|
||||||
- /Users/henry/Projects/sharelatex-dev-environment/clsi/compiles:/app/compiles
|
|
||||||
ports:
|
|
||||||
- 3013:3013
|
|
||||||
4
install_deps.sh
Executable file
4
install_deps.sh
Executable file
@@ -0,0 +1,4 @@
|
|||||||
|
/bin/sh
|
||||||
|
wget -qO- https://get.docker.com/ | sh
|
||||||
|
apt-get install poppler-utils vim ghostscript --yes
|
||||||
|
npm rebuild
|
||||||
531
package-lock.json
generated
531
package-lock.json
generated
@@ -18,6 +18,12 @@
|
|||||||
"resolved": "https://registry.npmjs.org/async/-/async-0.2.9.tgz",
|
"resolved": "https://registry.npmjs.org/async/-/async-0.2.9.tgz",
|
||||||
"integrity": "sha1-32MGD789Myhqdqr21Vophtn/hhk="
|
"integrity": "sha1-32MGD789Myhqdqr21Vophtn/hhk="
|
||||||
},
|
},
|
||||||
|
"balanced-match": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"bl": {
|
"bl": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz",
|
||||||
@@ -208,6 +214,16 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"brace-expansion": {
|
||||||
|
"version": "1.1.11",
|
||||||
|
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||||
|
"integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"balanced-match": "1.0.0",
|
||||||
|
"concat-map": "0.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"browser-stdout": {
|
"browser-stdout": {
|
||||||
"version": "1.3.0",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz",
|
||||||
@@ -396,8 +412,18 @@
|
|||||||
"coffee-script": {
|
"coffee-script": {
|
||||||
"version": "1.6.0",
|
"version": "1.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.6.0.tgz",
|
||||||
"integrity": "sha1-gIs5bhEPU9AhoZpO8fZb4OjjX6M=",
|
"integrity": "sha1-gIs5bhEPU9AhoZpO8fZb4OjjX6M="
|
||||||
"dev": true
|
},
|
||||||
|
"commander": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg="
|
||||||
|
},
|
||||||
|
"concat-map": {
|
||||||
|
"version": "0.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||||
|
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
||||||
|
"optional": true
|
||||||
},
|
},
|
||||||
"concat-stream": {
|
"concat-stream": {
|
||||||
"version": "1.5.2",
|
"version": "1.5.2",
|
||||||
@@ -429,6 +455,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"cookie": {
|
||||||
|
"version": "0.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
|
||||||
|
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
|
||||||
|
},
|
||||||
"core-util-is": {
|
"core-util-is": {
|
||||||
"version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
"version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||||
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
|
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
|
||||||
@@ -440,10 +471,15 @@
|
|||||||
"ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
|
"ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"diff": {
|
||||||
|
"version": "1.0.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/diff/-/diff-1.0.7.tgz",
|
||||||
|
"integrity": "sha1-JLuwAcSn1VIhaefKvbLCgU7ZHPQ="
|
||||||
|
},
|
||||||
"docker-modem": {
|
"docker-modem": {
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/docker-modem/-/docker-modem-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/docker-modem/-/docker-modem-1.0.4.tgz",
|
||||||
"integrity": "sha512-pkXB9p7KWagegOXm2NsbVDBluQQLCBJzX9uYJzVbL6CHwe4d2sSbcACJ4K8ISX1l1JUUmFSiwNkBKc1uTiU4MA==",
|
"integrity": "sha1-JEJUsiax1/YCJfgjlb2FGQz3Ves=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"JSONStream": "0.10.0",
|
"JSONStream": "0.10.0",
|
||||||
"debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
"debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
|
||||||
@@ -467,17 +503,26 @@
|
|||||||
"dockerode": {
|
"dockerode": {
|
||||||
"version": "2.5.3",
|
"version": "2.5.3",
|
||||||
"resolved": "https://registry.npmjs.org/dockerode/-/dockerode-2.5.3.tgz",
|
"resolved": "https://registry.npmjs.org/dockerode/-/dockerode-2.5.3.tgz",
|
||||||
"integrity": "sha512-LQKXR5jyI+G/+5OhZCi40m0ArY4j46g7Tl71Vtn10Ekt5TiyDzZAoqXOCS6edQpEuGbdFgSDJxleFqLxACpKJg==",
|
"integrity": "sha1-Wsw8Bx96JuRDpbWM83U+8vPCvAQ=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"concat-stream": "1.5.2",
|
"concat-stream": "1.5.2",
|
||||||
"docker-modem": "1.0.4",
|
"docker-modem": "1.0.4",
|
||||||
"tar-fs": "1.12.0"
|
"tar-fs": "1.12.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"dtrace-provider": {
|
||||||
|
"version": "0.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.6.0.tgz",
|
||||||
|
"integrity": "sha1-CweNVReTfYcxAUUtkUZzdVe3XlE=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"nan": "2.8.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"end-of-stream": {
|
"end-of-stream": {
|
||||||
"version": "1.4.1",
|
"version": "1.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
|
||||||
"integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
|
"integrity": "sha1-7SljTRm6ukY7bOa4CjchPqtx7EM=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
|
"once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
|
||||||
}
|
}
|
||||||
@@ -773,7 +818,7 @@
|
|||||||
"setprototypeof": {
|
"setprototypeof": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
|
||||||
"integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ=="
|
"integrity": "sha1-0L2FU2iHtv58DYGMuWLZ2RxU5lY="
|
||||||
},
|
},
|
||||||
"statuses": {
|
"statuses": {
|
||||||
"version": "1.3.1",
|
"version": "1.3.1",
|
||||||
@@ -932,6 +977,52 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"glob": {
|
||||||
|
"version": "6.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
|
||||||
|
"integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"inflight": "1.0.6",
|
||||||
|
"inherits": "2.0.3",
|
||||||
|
"minimatch": "3.0.4",
|
||||||
|
"once": "1.4.0",
|
||||||
|
"path-is-absolute": "1.0.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"inherits": {
|
||||||
|
"version": "2.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
||||||
|
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"once": {
|
||||||
|
"version": "1.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||||
|
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"wrappy": "1.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"wrappy": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"graceful-fs": {
|
||||||
|
"version": "2.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz",
|
||||||
|
"integrity": "sha1-fNLNsiiko/Nule+mzBQt59GhNtA="
|
||||||
|
},
|
||||||
|
"growl": {
|
||||||
|
"version": "1.7.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/growl/-/growl-1.7.0.tgz",
|
||||||
|
"integrity": "sha1-3i1mE20ALhErpw8/EMMc98NQsto="
|
||||||
|
},
|
||||||
"grunt": {
|
"grunt": {
|
||||||
"version": "0.4.5",
|
"version": "0.4.5",
|
||||||
"resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
|
"resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
|
||||||
@@ -1478,6 +1569,32 @@
|
|||||||
"resolved": "https://registry.npmjs.org/heapdump/-/heapdump-0.3.9.tgz",
|
"resolved": "https://registry.npmjs.org/heapdump/-/heapdump-0.3.9.tgz",
|
||||||
"integrity": "sha1-A8dOsN9dZ74Jgug0KbqcnSs7f3g="
|
"integrity": "sha1-A8dOsN9dZ74Jgug0KbqcnSs7f3g="
|
||||||
},
|
},
|
||||||
|
"inflight": {
|
||||||
|
"version": "1.0.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||||
|
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"once": "1.4.0",
|
||||||
|
"wrappy": "1.0.2"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"once": {
|
||||||
|
"version": "1.4.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||||
|
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"wrappy": "1.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"wrappy": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||||
|
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"inherits": {
|
"inherits": {
|
||||||
"version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
"version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
||||||
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
||||||
@@ -1486,6 +1603,32 @@
|
|||||||
"version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
"version": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
||||||
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
|
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
|
||||||
},
|
},
|
||||||
|
"jade": {
|
||||||
|
"version": "0.26.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz",
|
||||||
|
"integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=",
|
||||||
|
"requires": {
|
||||||
|
"commander": "0.6.1",
|
||||||
|
"mkdirp": "0.3.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"commander": {
|
||||||
|
"version": "0.6.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz",
|
||||||
|
"integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY="
|
||||||
|
},
|
||||||
|
"mkdirp": {
|
||||||
|
"version": "0.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz",
|
||||||
|
"integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"json-stringify-safe": {
|
||||||
|
"version": "5.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
||||||
|
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
|
||||||
|
},
|
||||||
"jsonparse": {
|
"jsonparse": {
|
||||||
"version": "0.0.5",
|
"version": "0.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-0.0.5.tgz",
|
||||||
@@ -1504,22 +1647,6 @@
|
|||||||
"raven": "1.2.1"
|
"raven": "1.2.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"balanced-match": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
|
|
||||||
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"brace-expansion": {
|
|
||||||
"version": "1.1.11",
|
|
||||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
|
||||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"balanced-match": "1.0.0",
|
|
||||||
"concat-map": "0.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bunyan": {
|
"bunyan": {
|
||||||
"version": "1.5.1",
|
"version": "1.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.5.1.tgz",
|
||||||
@@ -1534,165 +1661,19 @@
|
|||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.4.0.tgz",
|
||||||
"integrity": "sha1-XjvIqsJsAajie/EHcixWVfWtfTY="
|
"integrity": "sha1-XjvIqsJsAajie/EHcixWVfWtfTY="
|
||||||
},
|
|
||||||
"concat-map": {
|
|
||||||
"version": "0.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
|
||||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"cookie": {
|
|
||||||
"version": "0.3.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
|
|
||||||
"integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s="
|
|
||||||
},
|
|
||||||
"dtrace-provider": {
|
|
||||||
"version": "0.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.6.0.tgz",
|
|
||||||
"integrity": "sha1-CweNVReTfYcxAUUtkUZzdVe3XlE=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"nan": "2.8.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"glob": {
|
|
||||||
"version": "6.0.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
|
|
||||||
"integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"inflight": "1.0.6",
|
|
||||||
"inherits": "2.0.3",
|
|
||||||
"minimatch": "3.0.4",
|
|
||||||
"once": "1.4.0",
|
|
||||||
"path-is-absolute": "1.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"inflight": {
|
|
||||||
"version": "1.0.6",
|
|
||||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
|
||||||
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"once": "1.4.0",
|
|
||||||
"wrappy": "1.0.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"inherits": {
|
|
||||||
"version": "2.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
|
||||||
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"json-stringify-safe": {
|
|
||||||
"version": "5.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
|
||||||
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
|
|
||||||
},
|
|
||||||
"lsmod": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lsmod/-/lsmod-1.0.0.tgz",
|
|
||||||
"integrity": "sha1-mgD3bco26yP6BTUK/htYXUKZ5ks="
|
|
||||||
},
|
|
||||||
"minimatch": {
|
|
||||||
"version": "3.0.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
|
|
||||||
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"brace-expansion": "1.1.11"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"minimist": {
|
|
||||||
"version": "0.0.8",
|
|
||||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
|
|
||||||
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"mkdirp": {
|
|
||||||
"version": "0.5.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
|
||||||
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"minimist": "0.0.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mv": {
|
|
||||||
"version": "2.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz",
|
|
||||||
"integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"mkdirp": "0.5.1",
|
|
||||||
"ncp": "2.0.0",
|
|
||||||
"rimraf": "2.4.5"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nan": {
|
|
||||||
"version": "2.8.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz",
|
|
||||||
"integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"ncp": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz",
|
|
||||||
"integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"once": {
|
|
||||||
"version": "1.4.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
|
||||||
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
|
||||||
"requires": {
|
|
||||||
"wrappy": "1.0.2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"path-is-absolute": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
|
||||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
|
||||||
"optional": true
|
|
||||||
},
|
|
||||||
"raven": {
|
|
||||||
"version": "1.2.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/raven/-/raven-1.2.1.tgz",
|
|
||||||
"integrity": "sha1-lJwTTbAooZC3u/j3kKrlQbfAIL0=",
|
|
||||||
"requires": {
|
|
||||||
"cookie": "0.3.1",
|
|
||||||
"json-stringify-safe": "5.0.1",
|
|
||||||
"lsmod": "1.0.0",
|
|
||||||
"stack-trace": "0.0.9",
|
|
||||||
"uuid": "3.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rimraf": {
|
|
||||||
"version": "2.4.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz",
|
|
||||||
"integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=",
|
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
|
||||||
"glob": "6.0.4"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"stack-trace": {
|
|
||||||
"version": "0.0.9",
|
|
||||||
"resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz",
|
|
||||||
"integrity": "sha1-qPbq7KkGdMMz58Q5U/J1tFFRBpU="
|
|
||||||
},
|
|
||||||
"uuid": {
|
|
||||||
"version": "3.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.0.tgz",
|
|
||||||
"integrity": "sha1-Zyj8BFnEUNeWqZwxg3VpvfZy1yg="
|
|
||||||
},
|
|
||||||
"wrappy": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
|
||||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"lru-cache": {
|
||||||
|
"version": "2.7.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
|
||||||
|
"integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI="
|
||||||
|
},
|
||||||
|
"lsmod": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/lsmod/-/lsmod-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-mgD3bco26yP6BTUK/htYXUKZ5ks="
|
||||||
|
},
|
||||||
"lynx": {
|
"lynx": {
|
||||||
"version": "0.0.11",
|
"version": "0.0.11",
|
||||||
"resolved": "https://registry.npmjs.org/lynx/-/lynx-0.0.11.tgz",
|
"resolved": "https://registry.npmjs.org/lynx/-/lynx-0.0.11.tgz",
|
||||||
@@ -1714,6 +1695,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"mersenne": {
|
||||||
|
"version": "0.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/mersenne/-/mersenne-0.0.4.tgz",
|
||||||
|
"integrity": "sha1-QB/ex+whzbngPNPTAhOY2iGycIU="
|
||||||
|
},
|
||||||
"metrics-sharelatex": {
|
"metrics-sharelatex": {
|
||||||
"version": "git+https://github.com/sharelatex/metrics-sharelatex.git#05bd57604115ae5efdca2a419fbef4f25e9a780f",
|
"version": "git+https://github.com/sharelatex/metrics-sharelatex.git#05bd57604115ae5efdca2a419fbef4f25e9a780f",
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -1722,11 +1708,6 @@
|
|||||||
"underscore": "1.6.0"
|
"underscore": "1.6.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"coffee-script": {
|
|
||||||
"version": "1.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.6.0.tgz",
|
|
||||||
"integrity": "sha1-gIs5bhEPU9AhoZpO8fZb4OjjX6M="
|
|
||||||
},
|
|
||||||
"lynx": {
|
"lynx": {
|
||||||
"version": "0.1.1",
|
"version": "0.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/lynx/-/lynx-0.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/lynx/-/lynx-0.1.1.tgz",
|
||||||
@@ -1736,16 +1717,6 @@
|
|||||||
"statsd-parser": "0.0.4"
|
"statsd-parser": "0.0.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mersenne": {
|
|
||||||
"version": "0.0.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/mersenne/-/mersenne-0.0.4.tgz",
|
|
||||||
"integrity": "sha1-QB/ex+whzbngPNPTAhOY2iGycIU="
|
|
||||||
},
|
|
||||||
"statsd-parser": {
|
|
||||||
"version": "0.0.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/statsd-parser/-/statsd-parser-0.0.4.tgz",
|
|
||||||
"integrity": "sha1-y9JDlTzELv/VSLXSI4jtaJ7GOb0="
|
|
||||||
},
|
|
||||||
"underscore": {
|
"underscore": {
|
||||||
"version": "1.6.0",
|
"version": "1.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
|
||||||
@@ -1753,6 +1724,15 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"minimatch": {
|
||||||
|
"version": "3.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
|
||||||
|
"integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"brace-expansion": "1.1.11"
|
||||||
|
}
|
||||||
|
},
|
||||||
"minimist": {
|
"minimist": {
|
||||||
"version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
|
"version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
|
||||||
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
|
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
|
||||||
@@ -1765,7 +1745,7 @@
|
|||||||
"mocha": {
|
"mocha": {
|
||||||
"version": "4.1.0",
|
"version": "4.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/mocha/-/mocha-4.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/mocha/-/mocha-4.1.0.tgz",
|
||||||
"integrity": "sha512-0RVnjg1HJsXY2YFDoTNzcc1NKhYuXKRrBAG2gDygmJJA136Cs2QlRliZG1mA0ap7cuaT30mw16luAeln+4RiNA==",
|
"integrity": "sha1-fYbPvPNcuCnidUwy4XNV7AUzh5Q=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"browser-stdout": "1.3.0",
|
"browser-stdout": "1.3.0",
|
||||||
@@ -1799,7 +1779,7 @@
|
|||||||
"commander": {
|
"commander": {
|
||||||
"version": "2.11.0",
|
"version": "2.11.0",
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz",
|
"resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz",
|
||||||
"integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==",
|
"integrity": "sha1-FXFS/R56bI2YpbcVzzdt+SgARWM=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"concat-map": {
|
"concat-map": {
|
||||||
@@ -1811,7 +1791,7 @@
|
|||||||
"debug": {
|
"debug": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
|
||||||
"integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
|
"integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ms": "2.0.0"
|
"ms": "2.0.0"
|
||||||
@@ -1820,7 +1800,7 @@
|
|||||||
"diff": {
|
"diff": {
|
||||||
"version": "3.3.1",
|
"version": "3.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz",
|
||||||
"integrity": "sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==",
|
"integrity": "sha1-qoVnpu7QPFMfyJ0/cRzQ5SWd7HU=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"fs.realpath": {
|
"fs.realpath": {
|
||||||
@@ -1846,7 +1826,7 @@
|
|||||||
"growl": {
|
"growl": {
|
||||||
"version": "1.10.3",
|
"version": "1.10.3",
|
||||||
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz",
|
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz",
|
||||||
"integrity": "sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==",
|
"integrity": "sha1-GSa6kM8+3+KttJJ/WIC8IsZseQ8=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"inflight": {
|
"inflight": {
|
||||||
@@ -1922,6 +1902,34 @@
|
|||||||
"version": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
"version": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
||||||
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
|
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
|
||||||
},
|
},
|
||||||
|
"mv": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"mkdirp": "0.5.1",
|
||||||
|
"ncp": "2.0.0",
|
||||||
|
"rimraf": "2.4.5"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"minimist": {
|
||||||
|
"version": "0.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
|
||||||
|
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"mkdirp": {
|
||||||
|
"version": "0.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
||||||
|
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"minimist": "0.0.8"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"mysql": {
|
"mysql": {
|
||||||
"version": "2.6.2",
|
"version": "2.6.2",
|
||||||
"resolved": "https://registry.npmjs.org/mysql/-/mysql-2.6.2.tgz",
|
"resolved": "https://registry.npmjs.org/mysql/-/mysql-2.6.2.tgz",
|
||||||
@@ -1975,6 +1983,18 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nan": {
|
||||||
|
"version": "2.8.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz",
|
||||||
|
"integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"ncp": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"node-uuid": {
|
"node-uuid": {
|
||||||
"version": "1.4.8",
|
"version": "1.4.8",
|
||||||
"resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
|
"resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
|
||||||
@@ -1987,6 +2007,12 @@
|
|||||||
"wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
|
"wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"path-is-absolute": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||||
|
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
"process-nextick-args": {
|
"process-nextick-args": {
|
||||||
"version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
|
"version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
|
||||||
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
|
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
|
||||||
@@ -1994,16 +2020,28 @@
|
|||||||
"pump": {
|
"pump": {
|
||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/pump/-/pump-1.0.3.tgz",
|
||||||
"integrity": "sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==",
|
"integrity": "sha1-Xf6DEcM7v2/BgmH580cCxHwIqVQ=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"end-of-stream": "1.4.1",
|
"end-of-stream": "1.4.1",
|
||||||
"once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
|
"once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"raven": {
|
||||||
|
"version": "1.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/raven/-/raven-1.2.1.tgz",
|
||||||
|
"integrity": "sha1-lJwTTbAooZC3u/j3kKrlQbfAIL0=",
|
||||||
|
"requires": {
|
||||||
|
"cookie": "0.3.1",
|
||||||
|
"json-stringify-safe": "5.0.1",
|
||||||
|
"lsmod": "1.0.0",
|
||||||
|
"stack-trace": "0.0.9",
|
||||||
|
"uuid": "3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"request": {
|
"request": {
|
||||||
"version": "2.83.0",
|
"version": "2.83.0",
|
||||||
"resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz",
|
"resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz",
|
||||||
"integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==",
|
"integrity": "sha1-ygtl2gLtYpNYh4COb1EDgQNOM1Y=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"aws-sign2": "0.7.0",
|
"aws-sign2": "0.7.0",
|
||||||
"aws4": "1.6.0",
|
"aws4": "1.6.0",
|
||||||
@@ -2361,7 +2399,7 @@
|
|||||||
"uuid": {
|
"uuid": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.2.1.tgz",
|
||||||
"integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA=="
|
"integrity": "sha1-EsUou51Y0LkmXZovbw/ovhf/HxQ="
|
||||||
},
|
},
|
||||||
"verror": {
|
"verror": {
|
||||||
"version": "1.10.0",
|
"version": "1.10.0",
|
||||||
@@ -2375,6 +2413,15 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"rimraf": {
|
||||||
|
"version": "2.4.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz",
|
||||||
|
"integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=",
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"glob": "6.0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"safe-buffer": {
|
"safe-buffer": {
|
||||||
"version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
|
"version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
|
||||||
"integrity": "sha1-iTMSr2myEj3vcfV4iQAWce6yyFM="
|
"integrity": "sha1-iTMSr2myEj3vcfV4iQAWce6yyFM="
|
||||||
@@ -2471,15 +2518,13 @@
|
|||||||
"version": "git+https://github.com/sharelatex/settings-sharelatex.git#cbc5e41c1dbe6789721a14b3fdae05bf22546559",
|
"version": "git+https://github.com/sharelatex/settings-sharelatex.git#cbc5e41c1dbe6789721a14b3fdae05bf22546559",
|
||||||
"requires": {
|
"requires": {
|
||||||
"coffee-script": "1.6.0"
|
"coffee-script": "1.6.0"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"coffee-script": {
|
|
||||||
"version": "1.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.6.0.tgz",
|
|
||||||
"integrity": "sha1-gIs5bhEPU9AhoZpO8fZb4OjjX6M="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"sigmund": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
|
||||||
|
"integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA="
|
||||||
|
},
|
||||||
"sinon": {
|
"sinon": {
|
||||||
"version": "1.7.3",
|
"version": "1.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/sinon/-/sinon-1.7.3.tgz",
|
"resolved": "https://registry.npmjs.org/sinon/-/sinon-1.7.3.tgz",
|
||||||
@@ -2512,16 +2557,6 @@
|
|||||||
"mocha": "1.17.1"
|
"mocha": "1.17.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"commander": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.0.0.tgz",
|
|
||||||
"integrity": "sha1-0bhvkB+LZL2UG96tr5JFMDk76Sg="
|
|
||||||
},
|
|
||||||
"diff": {
|
|
||||||
"version": "1.0.7",
|
|
||||||
"resolved": "https://registry.npmjs.org/diff/-/diff-1.0.7.tgz",
|
|
||||||
"integrity": "sha1-JLuwAcSn1VIhaefKvbLCgU7ZHPQ="
|
|
||||||
},
|
|
||||||
"glob": {
|
"glob": {
|
||||||
"version": "3.2.3",
|
"version": "3.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/glob/-/glob-3.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/glob/-/glob-3.2.3.tgz",
|
||||||
@@ -2532,47 +2567,11 @@
|
|||||||
"minimatch": "0.2.14"
|
"minimatch": "0.2.14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"graceful-fs": {
|
|
||||||
"version": "2.0.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz",
|
|
||||||
"integrity": "sha1-fNLNsiiko/Nule+mzBQt59GhNtA="
|
|
||||||
},
|
|
||||||
"growl": {
|
|
||||||
"version": "1.7.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/growl/-/growl-1.7.0.tgz",
|
|
||||||
"integrity": "sha1-3i1mE20ALhErpw8/EMMc98NQsto="
|
|
||||||
},
|
|
||||||
"inherits": {
|
"inherits": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
|
||||||
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
||||||
},
|
},
|
||||||
"jade": {
|
|
||||||
"version": "0.26.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/jade/-/jade-0.26.3.tgz",
|
|
||||||
"integrity": "sha1-jxDXl32NefL2/4YqgbBRPMslaGw=",
|
|
||||||
"requires": {
|
|
||||||
"commander": "0.6.1",
|
|
||||||
"mkdirp": "0.3.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"commander": {
|
|
||||||
"version": "0.6.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-0.6.1.tgz",
|
|
||||||
"integrity": "sha1-+mihT2qUXVTbvlDYzbMyDp47GgY="
|
|
||||||
},
|
|
||||||
"mkdirp": {
|
|
||||||
"version": "0.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.0.tgz",
|
|
||||||
"integrity": "sha1-G79asbqCevI1dRQ0kEJkVfSB/h4="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"lru-cache": {
|
|
||||||
"version": "2.7.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.7.3.tgz",
|
|
||||||
"integrity": "sha1-bUUk6LlV+V1PW1iFHOId1y+06VI="
|
|
||||||
},
|
|
||||||
"minimatch": {
|
"minimatch": {
|
||||||
"version": "0.2.14",
|
"version": "0.2.14",
|
||||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
|
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
|
||||||
@@ -2595,11 +2594,6 @@
|
|||||||
"jade": "0.26.3",
|
"jade": "0.26.3",
|
||||||
"mkdirp": "0.3.5"
|
"mkdirp": "0.3.5"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"sigmund": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
|
|
||||||
"integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA="
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -3325,6 +3319,16 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"stack-trace": {
|
||||||
|
"version": "0.0.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.9.tgz",
|
||||||
|
"integrity": "sha1-qPbq7KkGdMMz58Q5U/J1tFFRBpU="
|
||||||
|
},
|
||||||
|
"statsd-parser": {
|
||||||
|
"version": "0.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/statsd-parser/-/statsd-parser-0.0.4.tgz",
|
||||||
|
"integrity": "sha1-y9JDlTzELv/VSLXSI4jtaJ7GOb0="
|
||||||
|
},
|
||||||
"string_decoder": {
|
"string_decoder": {
|
||||||
"version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
|
"version": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
|
||||||
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
|
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ="
|
||||||
@@ -3332,7 +3336,7 @@
|
|||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
|
||||||
"integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
|
"integrity": "sha1-iD992rwWUUKyphQn8zUt7RldGj4=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"has-flag": "2.0.0"
|
"has-flag": "2.0.0"
|
||||||
@@ -3361,7 +3365,7 @@
|
|||||||
"tar-stream": {
|
"tar-stream": {
|
||||||
"version": "1.5.5",
|
"version": "1.5.5",
|
||||||
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz",
|
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz",
|
||||||
"integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==",
|
"integrity": "sha1-XK2Ed59FyDsfJQjZawnYjHIYr1U=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"bl": "1.2.1",
|
"bl": "1.2.1",
|
||||||
"end-of-stream": "1.4.1",
|
"end-of-stream": "1.4.1",
|
||||||
@@ -3423,6 +3427,11 @@
|
|||||||
"version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
"version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
|
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
|
||||||
},
|
},
|
||||||
|
"uuid": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-Zyj8BFnEUNeWqZwxg3VpvfZy1yg="
|
||||||
|
},
|
||||||
"v8-profiler": {
|
"v8-profiler": {
|
||||||
"version": "5.7.0",
|
"version": "5.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/v8-profiler/-/v8-profiler-5.7.0.tgz",
|
"resolved": "https://registry.npmjs.org/v8-profiler/-/v8-profiler-5.7.0.tgz",
|
||||||
|
|||||||
@@ -43,7 +43,7 @@
|
|||||||
"sequelize": "^2.1.3",
|
"sequelize": "^2.1.3",
|
||||||
"settings-sharelatex": "git+https://github.com/sharelatex/settings-sharelatex.git#v1.0.0",
|
"settings-sharelatex": "git+https://github.com/sharelatex/settings-sharelatex.git#v1.0.0",
|
||||||
"smoke-test-sharelatex": "git+https://github.com/sharelatex/smoke-test-sharelatex.git#v0.2.0",
|
"smoke-test-sharelatex": "git+https://github.com/sharelatex/smoke-test-sharelatex.git#v0.2.0",
|
||||||
"sqlite3": "~3.1.8",
|
"sqlite3": "^3.1.13",
|
||||||
"underscore": "^1.8.2",
|
"underscore": "^1.8.2",
|
||||||
"v8-profiler": "^5.2.4",
|
"v8-profiler": "^5.2.4",
|
||||||
"wrench": "~1.5.4"
|
"wrench": "~1.5.4"
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
Client = require "./helpers/Client"
|
Client = require "./helpers/Client"
|
||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
describe "Broken LaTeX file", ->
|
describe "Broken LaTeX file", ->
|
||||||
before ->
|
before (done)->
|
||||||
@broken_request =
|
@broken_request =
|
||||||
resources: [
|
resources: [
|
||||||
path: "main.tex"
|
path: "main.tex"
|
||||||
@@ -24,6 +25,7 @@ describe "Broken LaTeX file", ->
|
|||||||
\\end{document}
|
\\end{document}
|
||||||
'''
|
'''
|
||||||
]
|
]
|
||||||
|
ClsiApp.ensureRunning done
|
||||||
|
|
||||||
describe "on first run", ->
|
describe "on first run", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
@@ -31,6 +33,7 @@ describe "Broken LaTeX file", ->
|
|||||||
Client.compile @project_id, @broken_request, (@error, @res, @body) => done()
|
Client.compile @project_id, @broken_request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
it "should return a failure status", ->
|
it "should return a failure status", ->
|
||||||
|
console.log(@error, @res, @body)
|
||||||
@body.compile.status.should.equal "failure"
|
@body.compile.status.should.equal "failure"
|
||||||
|
|
||||||
describe "on second run", ->
|
describe "on second run", ->
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
Client = require "./helpers/Client"
|
Client = require "./helpers/Client"
|
||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
describe "Deleting Old Files", ->
|
describe "Deleting Old Files", ->
|
||||||
before ->
|
before (done)->
|
||||||
@request =
|
@request =
|
||||||
resources: [
|
resources: [
|
||||||
path: "main.tex"
|
path: "main.tex"
|
||||||
@@ -14,6 +15,7 @@ describe "Deleting Old Files", ->
|
|||||||
\\end{document}
|
\\end{document}
|
||||||
'''
|
'''
|
||||||
]
|
]
|
||||||
|
ClsiApp.ensureRunning done
|
||||||
|
|
||||||
describe "on first run", ->
|
describe "on first run", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ request = require "request"
|
|||||||
require("chai").should()
|
require("chai").should()
|
||||||
fs = require "fs"
|
fs = require "fs"
|
||||||
ChildProcess = require "child_process"
|
ChildProcess = require "child_process"
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
fixturePath = (path) -> __dirname + "/../fixtures/" + path
|
fixturePath = (path) -> __dirname + "/../fixtures/" + path
|
||||||
|
|
||||||
@@ -86,7 +87,9 @@ Client.runServer(4242, fixturePath("examples"))
|
|||||||
|
|
||||||
describe "Example Documents", ->
|
describe "Example Documents", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
ChildProcess.exec("rm test/acceptance/fixtures/tmp/*").on "exit", () -> done()
|
ChildProcess.exec("rm test/acceptance/fixtures/tmp/*").on "exit", () ->
|
||||||
|
ClsiApp.ensureRunning done
|
||||||
|
|
||||||
|
|
||||||
for example_dir in fs.readdirSync fixturePath("examples")
|
for example_dir in fs.readdirSync fixturePath("examples")
|
||||||
do (example_dir) ->
|
do (example_dir) ->
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
Client = require "./helpers/Client"
|
Client = require "./helpers/Client"
|
||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
describe "Simple LaTeX file", ->
|
describe "Simple LaTeX file", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
@@ -15,7 +16,8 @@ describe "Simple LaTeX file", ->
|
|||||||
\\end{document}
|
\\end{document}
|
||||||
'''
|
'''
|
||||||
]
|
]
|
||||||
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
ClsiApp.ensureRunning =>
|
||||||
|
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
it "should return the PDF", ->
|
it "should return the PDF", ->
|
||||||
pdf = Client.getOutputFile(@body, "pdf")
|
pdf = Client.getOutputFile(@body, "pdf")
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ Client = require "./helpers/Client"
|
|||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
expect = require("chai").expect
|
expect = require("chai").expect
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
describe "Syncing", ->
|
describe "Syncing", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
@@ -16,7 +17,8 @@ describe "Syncing", ->
|
|||||||
'''
|
'''
|
||||||
]
|
]
|
||||||
@project_id = Client.randomId()
|
@project_id = Client.randomId()
|
||||||
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
ClsiApp.ensureRunning =>
|
||||||
|
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
describe "from code to pdf", ->
|
describe "from code to pdf", ->
|
||||||
it "should return the correct location", (done) ->
|
it "should return the correct location", (done) ->
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
Client = require "./helpers/Client"
|
Client = require "./helpers/Client"
|
||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
|
|
||||||
describe "Timed out compile", ->
|
describe "Timed out compile", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
@@ -18,7 +20,8 @@ describe "Timed out compile", ->
|
|||||||
'''
|
'''
|
||||||
]
|
]
|
||||||
@project_id = Client.randomId()
|
@project_id = Client.randomId()
|
||||||
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
ClsiApp.ensureRunning =>
|
||||||
|
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
it "should return a timeout error", ->
|
it "should return a timeout error", ->
|
||||||
@body.compile.error.should.equal "container timed out"
|
@body.compile.error.should.equal "container timed out"
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ Client = require "./helpers/Client"
|
|||||||
request = require "request"
|
request = require "request"
|
||||||
require("chai").should()
|
require("chai").should()
|
||||||
sinon = require "sinon"
|
sinon = require "sinon"
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
host = "localhost"
|
host = "localhost"
|
||||||
|
|
||||||
@@ -46,7 +47,8 @@ describe "Url Caching", ->
|
|||||||
}]
|
}]
|
||||||
|
|
||||||
sinon.spy Server, "getFile"
|
sinon.spy Server, "getFile"
|
||||||
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
ClsiApp.ensureRunning =>
|
||||||
|
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
afterEach ->
|
afterEach ->
|
||||||
Server.getFile.restore()
|
Server.getFile.restore()
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ require("chai").should()
|
|||||||
expect = require("chai").expect
|
expect = require("chai").expect
|
||||||
path = require("path")
|
path = require("path")
|
||||||
fs = require("fs")
|
fs = require("fs")
|
||||||
|
ClsiApp = require "./helpers/ClsiApp"
|
||||||
|
|
||||||
describe "Syncing", ->
|
describe "Syncing", ->
|
||||||
before (done) ->
|
before (done) ->
|
||||||
@@ -13,7 +14,8 @@ describe "Syncing", ->
|
|||||||
content: fs.readFileSync(path.join(__dirname,"../fixtures/naugty_strings.txt"),"utf-8")
|
content: fs.readFileSync(path.join(__dirname,"../fixtures/naugty_strings.txt"),"utf-8")
|
||||||
]
|
]
|
||||||
@project_id = Client.randomId()
|
@project_id = Client.randomId()
|
||||||
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
ClsiApp.ensureRunning =>
|
||||||
|
Client.compile @project_id, @request, (@error, @res, @body) => done()
|
||||||
|
|
||||||
describe "wordcount file", ->
|
describe "wordcount file", ->
|
||||||
it "should return wordcount info", (done) ->
|
it "should return wordcount info", (done) ->
|
||||||
|
|||||||
24
test/acceptance/coffee/helpers/ClsiApp.coffee
Normal file
24
test/acceptance/coffee/helpers/ClsiApp.coffee
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
app = require('../../../../app')
|
||||||
|
require("logger-sharelatex").logger.level("error")
|
||||||
|
logger = require("logger-sharelatex")
|
||||||
|
Settings = require("settings-sharelatex")
|
||||||
|
|
||||||
|
module.exports =
|
||||||
|
running: false
|
||||||
|
initing: false
|
||||||
|
callbacks: []
|
||||||
|
ensureRunning: (callback = (error) ->) ->
|
||||||
|
if @running
|
||||||
|
return callback()
|
||||||
|
else if @initing
|
||||||
|
@callbacks.push callback
|
||||||
|
else
|
||||||
|
@initing = true
|
||||||
|
@callbacks.push callback
|
||||||
|
app.listen Settings.internal?.clsi?.port, "localhost", (error) =>
|
||||||
|
throw error if error?
|
||||||
|
@running = true
|
||||||
|
logger.log("clsi running in dev mode")
|
||||||
|
|
||||||
|
for callback in @callbacks
|
||||||
|
callback()
|
||||||
Reference in New Issue
Block a user