mirror of
				https://github.com/LadybirdBrowser/ladybird.git
				synced 2025-10-31 13:20:59 +00:00 
			
		
		
		
	
		
			
	
	
		
			36 lines
		
	
	
	
		
			1,011 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
	
		
			1,011 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|   | describe("basic functionality", () => { | ||
|  |     test("length", () => { | ||
|  |         expect(Object.hasOwn).toHaveLength(2); | ||
|  |     }); | ||
|  | 
 | ||
|  |     test("returns true for existent own property", () => { | ||
|  |         const o = { foo: "bar" }; | ||
|  |         expect(Object.hasOwn(o, "foo")).toBeTrue(); | ||
|  |     }); | ||
|  | 
 | ||
|  |     test("returns false for non-existent own property", () => { | ||
|  |         const o = {}; | ||
|  |         expect(Object.hasOwn(o, "foo")).toBeFalse(); | ||
|  |     }); | ||
|  | 
 | ||
|  |     test("returns false for existent prototype chain property", () => { | ||
|  |         const o = {}; | ||
|  |         Object.prototype.foo = "bar"; | ||
|  |         expect(Object.hasOwn(o, "foo")).toBeFalse(); | ||
|  |     }); | ||
|  | }); | ||
|  | 
 | ||
|  | describe("errors", () => { | ||
|  |     test("null argument", () => { | ||
|  |         expect(() => { | ||
|  |             Object.hasOwn(null); | ||
|  |         }).toThrowWithMessage(TypeError, "ToObject on null or undefined"); | ||
|  |     }); | ||
|  | 
 | ||
|  |     test("undefined argument", () => { | ||
|  |         expect(() => { | ||
|  |             Object.hasOwn(undefined); | ||
|  |         }).toThrowWithMessage(TypeError, "ToObject on null or undefined"); | ||
|  |     }); | ||
|  | }); |