diff --git a/tests/scripts.rb b/tests/scripts.rb index 0c0d70be..50e0d8cb 100644 --- a/tests/scripts.rb +++ b/tests/scripts.rb @@ -69,6 +69,16 @@ class Scripts result['data'] end + def self.closeTicket(ticketNumber) + result = request('/ticket/close', { + ticketNumber:ticketNumber, + csrf_userid: $csrf_userid, + csrf_token: $csrf_token + }) + + result['data'] + end + def self.createAPIKey(name) request('/system/add-api-key', { csrf_userid: $csrf_userid, diff --git a/tests/staff/get-new-tickets.rb b/tests/staff/get-new-tickets.rb index 2ecf7d1d..1d7caa1f 100644 --- a/tests/staff/get-new-tickets.rb +++ b/tests/staff/get-new-tickets.rb @@ -10,6 +10,6 @@ describe '/staff/get-new-tickets' do }) (result['status']).should.equal('success') - (result['data'].size).should.equal(7) + (result['data'].size).should.equal(9) end -end \ No newline at end of file +end diff --git a/tests/system/disable-user-system.rb b/tests/system/disable-user-system.rb index 44b1b287..b43a28da 100644 --- a/tests/system/disable-user-system.rb +++ b/tests/system/disable-user-system.rb @@ -19,7 +19,7 @@ describe'system/disable-user-system' do numberOftickets= $database.query("SELECT * FROM ticket WHERE author_id IS NULL AND author_email IS NOT NULL AND author_name IS NOT NULL") - (numberOftickets.num_rows).should.equal(36) + (numberOftickets.num_rows).should.equal(38) request('/user/logout') @@ -92,7 +92,7 @@ describe'system/disable-user-system' do numberOftickets= $database.query("SELECT * FROM ticket WHERE author_email IS NULL AND author_name IS NULL AND author_id IS NOT NULL" ) - (numberOftickets.num_rows).should.equal(37) + (numberOftickets.num_rows).should.equal(39) end diff --git a/tests/ticket/close.rb b/tests/ticket/close.rb index a8057d6d..f010ac7d 100644 --- a/tests/ticket/close.rb +++ b/tests/ticket/close.rb @@ -2,8 +2,6 @@ describe '/ticket/close' do request('/user/logout') Scripts.login($staff[:email], $staff[:password], true) - #TODO: DO THINGS - it 'should not close ticket if not assigned' do ticket = $database.getRow('ticket', 1 , 'id') request('/staff/un-assign-ticket', { @@ -21,7 +19,7 @@ describe '/ticket/close' do (result['status']).should.equal('fail') end - it 'should close a ticket if everything is okey' do + it 'should close ticket if you have it assigned' do ticket = $database.getRow('ticket', 1 , 'id') request('/staff/assign-ticket', { @@ -44,11 +42,34 @@ describe '/ticket/close' do lastLog = $database.getLastRow('log') (lastLog['type']).should.equal('CLOSE') - request('/staff/un-assign-ticket', { ticketNumber: ticket['ticket_number'], csrf_userid: $csrf_userid, csrf_token: $csrf_token }) end + + it 'should close ticket if you are the author' do + request('/user/logout') + Scripts.createUser('closer@os4.com','closer','Closer') + Scripts.login('closer@os4.com','closer') + Scripts.createTicket('tickettoclose') + + ticket = $database.getRow('ticket', 'tickettoclose', 'title') + + result = request('/ticket/close', { + ticketNumber: ticket['ticket_number'], + csrf_userid: $csrf_userid, + csrf_token: $csrf_token + + }) + + (result['status']).should.equal('success') + + ticket = $database.getRow('ticket', 'tickettoclose', 'title') + (ticket['closed']).should.equal('1') + + lastLog = $database.getLastRow('log') + (lastLog['type']).should.equal('CLOSE') + end end diff --git a/tests/ticket/re-open.rb b/tests/ticket/re-open.rb index df3288d7..1d966152 100644 --- a/tests/ticket/re-open.rb +++ b/tests/ticket/re-open.rb @@ -2,8 +2,6 @@ describe '/ticket/re-open' do request('/user/logout') Scripts.login($staff[:email], $staff[:password], true) - #TODO: DO THINGS - it 'should re open a ticket if everything is okey' do ticket = $database.getRow('ticket', 1 , 'id') @@ -21,5 +19,28 @@ describe '/ticket/re-open' do lastLog = $database.getLastRow('log') (lastLog['type']).should.equal('RE_OPEN') + + request('/user/logout') + Scripts.createUser('reopener@os4.com','reopener','Reopener') + Scripts.login('reopener@os4.com','reopener') + Scripts.createTicket('tickettoreopen') + + ticket = $database.getRow('ticket', 'tickettoreopen', 'title') + + Scripts.closeTicket(ticket['ticketNumber']) + + result = request('/ticket/re-open', { + ticketNumber: ticket['ticket_number'], + csrf_userid: $csrf_userid, + csrf_token: $csrf_token + }) + + (result['status']).should.equal('success') + + ticket = $database.getRow('ticket', 'tickettoreopen', 'title') + (ticket['closed']).should.equal('0') + + lastLog = $database.getLastRow('log') + (lastLog['type']).should.equal('RE_OPEN') end end diff --git a/tests/user/get-users-test.rb b/tests/user/get-users-test.rb index 522f18c5..a9049dac 100644 --- a/tests/user/get-users-test.rb +++ b/tests/user/get-users-test.rb @@ -36,7 +36,7 @@ describe '/user/get-users' do }) (result['status']).should.equal('success') - (result['data']['users'].size).should.equal(3) + (result['data']['users'].size).should.equal(5) end it 'should get users with order by tickets and asc' do