Merge pull request #1649 from keesey/master

Made Breeze compliant with --noImplicityAny
This commit is contained in:
Basarat Ali Syed
2014-01-29 16:57:22 -08:00
2 changed files with 34 additions and 19 deletions
+27 -12
View File
@@ -440,7 +440,7 @@ function test_entityState() {
function test_entityType() {
var myMetadataStore: breeze.MetadataStore;
var myEntityType: breeze.EntityType;
var dataProperty1, dataProperty2, navigationProperty1: breeze.DataProperty;
var dataProperty1: breeze.DataProperty, dataProperty2: breeze.DataProperty, navigationProperty1: breeze.DataProperty;
var em1: breeze.EntityManager;
var entityManager = new breeze.EntityType({
metadataStore: myMetadataStore,
@@ -453,7 +453,7 @@ function test_entityType() {
myEntityType.addProperty(navigationProperty1);
var custType = <breeze.EntityType> em1.metadataStore.getEntityType("Customer");
var countryProp = custType.getProperty("Country");
var valFn = function (v) {
var valFn = function (v: string) {
if (v == null) return true;
return (v.substring(0,2) === "US");
};
@@ -533,15 +533,20 @@ function test_entityType() {
// DayOfWeek.Friday.toString() === "Friday";
//}
interface CustomEntityManager extends breeze.EntityManager
{
customTag: string;
}
function test_event() {
var myEntityManager: breeze.EntityManager;
var myEntity, person: breeze.Entity;
var myEntityManager: CustomEntityManager;
var myEntity: breeze.Entity, person: breeze.Entity;
var salaryEvent = new core.Event("salaryEvent", person);
core.Event.enable("propertyChanged", myEntityManager, false);
core.Event.enable("propertyChanged", myEntityManager, true);
core.Event.enable("propertyChanged", myEntity.entityAspect, false);
core.Event.enable("propertyChanged", myEntity.entityAspect, <Function> null);
core.Event.enable("validationErrorsChanged", myEntityManager, function (em) {
core.Event.enable("validationErrorsChanged", myEntityManager, function (em: CustomEntityManager) {
return em.customTag === "blue";
});
core.Event.isEnabled("propertyChanged", myEntityManager);
@@ -694,8 +699,18 @@ function test_validationOptions() {
var newOptions = validationOptions.using({ validateOnQuery: true, validateOnSave: false });
}
interface NumericRange
{
max: number;
min: number;
}
interface NumericRangeValidatorFunctionContext extends breeze.ValidatorFunctionContext, NumericRange
{
}
function test_validator() {
var valFn = function (v) {
var valFn = function (v: any) {
if (v == null) return true;
return ( v.substr(0,2)=== "US");
};
@@ -707,11 +722,11 @@ function test_validator() {
var custType = <breeze.EntityType> metadataStore.getEntityType("Customer");
var countryProp = custType.getProperty("Country");
countryProp.validators.push(countryValidator);
function isValidZipCode(value) {
function isValidZipCode(value: string) {
var re = /^\d{5}([\-]\d{4})?$/;
return (re.test(value));
}
var valFn = function (v) {
valFn = function (v: any) {
if (v.getProperty("Country") === "USA") {
var postalCode = v.getProperty("PostalCode");
return isValidZipCode(postalCode);
@@ -723,8 +738,8 @@ function test_validator() {
var em1: breeze.EntityManager;
var custType = <breeze.EntityType> em1.metadataStore.getEntityType("Customer");
custType.validators.push(zipCodeValidator);
var numericRangeValidator = function (context) {
var valFn = function (v, ctx) {
var numericRangeValidator = function (context: NumericRange) {
var valFn = function (v: any, ctx: NumericRangeValidatorFunctionContext) {
if (v == null) return true;
if (typeof (v) !== "number") return false;
if (ctx.min != null && v < ctx.min) return false;
@@ -784,7 +799,7 @@ function test_validator() {
var errMsg = result.errorMessage;
var context = result.context;
var sameValidator = result.validator;
var valFn = function (v) {
valFn = function (v: any) {
if (v == null) return true;
return (v.substr(0,2) === "US");
};
@@ -807,7 +822,7 @@ function test_demo() {
function test_corefns() {
var o1: Object;
var kvfn = function (p) { return p; }
var kvfn = function (p: any) { return p; }
core.objectForEach(o1, kvfn);
var o2: Object;
+7 -7
View File
@@ -138,7 +138,7 @@ declare module breeze {
shortName: string;
unmappedProperties: DataProperty[];
validators: Validator[];
addProperty(dataProperty: DataProperty);
addProperty(dataProperty: DataProperty): ComplexType;
getProperties(): DataProperty[];
}
@@ -643,8 +643,8 @@ declare module breeze {
addDataService(dataService: DataService): void;
addEntityType(structuralType: IStructuralType): void;
exportMetadata(): string;
fetchMetadata(dataService: string, callback?: (data) => void , errorCallback?: breeze.core.ErrorCallback): Q.Promise<any>;
fetchMetadata(dataService: DataService, callback?: (data) => void , errorCallback?: breeze.core.ErrorCallback): Q.Promise<any>;
fetchMetadata(dataService: string, callback?: (data: any) => void , errorCallback?: breeze.core.ErrorCallback): Q.Promise<any>;
fetchMetadata(dataService: DataService, callback?: (data: any) => void , errorCallback?: breeze.core.ErrorCallback): Q.Promise<any>;
getDataService(serviceName: string): DataService;
getEntityType(entityTypeName: string, okIfNotFound?: boolean): IStructuralType;
getEntityTypes(): IStructuralType[];
@@ -653,7 +653,7 @@ declare module breeze {
importMetadata(exportedString: string): MetadataStore;
isEmpty(): boolean;
registerEntityTypeCtor(entityTypeName: string, entityCtor: Function, initializationFn?: (entity: Entity) =>void ): void;
trackUnmappedType(entityCtor: Function, interceptor?: Function);
trackUnmappedType(entityCtor: Function, interceptor?: Function): void;
setEntityTypeForResourceName(resourceName: string, entityType: EntityType): void;
setEntityTypeForResourceName(resourceName: string, entityTypeName: string): void;
getEntityTypeNameForResourceName(resourceName: string): string;
@@ -677,7 +677,7 @@ declare module breeze {
serverPropertyNameToClient(serverPropertyName: string): string;
serverPropertyNameToClient(serverPropertyName: string, property: IProperty): string;
setAsDefault();
setAsDefault(): NamingConvention;
}
interface NamingConventionOptions {
@@ -846,8 +846,8 @@ declare module breeze {
static string(): Validator;
static stringLength(context: { maxLength: number; minLength: number; }): Validator;
static register(validator: Validator);
static registerFactory(fn: () => Validator, name: string);
static register(validator: Validator): void;
static registerFactory(fn: () => Validator, name: string): void;
validate(value: any, context?: any): ValidationError;
getMessage(): string;