@@ -5224,6 +5224,71 @@ describe('Lexer: Third Milestone', function() {
5224
5224
expect ( lexer ( input ) ) . to . deep . equal ( output ) ;
5225
5225
} ) ;
5226
5226
5227
+ it ( 'should handle element equal method' , function ( ) {
5228
+ input = String . raw `var arr = [1,2,3,4,5]
5229
+ var yes = arr.elementsEqual([1,2,3,4,5])
5230
+ var no = arr.elementsEqual([1,2,3,4])` ;
5231
+ output = [
5232
+ { type : "DECLARATION_KEYWORD" , value : "var" } ,
5233
+ { type : "IDENTIFIER" , value : "arr" } ,
5234
+ { type : "OPERATOR" , value : "=" } ,
5235
+ { type : "ARRAY_START" , value : "[" } ,
5236
+ { type : "NUMBER" , value : "1" } ,
5237
+ { type : "PUNCTUATION" , value : "," } ,
5238
+ { type : "NUMBER" , value : "2" } ,
5239
+ { type : "PUNCTUATION" , value : "," } ,
5240
+ { type : "NUMBER" , value : "3" } ,
5241
+ { type : "PUNCTUATION" , value : "," } ,
5242
+ { type : "NUMBER" , value : "4" } ,
5243
+ { type : "PUNCTUATION" , value : "," } ,
5244
+ { type : "NUMBER" , value : "5" } ,
5245
+ { type : "ARRAY_END" , value : "]" } ,
5246
+ { type : "TERMINATOR" , value : "\\n" } ,
5247
+
5248
+ { type : "DECLARATION_KEYWORD" , value : "var" } ,
5249
+ { type : "IDENTIFIER" , value : "yes" } ,
5250
+ { type : "OPERATOR" , value : "=" } ,
5251
+ { type : "IDENTIFIER" , value : "arr" } ,
5252
+ { type : "DOT_SYNTAX" , value : "." } ,
5253
+ { type : "NATIVE_METHOD" , value : "elementsEqual" } ,
5254
+ { type : "INVOCATION_START" , value : "(" } ,
5255
+ { type : "ARRAY_START" , value : "[" } ,
5256
+ { type : "NUMBER" , value : "1" } ,
5257
+ { type : "PUNCTUATION" , value : "," } ,
5258
+ { type : "NUMBER" , value : "2" } ,
5259
+ { type : "PUNCTUATION" , value : "," } ,
5260
+ { type : "NUMBER" , value : "3" } ,
5261
+ { type : "PUNCTUATION" , value : "," } ,
5262
+ { type : "NUMBER" , value : "4" } ,
5263
+ { type : "PUNCTUATION" , value : "," } ,
5264
+ { type : "NUMBER" , value : "5" } ,
5265
+ { type : "ARRAY_END" , value : "]" } ,
5266
+ { type : "INVOCATION_END" , value : ")" } ,
5267
+ { type : "TERMINATOR" , value : "\\n" } ,
5268
+
5269
+ { type : "DECLARATION_KEYWORD" , value : "var" } ,
5270
+ { type : "IDENTIFIER" , value : "no" } ,
5271
+ { type : "OPERATOR" , value : "=" } ,
5272
+ { type : "IDENTIFIER" , value : "arr" } ,
5273
+ { type : "DOT_SYNTAX" , value : "." } ,
5274
+ { type : "NATIVE_METHOD" , value : "elementsEqual" } ,
5275
+ { type : "INVOCATION_START" , value : "(" } ,
5276
+ { type : "ARRAY_START" , value : "[" } ,
5277
+ { type : "NUMBER" , value : "1" } ,
5278
+ { type : "PUNCTUATION" , value : "," } ,
5279
+ { type : "NUMBER" , value : "2" } ,
5280
+ { type : "PUNCTUATION" , value : "," } ,
5281
+ { type : "NUMBER" , value : "3" } ,
5282
+ { type : "PUNCTUATION" , value : "," } ,
5283
+ { type : "NUMBER" , value : "4" } ,
5284
+ { type : "ARRAY_END" , value : "]" } ,
5285
+ { type : "INVOCATION_END" , value : ")" } ,
5286
+ { type : "TERMINATOR" , value : "EOF" }
5287
+ ] ;
5288
+ expect ( lexer ( input ) ) . to . deep . equal ( output ) ;
5289
+ } ) ;
5290
+
5291
+
5227
5292
} ) ;
5228
5293
5229
5294
} ) ;
0 commit comments