76 lines
2.5 KiB
Ruby
76 lines
2.5 KiB
Ruby
describe '/ticket/edit-title' do
|
|
|
|
Scripts.logout()
|
|
Scripts.login()
|
|
Scripts.createTicket('Valar Morghulis','content of the ticket made by an user')
|
|
ticket = $database.getRow('ticket', 'Valar Morghulis', 'title')
|
|
ticketNumber = ticket['ticket_number']
|
|
|
|
it 'should fail change title of the ticket if the title is invalid' do
|
|
result = request('/ticket/edit-title', {
|
|
csrf_userid: $csrf_userid,
|
|
csrf_token: $csrf_token,
|
|
title: '',
|
|
ticketNumber: ticket['ticket_number']
|
|
})
|
|
|
|
ticket = $database.getRow('ticket', ticketNumber, 'ticket_number')
|
|
|
|
(result['status']).should.equal('fail')
|
|
(result['message']).should.equal('INVALID_TITLE')
|
|
end
|
|
|
|
it 'should change title of the ticket if the author user tries it' do
|
|
result = request('/ticket/edit-title', {
|
|
csrf_userid: $csrf_userid,
|
|
csrf_token: $csrf_token,
|
|
title: 'Valar dohaeris',
|
|
ticketNumber: ticket['ticket_number']
|
|
})
|
|
|
|
ticket = $database.getRow('ticket', ticketNumber, 'ticket_number')
|
|
|
|
(result['status']).should.equal('success')
|
|
(ticket['title']).should.equal('Valar dohaeris')
|
|
(ticket['edited_title']).should.equal(1)
|
|
end
|
|
|
|
it 'should change the title of the ticket if staff is logged' do
|
|
Scripts.logout()
|
|
Scripts.login($staff[:email], $staff[:password], true)
|
|
|
|
result = request('/ticket/edit-title', {
|
|
csrf_userid: $csrf_userid,
|
|
csrf_token: $csrf_token,
|
|
title: 'Valar dohaeris by Staff',
|
|
ticketNumber: ticket['ticket_number']
|
|
})
|
|
|
|
ticket = $database.getRow('ticket', ticketNumber, 'ticket_number')
|
|
|
|
(result['status']).should.equal('success')
|
|
(ticket['title']).should.equal('Valar dohaeris by Staff')
|
|
(ticket['edited_title']).should.equal(1)
|
|
end
|
|
|
|
it 'should not change the title if the user is not the author' do
|
|
Scripts.logout()
|
|
Scripts.login($staff[:email], $staff[:password], true)
|
|
Scripts.createTicket('Winterfell')
|
|
ticket = $database.getRow('ticket', 'Winterfell', 'title')
|
|
|
|
Scripts.logout()
|
|
Scripts.login()
|
|
|
|
result = request('/ticket/edit-title', {
|
|
csrf_userid: $csrf_userid,
|
|
csrf_token: $csrf_token,
|
|
title: 'Casterly Rock',
|
|
ticketNumber: ticket['ticket_number']
|
|
})
|
|
(result['status']).should.equal('fail')
|
|
(result['message']).should.equal('NO_PERMISSION')
|
|
end
|
|
|
|
end
|