@@ -32,6 +32,7 @@ describe("Extension Requests", function () {
3232 taskId4 ,
3333 taskId5 ,
3434 taskId6 ,
35+ taskId7 ,
3536 extensionRequestId1 ,
3637 extensionRequestId2 ,
3738 extensionRequestId3 ,
@@ -141,6 +142,22 @@ describe("Extension Requests", function () {
141142 completionAward : { [ DINERO ] : 3 , [ NEELAM ] : 300 } ,
142143 lossRate : { [ DINERO ] : 1 } ,
143144 } ,
145+ {
146+ title : "Test task 5" ,
147+ purpose : "To Test mocha" ,
148+ featureUrl : "<testUrl>" ,
149+ type : "group" ,
150+ links : [ "test1" ] ,
151+ endsOn : 1234 ,
152+ startedOn : 54321 ,
153+ status : "active" ,
154+ percentCompleted : 10 ,
155+ dependsOn : [ "d12" , "d23" ] ,
156+ isNoteworthy : false ,
157+ assignee : appOwner . username ,
158+ completionAward : { [ DINERO ] : 3 , [ NEELAM ] : 300 } ,
159+ lossRate : { [ DINERO ] : 1 } ,
160+ } ,
144161 ] ;
145162
146163 // Add the active task
@@ -155,6 +172,7 @@ describe("Extension Requests", function () {
155172 taskId4 = ( await tasks . updateTask ( taskData [ 4 ] ) ) . taskId ;
156173 taskId5 = ( await tasks . updateTask ( taskData [ 5 ] ) ) . taskId ;
157174 taskId6 = ( await tasks . updateTask ( taskData [ 6 ] ) ) . taskId ;
175+ taskId7 = ( await tasks . updateTask ( taskData [ 7 ] ) ) . taskId ;
158176
159177 const extensionRequest = {
160178 taskId : taskId3 ,
@@ -204,6 +222,16 @@ describe("Extension Requests", function () {
204222 reason : "family event" ,
205223 status : "PENDING" ,
206224 } ;
225+ const extensionRequest5 = {
226+ taskId : taskId7 ,
227+ title : "change ETA" ,
228+ assignee : user . id ,
229+ oldEndsOn : 1234 ,
230+ newEndsOn : 1235 ,
231+ reason : "family event" ,
232+ status : "APPROVED" ,
233+ } ;
234+
207235 const extensionRequest6 = {
208236 taskId : taskId6 ,
209237 title : "change ETA" ,
@@ -218,6 +246,7 @@ describe("Extension Requests", function () {
218246 extensionRequestId3 = ( await extensionRequests . createExtensionRequest ( extensionRequest2 ) ) . id ;
219247 extensionRequestId4 = ( await extensionRequests . createExtensionRequest ( extensionRequest3 ) ) . id ;
220248 extensionRequestId5 = ( await extensionRequests . createExtensionRequest ( extensionRequest4 ) ) . id ;
249+ await extensionRequests . createExtensionRequest ( extensionRequest5 ) ;
221250 await extensionRequests . createExtensionRequest ( extensionRequest6 ) ;
222251 } ) ;
223252
@@ -273,6 +302,44 @@ describe("Extension Requests", function () {
273302 } ) ;
274303 } ) ;
275304
305+ it ( "should return success response and an empty array of extensionRequest if assignee is not same as latest one" , function ( done ) {
306+ chai
307+ . request ( app )
308+ . get ( `/extension-requests/self` )
309+ . query ( { taskId : taskId7 } )
310+ . set ( "cookie" , `${ cookieName } =${ appOwnerjwt } ` )
311+ . end ( ( err , res ) => {
312+ if ( err ) {
313+ return done ( err ) ;
314+ }
315+
316+ expect ( res ) . to . have . status ( 200 ) ;
317+ expect ( res . body ) . to . be . a ( "object" ) ;
318+ expect ( res . body . message ) . to . be . equal ( "Extension Requests returned successfully!" ) ;
319+ expect ( res . body . allExtensionRequests ) . to . be . a ( "array" ) . with . lengthOf ( 0 ) ;
320+ return done ( ) ;
321+ } ) ;
322+ } ) ;
323+
324+ it ( "should return success response and a single latestExtensionRequest if assignee same as latest one" , function ( done ) {
325+ chai
326+ . request ( app )
327+ . get ( `/extension-requests/self` )
328+ . query ( { taskId : taskId2 } )
329+ . set ( "cookie" , `${ cookieName } =${ appOwnerjwt } ` )
330+ . end ( ( err , res ) => {
331+ if ( err ) {
332+ return done ( err ) ;
333+ }
334+
335+ expect ( res ) . to . have . status ( 200 ) ;
336+ expect ( res . body ) . to . be . a ( "object" ) ;
337+ expect ( res . body . message ) . to . be . equal ( "Extension Requests returned successfully!" ) ;
338+ expect ( res . body . allExtensionRequests ) . to . be . a ( "array" ) . with . lengthOf ( 1 ) ;
339+ return done ( ) ;
340+ } ) ;
341+ } ) ;
342+
276343 it ( "Should return 401 if not logged in" , function ( done ) {
277344 chai
278345 . request ( app )
0 commit comments