@@ -45,23 +45,17 @@ const token = '';
4545describe ( 'OfficeAccessCard' , ( ) => {
4646 let deleteCardStub = null ;
4747 let getAllCardsStub = null ;
48- let editAliasStub = null ;
49- let testCardId = null ;
5048
5149 const VALID_CARD_BYTES = 'wesleys card' ;
5250 const NEW_CARD_BYTES = 'dials card' ;
5351 const INVALID_CARD_BYTES = 'evans card' ;
5452
5553 const VALID_ALIAS = 'gauravs card' ;
5654 const INVALID_ALIAS = 'bobs card' ;
57- const NEW_ALIAS = 'updated test card' ;
58- const EMPTY_ALIAS = '' ;
59- const WHITESPACE_ALIAS = ' ' ;
6055
6156 const VERIFY_API_PATH = '/api/OfficeAccessCard/verify' ;
6257 const DELETE_API_PATH = '/api/OfficeAccessCard/delete' ;
6358 const GET_ALL_CARDS_API_PATH = '/api/OfficeAccessCard/getAllCards' ;
64- const EDIT_API_PATH = '/api/OfficeAccessCard/edit' ;
6559 const INCREMENT_VERIFY_COUNT = 0 ;
6660
6761 before ( ( ) => {
@@ -82,10 +76,7 @@ describe('OfficeAccessCard', () => {
8276 } ) ;
8377 return new Promise ( ( resolve , reject ) => {
8478 testOfficeAccessCard . save ( )
85- . then ( savedCard => {
86- testCardId = savedCard . _id . toString ( ) ;
87- resolve ( savedCard ) ;
88- } )
79+ . then ( resolve )
8980 . catch ( reject ) ;
9081 } ) ;
9182 } ) ;
@@ -125,14 +116,14 @@ describe('OfficeAccessCard', () => {
125116 expect ( result ) . to . have . status ( BAD_REQUEST ) ;
126117 } ) ;
127118
128- it ( 'Should return 403 with invalid api key' , async ( ) => {
119+ it ( 'Should return 401 with invalid api key' , async ( ) => {
129120 const params = new URLSearchParams ( ) ;
130121 params . append ( 'cardBytes' , VALID_CARD_BYTES ) ;
131122 const path = VERIFY_API_PATH + '?' + params . toString ( ) ;
132123 const invalidApiKey = API_KEY + '-invalid-suffix' ;
133124 const result = await test . sendGetRequestWithApiKey (
134125 invalidApiKey + '' , path ) ;
135- expect ( result ) . to . have . status ( FORBIDDEN ) ;
126+ expect ( result ) . to . have . status ( UNAUTHORIZED ) ;
136127 } ) ;
137128
138129 it ( 'Should return 404 with valid api key and unknown card' , async ( ) => {
@@ -250,94 +241,4 @@ describe('OfficeAccessCard', () => {
250241 } ) ;
251242 } ) ;
252243
253- describe ( 'POST edit' , ( ) => {
254- it ( 'Should return 401 when token is not sent' , async ( ) => {
255- const result = await test . sendPostRequest ( EDIT_API_PATH ) ;
256- expect ( result ) . to . have . status ( UNAUTHORIZED ) ;
257- } ) ;
258-
259- it ( 'Should return 401 when invalid token is sent' , async ( ) => {
260- const result = await test . sendPostRequestWithToken ( token ,
261- EDIT_API_PATH ) ;
262- expect ( result ) . to . have . status ( UNAUTHORIZED ) ;
263- } ) ;
264-
265- it ( 'Should return 400 when _id is missing from request body' , async ( ) => {
266- setTokenStatus ( true ) ;
267- const result = await test . sendPostRequestWithToken ( token ,
268- EDIT_API_PATH , { alias : NEW_ALIAS } ) ;
269- expect ( result ) . to . have . status ( BAD_REQUEST ) ;
270- } ) ;
271-
272- it ( 'Should return 400 when alias is missing from request body' , async ( ) => {
273- setTokenStatus ( true ) ;
274- const result = await test . sendPostRequestWithToken ( token ,
275- EDIT_API_PATH , { _id : testCardId } ) ;
276- expect ( result ) . to . have . status ( BAD_REQUEST ) ;
277- } ) ;
278-
279- it ( 'Should return 404 when trying to edit a non-existent card' , async ( ) => {
280- setTokenStatus ( true ) ;
281- const nonExistentId = new mongoose . Types . ObjectId ( ) . toString ( ) ;
282- const result = await test . sendPostRequestWithToken ( token ,
283- EDIT_API_PATH , { _id : nonExistentId , alias : NEW_ALIAS } ) ;
284- expect ( result ) . to . have . status ( NOT_FOUND ) ;
285- } ) ;
286-
287- it ( 'Should return 400 when _id is not a valid ObjectId' , async ( ) => {
288- setTokenStatus ( true ) ;
289- const result = await test . sendPostRequestWithToken ( token ,
290- EDIT_API_PATH , { _id : 'invalid-id' , alias : NEW_ALIAS } ) ;
291- expect ( result ) . to . have . status ( BAD_REQUEST ) ;
292- } ) ;
293-
294- it ( 'Should return 200 and successfully update alias for valid request' , async ( ) => {
295- setTokenStatus ( true ) ;
296- const result = await test . sendPostRequestWithToken ( token ,
297- EDIT_API_PATH , { _id : testCardId , alias : NEW_ALIAS } ) ;
298- expect ( result ) . to . have . status ( OK ) ;
299- expect ( result . body ) . to . have . property ( 'message' , 'Card alias updated successfully' ) ;
300- expect ( result . body ) . to . have . property ( 'card' ) ;
301- expect ( result . body . card ) . to . have . property ( 'alias' , NEW_ALIAS ) ;
302- } ) ;
303-
304- it ( 'Should actually update the alias in the database' , async ( ) => {
305- setTokenStatus ( true ) ;
306- await test . sendPostRequestWithToken ( token ,
307- EDIT_API_PATH , { _id : testCardId , alias : NEW_ALIAS } ) ;
308-
309- const updatedCard = await OfficeAccessCard . findById ( testCardId ) ;
310- expect ( updatedCard . alias ) . to . equal ( NEW_ALIAS ) ;
311- } ) ;
312-
313- it ( 'Should handle empty alias by returning 400' , async ( ) => {
314- setTokenStatus ( true ) ;
315- const result = await test . sendPostRequestWithToken ( token ,
316- EDIT_API_PATH , { _id : testCardId , alias : EMPTY_ALIAS } ) ;
317- expect ( result ) . to . have . status ( BAD_REQUEST ) ;
318- } ) ;
319-
320- it ( 'Should handle whitespace-only alias by returning 400' , async ( ) => {
321- setTokenStatus ( true ) ;
322- const result = await test . sendPostRequestWithToken ( token ,
323- EDIT_API_PATH , { _id : testCardId , alias : WHITESPACE_ALIAS } ) ;
324- expect ( result ) . to . have . status ( BAD_REQUEST ) ;
325- } ) ;
326-
327- it ( 'Should preserve other card properties when updating alias' , async ( ) => {
328- setTokenStatus ( true ) ;
329- const originalCard = await OfficeAccessCard . findById ( testCardId ) ;
330- const originalCardBytes = originalCard . cardBytes ;
331- const originalVerifiedCount = originalCard . verifiedCount ;
332-
333- await test . sendPostRequestWithToken ( token ,
334- EDIT_API_PATH , { _id : testCardId , alias : NEW_ALIAS } ) ;
335-
336- const updatedCard = await OfficeAccessCard . findById ( testCardId ) ;
337- expect ( updatedCard . cardBytes ) . to . equal ( originalCardBytes ) ;
338- expect ( updatedCard . verifiedCount ) . to . equal ( originalVerifiedCount ) ;
339- expect ( updatedCard . alias ) . to . equal ( NEW_ALIAS ) ;
340- } ) ;
341- } ) ;
342-
343244} ) ;
0 commit comments