mirror of
				https://github.com/LadybirdBrowser/ladybird.git
				synced 2025-10-30 21:01:00 +00:00 
			
		
		
		
	Libraries: Move to Userland/Libraries/
This commit is contained in:
		
							parent
							
								
									dc28c07fa5
								
							
						
					
					
						commit
						13d7c09125
					
				
				
				Notes:
				
					sideshowbarker
				
				2024-07-18 23:53:55 +09:00 
				
			
			Author: https://github.com/awesomekling
Commit: 13d7c09125
			
					 1857 changed files with 266 additions and 274 deletions
				
			
		|  | @ -1,143 +0,0 @@ | |||
| test("single default parameter", () => { | ||||
|     function func(a = 6) { | ||||
|         return typeof a; | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a = 6) => typeof a; | ||||
| 
 | ||||
|     expect(func()).toBe("number"); | ||||
|     expect(func(5)).toBe("number"); | ||||
|     expect(func(undefined)).toBe("number"); | ||||
|     expect(func(false)).toBe("boolean"); | ||||
|     expect(func(null)).toBe("object"); | ||||
|     expect(func({})).toBe("object"); | ||||
| 
 | ||||
|     expect(arrowFunc()).toBe("number"); | ||||
|     expect(arrowFunc(5)).toBe("number"); | ||||
|     expect(arrowFunc(undefined)).toBe("number"); | ||||
|     expect(arrowFunc(false)).toBe("boolean"); | ||||
|     expect(arrowFunc(null)).toBe("object"); | ||||
|     expect(arrowFunc({})).toBe("object"); | ||||
| }); | ||||
| 
 | ||||
| test("two parameters, second one is default", () => { | ||||
|     function func(a, b = 1) { | ||||
|         return a + b; | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a, b = 1) => a + b; | ||||
| 
 | ||||
|     expect(func(4, 5)).toBe(9); | ||||
|     expect(func(4)).toBe(5); | ||||
|     expect(func(4, undefined)).toBe(5); | ||||
|     expect(func()).toBeNaN(); | ||||
| 
 | ||||
|     expect(arrowFunc(4, 5)).toBe(9); | ||||
|     expect(arrowFunc(4)).toBe(5); | ||||
|     expect(arrowFunc(4, undefined)).toBe(5); | ||||
|     expect(arrowFunc()).toBeNaN(); | ||||
| }); | ||||
| 
 | ||||
| test("two parameters, first one is default", () => { | ||||
|     function func(a = 5, b) { | ||||
|         return a + b; | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a = 5, b) => a + b; | ||||
| 
 | ||||
|     expect(func(4, 5)).toBe(9); | ||||
|     expect(func(undefined, 4)).toBe(9); | ||||
|     expect(func()).toBeNaN(); | ||||
| 
 | ||||
|     expect(arrowFunc(4, 5)).toBe(9); | ||||
|     expect(arrowFunc(undefined, 4)).toBe(9); | ||||
|     expect(arrowFunc()).toBeNaN(); | ||||
| }); | ||||
| 
 | ||||
| test("default parameter references a previous parameter", () => { | ||||
|     function func(a, b = a) { | ||||
|         return a + b; | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a, b = a) => a + b; | ||||
| 
 | ||||
|     expect(func(4, 5)).toBe(9); | ||||
|     expect(func(4)).toBe(8); | ||||
|     expect(func("hf")).toBe("hfhf"); | ||||
|     expect(func(true)).toBe(2); | ||||
|     expect(func()).toBeNaN(); | ||||
| 
 | ||||
|     expect(arrowFunc(4, 5)).toBe(9); | ||||
|     expect(arrowFunc(4)).toBe(8); | ||||
|     expect(arrowFunc("hf")).toBe("hfhf"); | ||||
|     expect(arrowFunc(true)).toBe(2); | ||||
|     expect(arrowFunc()).toBeNaN(); | ||||
| }); | ||||
| 
 | ||||
| test("parameter with a function default value", () => { | ||||
|     function func( | ||||
|         a = function () { | ||||
|             return 5; | ||||
|         } | ||||
|     ) { | ||||
|         return a(); | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = ( | ||||
|         a = function () { | ||||
|             return 5; | ||||
|         } | ||||
|     ) => a(); | ||||
| 
 | ||||
|     expect(func()).toBe(5); | ||||
|     expect( | ||||
|         func(function () { | ||||
|             return 10; | ||||
|         }) | ||||
|     ).toBe(10); | ||||
|     expect(func(() => 10)).toBe(10); | ||||
| 
 | ||||
|     expect(arrowFunc()).toBe(5); | ||||
|     expect( | ||||
|         arrowFunc(function () { | ||||
|             return 10; | ||||
|         }) | ||||
|     ).toBe(10); | ||||
|     expect(arrowFunc(() => 10)).toBe(10); | ||||
| }); | ||||
| 
 | ||||
| test("parameter with an arrow function default value", () => { | ||||
|     function func(a = () => 5) { | ||||
|         return a(); | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a = () => 5) => a(); | ||||
| 
 | ||||
|     expect(func()).toBe(5); | ||||
|     expect( | ||||
|         func(function () { | ||||
|             return 10; | ||||
|         }) | ||||
|     ).toBe(10); | ||||
|     expect(func(() => 10)).toBe(10); | ||||
|     expect(arrowFunc()).toBe(5); | ||||
|     expect( | ||||
|         arrowFunc(function () { | ||||
|             return 10; | ||||
|         }) | ||||
|     ).toBe(10); | ||||
|     expect(arrowFunc(() => 10)).toBe(10); | ||||
| }); | ||||
| 
 | ||||
| test("parameter with an object default value", () => { | ||||
|     function func(a = { foo: "bar" }) { | ||||
|         return a.foo; | ||||
|     } | ||||
| 
 | ||||
|     const arrowFunc = (a = { foo: "bar" }) => a.foo; | ||||
| 
 | ||||
|     expect(func()).toBe("bar"); | ||||
|     expect(func({ foo: "baz" })).toBe("baz"); | ||||
|     expect(arrowFunc()).toBe("bar"); | ||||
|     expect(arrowFunc({ foo: "baz" })).toBe("baz"); | ||||
| }); | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling