| 
									
										
										
										
											2020-07-04 18:56:48 +01:00
										 |  |  | test("length is 1", () => { | 
					
						
							|  |  |  |     expect(Array.isArray).toHaveLength(1); | 
					
						
							|  |  |  | }); | 
					
						
							| 
									
										
										
										
											2020-05-08 16:28:35 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-07-04 18:56:48 +01:00
										 |  |  | test("arguments that evaluate to false", () => { | 
					
						
							|  |  |  |     expect(Array.isArray()).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray("1")).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray("foo")).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray(1)).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray(1, 2, 3)).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray(undefined)).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray(null)).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray(Infinity)).toBeFalse(); | 
					
						
							|  |  |  |     expect(Array.isArray({})).toBeFalse(); | 
					
						
							|  |  |  | }); | 
					
						
							| 
									
										
										
										
											2020-05-08 16:28:35 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-07-04 18:56:48 +01:00
										 |  |  | test("arguments that evaluate to true", () => { | 
					
						
							|  |  |  |     expect(Array.isArray([])).toBeTrue(); | 
					
						
							|  |  |  |     expect(Array.isArray([1])).toBeTrue(); | 
					
						
							|  |  |  |     expect(Array.isArray([1, 2, 3])).toBeTrue(); | 
					
						
							|  |  |  |     expect(Array.isArray(new Array())).toBeTrue(); | 
					
						
							|  |  |  |     expect(Array.isArray(new Array(10))).toBeTrue(); | 
					
						
							|  |  |  |     expect(Array.isArray(new Array("a", "b", "c"))).toBeTrue(); | 
					
						
							| 
									
										
										
										
											2021-02-24 09:48:29 +01:00
										 |  |  |     expect(Array.isArray(Array.prototype)).toBeTrue(); | 
					
						
							| 
									
										
										
										
											2021-06-08 21:53:36 +01:00
										 |  |  |     expect(Array.isArray(new Proxy([], {}))).toBeTrue(); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | test("Revoked Proxy as argument throws", () => { | 
					
						
							|  |  |  |     const revocable = Proxy.revocable([], {}); | 
					
						
							|  |  |  |     revocable.revoke(); | 
					
						
							|  |  |  |     expect(() => { | 
					
						
							|  |  |  |         Array.isArray(revocable.proxy); | 
					
						
							|  |  |  |     }).toThrowWithMessage(TypeError, "An operation was performed on a revoked Proxy object"); | 
					
						
							| 
									
										
										
										
											2020-07-04 18:56:48 +01:00
										 |  |  | }); |