mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-07 09:31:53 +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,133 +0,0 @@
|
|||
test("method inheritance", () => {
|
||||
class Parent {
|
||||
method() {
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.method()).toBe(3);
|
||||
expect(c.method()).toBe(3);
|
||||
});
|
||||
|
||||
test("method overriding", () => {
|
||||
class Parent {
|
||||
method() {
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {
|
||||
method() {
|
||||
return 10;
|
||||
}
|
||||
}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.method()).toBe(3);
|
||||
expect(c.method()).toBe(10);
|
||||
});
|
||||
|
||||
test("parent method reference with super", () => {
|
||||
class Parent {
|
||||
method() {
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {
|
||||
method() {
|
||||
return super.method() * 2;
|
||||
}
|
||||
}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.method()).toBe(3);
|
||||
expect(c.method()).toBe(6);
|
||||
});
|
||||
|
||||
test("child class access to parent class initialized properties", () => {
|
||||
class Parent {
|
||||
constructor() {
|
||||
this.x = 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.x).toBe(3);
|
||||
expect(c.x).toBe(3);
|
||||
});
|
||||
|
||||
test("child class modification of parent class properties", () => {
|
||||
class Parent {
|
||||
constructor() {
|
||||
this.x = 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {
|
||||
change() {
|
||||
this.x = 10;
|
||||
}
|
||||
}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.x).toBe(3);
|
||||
expect(c.x).toBe(3);
|
||||
|
||||
c.change();
|
||||
expect(c.x).toBe(10);
|
||||
});
|
||||
|
||||
test("inheritance and hasOwnProperty", () => {
|
||||
class Parent {
|
||||
constructor() {
|
||||
this.x = 3;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {
|
||||
method() {
|
||||
this.y = 10;
|
||||
}
|
||||
}
|
||||
|
||||
const p = new Parent();
|
||||
const c = new Child();
|
||||
expect(p.hasOwnProperty("x")).toBeTrue();
|
||||
expect(p.hasOwnProperty("y")).toBeFalse();
|
||||
expect(c.hasOwnProperty("x")).toBeTrue();
|
||||
expect(c.hasOwnProperty("y")).toBeFalse();
|
||||
|
||||
c.method();
|
||||
expect(c.hasOwnProperty("x")).toBeTrue();
|
||||
expect(c.hasOwnProperty("y")).toBeTrue();
|
||||
});
|
||||
|
||||
test("super constructor call from child class with argument", () => {
|
||||
class Parent {
|
||||
constructor(x) {
|
||||
this.x = x;
|
||||
}
|
||||
}
|
||||
|
||||
class Child extends Parent {
|
||||
constructor() {
|
||||
super(10);
|
||||
}
|
||||
}
|
||||
|
||||
const p = new Parent(3);
|
||||
const c = new Child(3);
|
||||
expect(p.x).toBe(3);
|
||||
expect(c.x).toBe(10);
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue