privUser.save(done);
};
+ var saveUser = function (done) {
+ privUser.save(done);
+ };
+
var makeGenerating = function (done) {
privReport.isGenerated = false;
privReport.save(done);
token: token,
create: createUser,
get: getUser,
- admin: makeUserAdmin
+ admin: makeUserAdmin,
+ save: saveUser
},
report: {
setUserId: setUserId,
.expect(400, done);
});
- it('should create report when file is sended', function (done) {
+ it('should send worker and update report when generation is done', function (done) {
request(app)
.post('/api/reports?access_token=' + localMock.user.token())
.attach('content', appDir + '/api/report/fixtures/minimal.pdf')
- .expect('Content-Type', /json/)
.expect(200)
.end(function (err, res) {
if (err) return done(err);
- res.body.id.should.be.instanceof(String);
- Report.find(function (err, reports) {
+ setTimeout(function () {
+ Report.findById(res.body.id, function (err, report) {
+ if (err) return done(err);
+ report.isGenerated.should.be.true();
+ done();
+ });
+ }, 1500);
+ });
+ });
+
+ it('should create report when file is sended', function (done) {
+ localMock.user.get().referential = {"RGS": "valid"};
+ localMock.user.get().reportCounter = 2;
+ localMock.user.save(function () {
+ request(app)
+ .post('/api/reports?access_token=' + localMock.user.token())
+ .attach('content', appDir + '/api/report/fixtures/minimal.pdf')
+ .expect('Content-Type', /json/)
+ .expect(200)
+ .end(function (err, res) {
if (err) return done(err);
- reports.length.should.be.exactly(2);
- done();
+ res.body.id.should.be.instanceof(String);
+ Report.find(function (err, reports) {
+ if (err) return done(err);
+ reports.length.should.be.exactly(2);
+ done();
+ });
});
- });
+ });
+
});
it('should create input directory for generator', function (done) {
});
it('should be allowed to administrators', function (done) {
+ localMock.user.admin(function () {
+ localMock.report.createEmptyPDF(function () {
+ request(app)
+ .delete('/api/reports?access_token=' + localMock.user.token())
+ .expect(204, done);
+ });
+ });
+ });
+
+ it('should catch error for non existing PDF files', function (done) {
localMock.user.admin(function () {
request(app)
.delete('/api/reports?access_token=' + localMock.user.token())
.expect(204, done);
-
});
});
});
\ No newline at end of file