@@ -5,6 +5,7 @@ var m = require('mongoose')
55var ticketSchema = require ( '../../src/models/ticket' )
66var groupSchema = require ( '../../src/models/group' )
77var prioritySchema = require ( '../../src/models/ticketpriority' )
8+ var statusSchema = require ( '../../src/models/ticketStatus' )
89
910describe ( 'ticket.js' , function ( ) {
1011 // it('should clear collections.', function(done) {
@@ -21,77 +22,90 @@ describe('ticket.js', function () {
2122 prioritySchema . findOne ( { default : true } ) . exec ( function ( err , p ) {
2223 expect ( err ) . to . not . exist
2324 expect ( p ) . to . be . a ( 'object' )
24-
25- ticketSchema . create (
26- {
27- owner : m . Types . ObjectId ( ) ,
28- group : m . Types . ObjectId ( ) ,
29- status : 0 ,
30- tags : [ ] ,
31- date : new Date ( ) ,
32- subject : 'Dummy Test Subject' ,
33- issue : 'Dummy Test Issue' ,
34- priority : p . _id ,
35- type : m . Types . ObjectId ( ) ,
36- history : [ ]
37- } ,
38- function ( err , t ) {
39- expect ( err ) . to . not . exist
40- expect ( t ) . to . be . a ( 'object' )
41- expect ( t . _doc ) . to . include . keys (
42- '_id' ,
43- 'uid' ,
44- 'owner' ,
45- 'group' ,
46- 'status' ,
47- 'tags' ,
48- 'date' ,
49- 'subject' ,
50- 'issue' ,
51- 'priority' ,
52- 'type' ,
53- 'history' ,
54- 'attachments' ,
55- 'comments' ,
56- 'deleted'
57- )
58-
59- expect ( t . uid ) . to . equal ( 1000 )
60-
61- done ( )
62- }
63- )
25+ statusSchema . findOne ( { uid : 0 } ) . exec ( function ( err , status ) {
26+ expect ( err ) . to . not . exist
27+ expect ( status ) . to . be . a ( 'object' )
28+ ticketSchema . create (
29+ {
30+ owner : m . Types . ObjectId ( ) ,
31+ group : m . Types . ObjectId ( ) ,
32+ status : status . _id ,
33+ tags : [ ] ,
34+ date : new Date ( ) ,
35+ subject : 'Dummy Test Subject' ,
36+ issue : 'Dummy Test Issue' ,
37+ priority : p . _id ,
38+ type : m . Types . ObjectId ( ) ,
39+ history : [ ]
40+ } ,
41+ function ( err , t ) {
42+ expect ( err ) . to . not . exist
43+ expect ( t ) . to . be . a ( 'object' )
44+ expect ( t . _doc ) . to . include . keys (
45+ '_id' ,
46+ 'uid' ,
47+ 'owner' ,
48+ 'group' ,
49+ 'status' ,
50+ 'tags' ,
51+ 'date' ,
52+ 'subject' ,
53+ 'issue' ,
54+ 'priority' ,
55+ 'type' ,
56+ 'history' ,
57+ 'attachments' ,
58+ 'comments' ,
59+ 'deleted'
60+ )
61+
62+ expect ( t . uid ) . to . equal ( 1000 )
63+
64+ done ( )
65+ }
66+ )
67+ } )
6468 } )
6569 } )
6670
6771 it ( 'should set the ticket status to closed then to open' , function ( done ) {
6872 async . series (
6973 [
7074 function ( cb ) {
71- ticketSchema . getTicketByUid ( 1000 , function ( err , ticket ) {
75+ statusSchema . findOne ( { uid : 3 } , function ( err , status ) {
7276 expect ( err ) . to . not . exist
73- expect ( ticket ) . to . be . a ( 'object' )
77+ expect ( status ) . to . be . a ( 'object' )
7478
75- ticket . setStatus ( m . Types . ObjectId ( ) , 3 , function ( err , ticket ) {
79+ ticketSchema . getTicketByUid ( 1000 , function ( err , ticket ) {
7680 expect ( err ) . to . not . exist
77- expect ( ticket . status ) . to . equal ( 3 )
78- expect ( ticket . closedDate ) . to . exist
81+ expect ( ticket ) . to . be . a ( 'object' )
7982
80- cb ( )
83+ ticket . setStatus ( ticket . _id , status . _id , function ( err , ticket ) {
84+ expect ( err ) . to . not . exist
85+ expect ( ticket . status ) . to . equal ( status . _id )
86+ expect ( ticket . closedDate ) . to . exist
87+
88+ cb ( )
89+ } )
8190 } )
8291 } )
8392 } ,
8493 function ( cb ) {
85- ticketSchema . getTicketByUid ( 1000 , function ( err , ticket ) {
94+ statusSchema . findOne ( { uid : 1 } , function ( err , status ) {
8695 expect ( err ) . to . not . exist
87- expect ( ticket ) . to . be . a ( 'object' )
88-
89- ticket . setStatus ( m . Types . ObjectId ( ) , 1 , function ( err , ticket ) {
96+ expect ( status ) . to . be . a ( 'object' )
97+ ticketSchema . getTicketByUid ( 1000 , function ( err , ticket ) {
9098 expect ( err ) . to . not . exist
91- expect ( ticket . status ) . to . equal ( 1 )
92- expect ( ticket . closedDate ) . to . not . exist
99+ expect ( ticket ) . to . be . a ( 'object' )
93100
94- cb ( )
101+ ticket . setStatus ( ticket . _id , status . _id , function ( err , ticket ) {
102+ expect ( err ) . to . not . exist
103+ console . log ( ticket )
104+ expect ( ticket . status ) . to . equal ( status . _id )
105+ expect ( ticket . closedDate ) . to . not . exist
106+
107+ cb ( )
108+ } )
95109 } )
96110 } )
97111 }
@@ -393,22 +407,22 @@ describe('ticket.js', function () {
393407 async . parallel (
394408 [
395409 function ( cb ) {
396- ticketSchema . getTicketsByStatus ( [ m . Types . ObjectId ( ) ] , 0 , function ( err , tickets ) {
410+ ticketSchema . getTicketsByStatus ( [ m . Types . ObjectId ( ) ] , m . Types . ObjectId ( ) , function ( err , tickets ) {
397411 expect ( err ) . to . not . exist
398412 expect ( tickets ) . to . have . length ( 0 )
399413
400414 cb ( )
401415 } )
402416 } ,
403417 function ( cb ) {
404- ticketSchema . getTicketsByStatus ( undefined , 0 , function ( err , tickets ) {
418+ ticketSchema . getTicketsByStatus ( undefined , m . Types . ObjectId ( ) , function ( err , tickets ) {
405419 expect ( err ) . to . exist
406420
407421 cb ( )
408422 } )
409423 } ,
410424 function ( cb ) {
411- ticketSchema . getTicketsByStatus ( m . Types . ObjectId ( ) , 0 , function ( err , tickets ) {
425+ ticketSchema . getTicketsByStatus ( m . Types . ObjectId ( ) , m . Types . ObjectId ( ) , function ( err , tickets ) {
412426 expect ( err ) . to . exist
413427
414428 cb ( )
@@ -422,12 +436,16 @@ describe('ticket.js', function () {
422436 } )
423437
424438 it ( 'should get all tickets by status' , function ( done ) {
425- ticketSchema . getAllByStatus ( 0 , function ( err , tickets ) {
439+ statusSchema . findOne ( { uid : 0 } , function ( err , status ) {
426440 expect ( err ) . to . not . exist
427441
428- expect ( tickets ) . to . have . length ( 1 )
442+ ticketSchema . getAllByStatus ( status . _id , function ( err , tickets ) {
443+ expect ( err ) . to . not . exist
429444
430- done ( )
445+ expect ( tickets ) . to . have . length ( 1 )
446+
447+ done ( )
448+ } )
431449 } )
432450 } )
433451
0 commit comments