File tree Expand file tree Collapse file tree 3 files changed +17
-2
lines changed Expand file tree Collapse file tree 3 files changed +17
-2
lines changed Original file line number Diff line number Diff line change @@ -2168,7 +2168,8 @@ class Playwright extends Helper {
21682168    let  chunked  =  chunkArray ( attrs ,  values . length ) ; 
21692169    chunked  =  chunked . filter ( ( val )  =>  { 
21702170      for  ( let  i  =  0 ;  i  <  val . length ;  ++ i )  { 
2171-         if  ( ! val [ i ] . includes ( values [ i ] ) )  return  false ; 
2171+         // if the attribute doesn't exist, returns false as well 
2172+         if  ( ! val [ i ]  ||  ! val [ i ] . includes ( values [ i ] ) )  return  false ; 
21722173      } 
21732174      return  true ; 
21742175    } ) ; 
Original file line number Diff line number Diff line change @@ -1823,7 +1823,8 @@ class Puppeteer extends Helper {
18231823      for  ( let  i  =  0 ;  i  <  val . length ;  ++ i )  { 
18241824        const  _actual  =  Number . isNaN ( val [ i ] )  ||  ( typeof  values [ i ] )  ===  'string'  ? val [ i ]  : Number . parseInt ( values [ i ] ,  10 ) ; 
18251825        const  _expected  =  Number . isNaN ( values [ i ] )  ||  ( typeof  values [ i ] )  ===  'string'  ? values [ i ]  : Number . parseInt ( values [ i ] ,  10 ) ; 
1826-         if  ( ! _actual . includes ( _expected ) )  return  false ; 
1826+         // if the attribute doesn't exist, returns false as well 
1827+         if  ( ! _actual  ||  ! _actual . includes ( _expected ) )  return  false ; 
18271828      } 
18281829      return  true ; 
18291830    } ) ; 
Original file line number Diff line number Diff line change @@ -1374,6 +1374,19 @@ module.exports.tests = function () {
13741374        e . message . should . include ( 'all elements (a) to have attributes {"qa-id":"test","href":"/info"}' ) ; 
13751375      } 
13761376    } ) ; 
1377+ 
1378+     it ( 'should return error when using non existing attribute' ,  async  function  ( )  { 
1379+       if  ( isHelper ( 'TestCafe' )  ||  isHelper ( 'WebDriver' ) )  this . skip ( ) ; 
1380+ 
1381+       try  { 
1382+         await  I . amOnPage ( 'https://github.com/codeceptjs/CodeceptJS/' ) ; 
1383+         await  I . seeAttributesOnElements ( {  css : 'a[href="/team"]'  } ,  { 
1384+           disable : true , 
1385+         } ) ; 
1386+       }  catch  ( e )  { 
1387+         e . message . should . include ( 'expected all elements ({css: a[href="/team"]}) to have attributes {"disable":true} "0" to equal "1"' ) ; 
1388+       } 
1389+     } ) ; 
13771390  } ) ; 
13781391
13791392  describe ( '#seeCssPropertiesOnElements' ,  ( )  =>  { 
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments