[ember] failing tests for create

This commit is contained in:
Mike North
2018-09-02 12:24:11 -07:00
parent 9016c899e9
commit ccf9122902
7 changed files with 94 additions and 2 deletions
+12
View File
@@ -0,0 +1,12 @@
import { assertType } from './lib/assert';
import Ember from 'ember';
import { PersonWithNumberName, Person } from './create';
Person.create({ firstName: 99 }); // $ExpectError
Person.create({}, { firstName: 99 }); // $ExpectError
Person.create({}, {}, { firstName: 99 }); // $ExpectError
const p4 = new PersonWithNumberName();
// assertType<number>(p4.get('fullName'));
assertType<Ember.ComputedProperty<string, string>>(p4.fullName); // $ExpectError
+33 -1
View File
@@ -1,7 +1,39 @@
import Ember from 'ember';
import { assertType } from './lib/assert';
const o = Ember.Object.create();
assertType<object>(o);
const o1 = Ember.Object.create({x: 9});
assertType<number>(o1.x);
const obj = Ember.Object.create({ a: 1 }, { b: 2 }, { c: 3 });
assertType<number>(obj.a);
assertType<number>(obj.b);
assertType<number>(obj.a);
assertType<number>(obj.c);
export class Person extends Ember.Object.extend({
fullName: Ember.computed('firstName', 'lastName', function() {
return [this.firstName + this.lastName].join(' ');
})
}) {
firstName: string;
lastName: string;
age: number;
}
const p = new Person();
assertType<string>(p.firstName);
assertType<Ember.ComputedProperty<string>>(p.fullName);
assertType<string>(p.get('fullName'));
const p2 = Person.create({ firstName: 'string' });
const p2b = Person.create({}, { firstName: 'string' });
const p2c = Person.create({}, {}, { firstName: 'string' });
export class PersonWithNumberName extends Person.extend({
fullName: 6
}) {}
const p4 = new PersonWithNumberName();
assertType<string>(p4.firstName);
assertType<number>(p4.fullName);
+4
View File
@@ -29,6 +29,10 @@ assertType<string>(Person2.species);
let tom = Person2.create({
name: 'Tom Dale'
});
let badTom = Person2.create({
name: 99 // $ExpectError
});
let yehuda = Person2.createPerson('Yehuda Katz');
tom.sayHello(); // "Hello. My name is Tom Dale"
+2
View File
@@ -29,6 +29,8 @@
"test/event.ts",
"test/extend.ts",
"test/create.ts",
"test/create-negative.ts",
"test/create.ts",
"test/object.ts",
"test/observable.ts",
"test/mixin.ts",
+9
View File
@@ -0,0 +1,9 @@
import { assertType } from './lib/assert';
import Ember from 'ember';
import { PersonWithNumberName, Person } from './create';
const p3 = Person.create({ firstName: 99 }); // $ExpectError
const p2b = Person.create({}, { firstName: 99 }); // $ExpectError
const p2c = Person.create({}, {}, { firstName: 99 }); // $ExpectError
const p4 = new PersonWithNumberName();
+33 -1
View File
@@ -1,7 +1,39 @@
import Ember from 'ember';
import { assertType } from './lib/assert';
const o = Ember.Object.create();
assertType<object>(o);
const o1 = Ember.Object.create({x: 9});
assertType<number>(o1.x);
const obj = Ember.Object.create({ a: 1 }, { b: 2 }, { c: 3 });
assertType<number>(obj.a);
assertType<number>(obj.b);
assertType<number>(obj.a);
assertType<number>(obj.c);
export class Person extends Ember.Object.extend({
fullName: Ember.computed('firstName', 'lastName', function() {
return [this.firstName + this.lastName].join(' ');
})
}) {
firstName: string;
lastName: string;
age: number;
}
const p = new Person();
assertType<string>(p.firstName);
assertType<Ember.ComputedProperty<string>>(p.fullName);
assertType<string>(p.get('fullName'));
const p2 = Person.create({ firstName: 'string' });
const p2b = Person.create({}, { firstName: 'string' });
const p2c = Person.create({}, {}, { firstName: 'string' });
export class PersonWithNumberName extends Person.extend({
fullName: 6
}) {}
const p4 = new PersonWithNumberName();
assertType<string>(p4.firstName);
assertType<number>(p4.fullName);
+1
View File
@@ -32,6 +32,7 @@
"test/event.ts",
"test/extend.ts",
"test/create.ts",
"test/create-negative.ts",
"test/object.ts",
"test/observable.ts",
"test/mixin.ts",