() => { expect(Validators.required(new FormControl(null))).toEqual({'required': true}); });
it('should return correct value for numbers', () => { expect(pipe.transform(1.23)).toEqual('123%'); expect(pipe.transform(1.2, '.2')).toEqual('120.00%'); expect(pipe.transform(1.2, '4.2')).toEqual('0,120.00%'); expect(pipe.transform(1.2, '4.2', 'fr')).toEqual('0 120,00 %'); // see issue #20136 expect(pipe.transform(0.12345674, '0.0-10')).toEqual('12.345674%'); expect(pipe.transform(0, '0.0-10')).toEqual('0%'); expect(pipe.transform(0.00, '0.0-10')).toEqual('0%'); expect(pipe.transform(1, '0.0-10')).toEqual('100%'); expect(pipe.transform(0.1, '0.0-10')).toEqual('10%'); expect(pipe.transform(0.12, '0.0-10')).toEqual('12%'); expect(pipe.transform(0.123, '0.0-10')).toEqual('12.3%'); expect(pipe.transform(12.3456, '0.0-10')).toEqual('1,234.56%'); expect(pipe.transform(12.345600, '0.0-10')).toEqual('1,234.56%'); expect(pipe.transform(12.345699999, '0.0-6')).toEqual('1,234.57%'); expect(pipe.transform(12.345699999, '0.4-6')).toEqual('1,234.5700%'); expect(pipe.transform(100, '0.4-6')).toEqual('10,000.0000%'); expect(pipe.transform(100, '0.0-10')).toEqual('10,000%'); expect(pipe.transform(1.5e2)).toEqual('15,000%'); expect(pipe.transform(1e100)).toEqual('1E+102%'); });
it('should calculate the mean', () => { expect(Statistic.calculateMean([])).toBeNaN(); expect(Statistic.calculateMean([1, 2, 3])).toBe(2.0); });
() => { expect(isNumeric('1e5')).toBe(true); });
it('should throw if minFractionDigits is explicitly higher than maxFractionDigits', () => { expect(() => pipe.transform('1.1', '3.4-2')).toThrowError(/is higher than the maximum/); });
it('should fallback to the default PipeResolver when templates are not overridden', () => { const pipe = pipeResolver.resolve(SomePipe); expect(pipe.name).toEqual('somePipe'); });
it('should warn if you are using the v4 signature', () => { const warnSpy = spyOn(console, 'warn'); pipe.transform(123, 'USD', true); expect(warnSpy).toHaveBeenCalledWith( `Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".`); });
() => expect(Validators.requiredTrue(new FormControl(true))).toBeNull());
() => expect(Validators.email(new FormControl('some text'))).toEqual({'email': true}));
() => expect(Validators.required(new FormControl([1, 2]))).toBeNull());