75 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import {
 | |
|   ddescribe,
 | |
|   describe,
 | |
|   it,
 | |
|   iit,
 | |
|   xit,
 | |
|   expect,
 | |
|   beforeEach,
 | |
|   afterEach,
 | |
| } from '@angular/core/testing/testing_internal';
 | |
| import {browserDetection} from '@angular/platform-browser/testing';
 | |
| 
 | |
| import {DecimalPipe, PercentPipe, CurrencyPipe} from '@angular/common';
 | |
| 
 | |
| export function main() {
 | |
|   describe('Number pipes', () => {
 | |
|     // TODO(mlaval): enable tests when Intl API is no longer used, see
 | |
|     // https://github.com/angular/angular/issues/3333
 | |
|     if (browserDetection.supportsIntlApi) {
 | |
|       describe("DecimalPipe", () => {
 | |
|         var pipe;
 | |
| 
 | |
|         beforeEach(() => { pipe = new DecimalPipe(); });
 | |
| 
 | |
|         describe("transform", () => {
 | |
|           it('should return correct value for numbers', () => {
 | |
|             expect(pipe.transform(12345)).toEqual('12,345');
 | |
|             expect(pipe.transform(123, '.2')).toEqual('123.00');
 | |
|             expect(pipe.transform(1, '3.')).toEqual('001');
 | |
|             expect(pipe.transform(1.1, '3.4-5')).toEqual('001.1000');
 | |
| 
 | |
|             expect(pipe.transform(1.123456, '3.4-5')).toEqual('001.12346');
 | |
|             expect(pipe.transform(1.1234)).toEqual('1.123');
 | |
|           });
 | |
| 
 | |
|           it("should not support other objects",
 | |
|              () => { expect(() => pipe.transform(new Object())).toThrowError(); });
 | |
|         });
 | |
|       });
 | |
| 
 | |
|       describe("PercentPipe", () => {
 | |
|         var pipe;
 | |
| 
 | |
|         beforeEach(() => { pipe = new PercentPipe(); });
 | |
| 
 | |
|         describe("transform", () => {
 | |
|           it('should return correct value for numbers', () => {
 | |
|             expect(pipe.transform(1.23)).toEqual('123%');
 | |
|             expect(pipe.transform(1.2, '.2')).toEqual('120.00%');
 | |
|           });
 | |
| 
 | |
|           it("should not support other objects",
 | |
|              () => { expect(() => pipe.transform(new Object())).toThrowError(); });
 | |
|         });
 | |
|       });
 | |
| 
 | |
|       describe("CurrencyPipe", () => {
 | |
|         var pipe;
 | |
| 
 | |
|         beforeEach(() => { pipe = new CurrencyPipe(); });
 | |
| 
 | |
|         describe("transform", () => {
 | |
|           it('should return correct value for numbers', () => {
 | |
|             expect(pipe.transform(123)).toEqual('USD123');
 | |
|             expect(pipe.transform(12, 'EUR', false, '.2')).toEqual('EUR12.00');
 | |
|           });
 | |
| 
 | |
|           it("should not support other objects",
 | |
|              () => { expect(() => pipe.transform(new Object())).toThrowError(); });
 | |
|         });
 | |
|       });
 | |
|     }
 | |
|   });
 | |
| }
 |