forked from workshopper/workshopper-exercise
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfilecheck.js
More file actions
29 lines (19 loc) · 683 Bytes
/
filecheck.js
File metadata and controls
29 lines (19 loc) · 683 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
const fs = require('fs')
, path = require('path')
function setup (mode, callback) {
var submission = this.args[0]
fs.stat(submission.toString(), function (err, stat) {
if ((err && err.code == 'ENOENT') || !stat)
return callback(new Error(this.__('error.submission_no_file', {submission: path.resolve(submission.toString())})))
if (err)
return callback(err)
if (!stat.isFile())
return callback(new Error(this.__('error.submission_not_regular', {submission: path.resolve(submission.toString())})))
callback()
}.bind(this))
}
function filecheck (exercise) {
exercise.addSetup(setup)
return exercise
}
module.exports = filecheck