delete measurements with sample
This commit is contained in:
@ -2,13 +2,15 @@ import should from 'should/as-function';
|
||||
import SampleModel from '../models/sample';
|
||||
import NoteModel from '../models/note';
|
||||
import NoteFieldModel from '../models/note_field';
|
||||
import MeasurementModel from '../models/measurement';
|
||||
import TestHelper from "../test/helper";
|
||||
import globals from '../globals';
|
||||
import mongoose from 'mongoose';
|
||||
|
||||
// TODO: generate output for ML in format DPT -> data, implement filtering, field selection
|
||||
// TODO: generate csv
|
||||
// TODO: filter by not completely filled/no measurements
|
||||
// TODO: write script for data import
|
||||
// TODO: delete everything (measurements, condition) with sample
|
||||
// TODO: allow adding sample numbers for existing samples
|
||||
// TODO: Do not allow validation or measurement entry without condition
|
||||
|
||||
@ -752,6 +754,24 @@ describe('/sample', () => {
|
||||
});
|
||||
});
|
||||
});
|
||||
it('deletes associated measurements', done => {
|
||||
TestHelper.request(server, done, {
|
||||
method: 'delete',
|
||||
url: '/sample/400000000000000000000001',
|
||||
auth: {basic: 'janedoe'},
|
||||
httpStatus: 200
|
||||
}).end((err, res) => {
|
||||
if (err) return done(err);
|
||||
should(res.body).be.eql({status: 'OK'});
|
||||
MeasurementModel.find({sample_id: mongoose.Types.ObjectId('400000000000000000000001')}).lean().exec((err, data: any) => {
|
||||
if (err) return done(err);
|
||||
should(data).matchEach(sample => {
|
||||
should(sample).have.property('status', -1);
|
||||
});
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
it('rejects deleting samples of other users for write users', done => {
|
||||
TestHelper.request(server, done, {
|
||||
method: 'delete',
|
||||
@ -768,7 +788,6 @@ describe('/sample', () => {
|
||||
httpStatus: 404
|
||||
});
|
||||
});
|
||||
it('rejects deleting a sample referenced by conditions'); // TODO after decision
|
||||
it('rejects requests from a read user', done => {
|
||||
TestHelper.request(server, done, {
|
||||
method: 'delete',
|
||||
|
Reference in New Issue
Block a user