1
0
Fork 0
freesewing/sites/backend/tests/pattern.test.js
2022-09-15 13:49:55 +02:00

96 lines
2.8 KiB
JavaScript

module.exports = function tests(store, config, chai) {
describe('Pattern endpoints', () => {
it('should create a pattern', (done) => {
chai
.request(config.backend)
.post('/patterns')
.set('Authorization', 'Bearer ' + config.user.token)
.send({
name: 'Test pattern',
person: 'Someone',
notes: 'Some notes',
data: {
test: 'value',
},
})
.end((err, res) => {
res.should.have.status(200)
let data = JSON.parse(res.text)
data.name.should.equal('Test pattern')
data.notes.should.equal('Some notes')
data.data.test.should.equal('value')
config.user.pattern = data.handle
done()
})
})
it('should update the pattern name', (done) => {
chai
.request(config.backend)
.put('/patterns/' + config.user.pattern)
.set('Authorization', 'Bearer ' + config.user.token)
.send({
name: 'New name',
})
.end((err, res) => {
res.should.have.status(200)
let data = JSON.parse(res.text)
data.name.should.equal('New name')
data.handle.should.equal(config.user.pattern)
done()
})
})
it('should update the pattern notes', (done) => {
chai
.request(config.backend)
.put('/patterns/' + config.user.pattern)
.set('Authorization', 'Bearer ' + config.user.token)
.send({
notes: 'These are the notes',
})
.end((err, res) => {
res.should.have.status(200)
let data = JSON.parse(res.text)
data.notes.should.equal('These are the notes')
data.handle.should.equal(config.user.pattern)
done()
})
})
it('should load the pattern data without authentication', (done) => {
chai
.request(config.backend)
.get('/patterns/' + config.user.pattern)
.end((err, res) => {
res.should.have.status(200)
let data = JSON.parse(res.text)
data.notes.should.equal('These are the notes')
data.handle.should.equal(config.user.pattern)
done()
})
})
it('should delete the pattern', (done) => {
chai
.request(config.backend)
.delete('/patterns/' + config.user.pattern)
.set('Authorization', 'Bearer ' + config.user.token)
.end((err, res) => {
res.should.have.status(204)
done()
})
})
it('should no longer have this pattern', (done) => {
chai
.request(config.backend)
.get('/patterns/' + config.user.pattern)
.set('Authorization', 'Bearer ' + config.user.token)
.end((err, res) => {
res.should.have.status(404)
done()
})
})
})
}