mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
136 lines
3.0 KiB
136 lines
3.0 KiB
export const tests = [] |
|
const t = f => tests.push(f) |
|
|
|
// Test Dog |
|
t(({ eq }) => { |
|
const Animal = { |
|
canEat: false, |
|
} |
|
Object.assign(Dog.prototype, Animal) |
|
|
|
|
|
let myDog = new Dog() |
|
return eq( |
|
{ |
|
redefinedCanEat: myDog.canEat, |
|
hasOwn: Object.hasOwn(myDog, 'canEat'), |
|
canBreath: myDog.canBreath, |
|
hasOwn: Object.hasOwn(myDog, 'canBreath'), |
|
isAlive: myDog.isAlive, |
|
hasOwn: Object.hasOwn(myDog, 'isAlive'), |
|
canRun: myDog.canRun, |
|
hasOwn: Object.hasOwn(myDog, 'canRun'), |
|
WhoAmI: myDog.WhoAmI(), |
|
hasOwn: Object.hasOwn(myDog, 'WhoAmI'), |
|
}, |
|
{ |
|
redefinedCanEat: false, |
|
hasOwn: false, |
|
|
|
canBreath: true, |
|
hasOwn: false, |
|
isAlive: true, |
|
hasOwn: false, |
|
canRun: true, |
|
hasOwn: true, |
|
WhoAmI: "I'm a dog", |
|
hasOwn: true, |
|
}) |
|
}) |
|
|
|
// Test Bird |
|
t(({ eq }) => { |
|
let myBird = new Bird() |
|
return eq( |
|
{ |
|
canEat: myBird.canEat, |
|
hasOwn: Object.hasOwn(myBird, 'canEat'), |
|
canBreath: myBird.canBreath, |
|
hasOwn: Object.hasOwn(myBird, 'canBreath'), |
|
isAlive: myBird.isAlive, |
|
hasOwn: Object.hasOwn(myBird, 'isAlive'), |
|
makesEggs: myBird.makesEggs, |
|
hasOwn: Object.hasOwn(myBird, 'makesEggs'), |
|
canFly: myBird.canFly, |
|
hasOwn: Object.hasOwn(myBird, 'canFly'), |
|
WhoAmI: myBird.WhoAmI(), |
|
hasOwn: Object.hasOwn(myBird, 'WhoAmI'), |
|
}, |
|
{ |
|
canEat: true, |
|
hasOwn: false, |
|
canBreath: true, |
|
hasOwn: false, |
|
isAlive: true, |
|
hasOwn: false, |
|
makesEggs: true, |
|
hasOwn: true, |
|
canFly: true, |
|
hasOwn: true, |
|
WhoAmI: "I'm a bird", |
|
hasOwn: true, |
|
}) |
|
}) |
|
|
|
// Test Dodo |
|
t(({ eq }) => { |
|
let myDodo = new Dodo() |
|
return eq( |
|
{ |
|
canEat: myDodo.canEat, |
|
hasOwn: Object.hasOwn(myDodo, 'canEat'), |
|
canBreath: myDodo.canBreath, |
|
hasOwn: Object.hasOwn(myDodo, 'canBreath'), |
|
isAlive: myDodo.isAlive, |
|
hasOwn: Object.hasOwn(myDodo, 'isAlive'), |
|
makesEggs: myDodo.makesEggs, |
|
hasOwn: Object.hasOwn(myDodo, 'makesEggs'), |
|
canFly: myDodo.canFly, |
|
hasOwn: Object.hasOwn(myDodo, 'canFly'), |
|
WhoAmI: myDodo.WhoAmI(), |
|
hasOwn: Object.hasOwn(myDodo, 'WhoAmI'), |
|
}, |
|
{ |
|
canEat: true, |
|
hasOwn: true, |
|
canBreath: true, |
|
hasOwn: true, |
|
isAlive: false, |
|
hasOwn: true, |
|
makesEggs: true, |
|
hasOwn: true, |
|
canFly: false, |
|
hasOwn: true, |
|
WhoAmI: "I'm a dodo", |
|
hasOwn: true, |
|
}) |
|
}) |
|
|
|
// Test Dodo |
|
t(({ eq }) => { |
|
let myDog = new Dog("Rex") |
|
let myBird = new Bird() |
|
let myDodo = new Dodo("Dill") |
|
return eq( |
|
{ |
|
name: myDog.name, |
|
hasOwn: Object.hasOwn(myDog, 'name'), |
|
name: myBird.name, |
|
hasOwn: Object.hasOwn(myBird, 'name'), |
|
name: myDodo.name, |
|
hasOwn: Object.hasOwn(myDodo, 'name'), |
|
}, |
|
{ |
|
name: "Rex", |
|
hasOwn: true, |
|
name: "Anonymous", |
|
hasOwn: false, |
|
name: "Dill", |
|
hasOwn: true, |
|
}) |
|
}) |
|
|
|
export const setup = () => { |
|
} |
|
|
|
Object.freeze(tests)
|
|
|