feat(common): stricter types for DatePipe (#37447)
Make typing of DatePipe stricter to catch some misuses (such as passing an Observable or an array) at compile time. BREAKING CHANGE: The signature of the `date` pipe now explicitly states which types are accepted. This should only cause issues in corner cases, as any other values would result in runtime exceptions. PR Close #37447
This commit is contained in:

committed by
Alex Rickabaugh

parent
5f815c0565
commit
daf8b7f100
@ -59,12 +59,20 @@ import {JitReflector} from '@angular/platform-browser-dynamic/src/compiler_refle
|
||||
expect(pipe.transform(Number.NaN)).toEqual(null);
|
||||
});
|
||||
|
||||
it('should return null for null', () => {
|
||||
expect(pipe.transform(null)).toEqual(null);
|
||||
});
|
||||
|
||||
it('should return null for undefined', () => {
|
||||
expect(pipe.transform(undefined)).toEqual(null);
|
||||
});
|
||||
|
||||
it('should support ISO string without time', () => {
|
||||
expect(() => pipe.transform(isoStringWithoutTime)).not.toThrow();
|
||||
});
|
||||
|
||||
it('should not support other objects', () => {
|
||||
expect(() => pipe.transform({})).toThrowError(/InvalidPipeArgument/);
|
||||
expect(() => pipe.transform({} as any)).toThrowError(/InvalidPipeArgument/);
|
||||
});
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user