| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  | import { | 
					
						
							|  |  |  |   ddescribe, | 
					
						
							|  |  |  |   describe, | 
					
						
							|  |  |  |   it, | 
					
						
							|  |  |  |   iit, | 
					
						
							|  |  |  |   xit, | 
					
						
							|  |  |  |   expect, | 
					
						
							|  |  |  |   beforeEach, | 
					
						
							|  |  |  |   afterEach, | 
					
						
							| 
									
										
										
										
											2015-08-24 15:41:36 +02:00
										 |  |  |   browserDetection | 
					
						
							| 
									
										
										
										
											2015-10-13 00:29:13 -07:00
										 |  |  | } from 'angular2/testing_internal'; | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-11-18 15:55:43 -08:00
										 |  |  | import {DecimalPipe, PercentPipe, CurrencyPipe} from 'angular2/common'; | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							|  |  |  | export function main() { | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |   // TODO(mlaval): enable tests when Intl API is no longer used, see
 | 
					
						
							|  |  |  |   // https://github.com/angular/angular/issues/3333
 | 
					
						
							| 
									
										
										
										
											2015-08-24 15:41:36 +02:00
										 |  |  |   if (browserDetection.supportsIntlApi) { | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |     describe("DecimalPipe", () => { | 
					
						
							|  |  |  |       var pipe; | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       beforeEach(() => { pipe = new DecimalPipe(); }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       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'); | 
					
						
							| 
									
										
										
										
											2015-08-07 11:41:38 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |           expect(pipe.transform(1.123456, ['3.4-5'])).toEqual('001.12346'); | 
					
						
							|  |  |  |           expect(pipe.transform(1.1234, [])).toEqual('1.123'); | 
					
						
							|  |  |  |         }); | 
					
						
							| 
									
										
										
										
											2015-08-06 10:39:02 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |         it("should not support other objects", | 
					
						
							|  |  |  |            () => { expect(() => pipe.transform(new Object(), [])).toThrowError(); }); | 
					
						
							|  |  |  |       }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  |     }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |     describe("PercentPipe", () => { | 
					
						
							|  |  |  |       var pipe; | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       beforeEach(() => { pipe = new PercentPipe(); }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       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%'); | 
					
						
							|  |  |  |         }); | 
					
						
							| 
									
										
										
										
											2015-08-06 10:39:02 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |         it("should not support other objects", | 
					
						
							|  |  |  |            () => { expect(() => pipe.transform(new Object(), [])).toThrowError(); }); | 
					
						
							|  |  |  |       }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  |     }); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |     describe("CurrencyPipe", () => { | 
					
						
							|  |  |  |       var pipe; | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       beforeEach(() => { pipe = new CurrencyPipe(); }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |       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'); | 
					
						
							|  |  |  |         }); | 
					
						
							| 
									
										
										
										
											2015-08-06 10:39:02 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |         it("should not support other objects", | 
					
						
							|  |  |  |            () => { expect(() => pipe.transform(new Object(), [])).toThrowError(); }); | 
					
						
							|  |  |  |       }); | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  |     }); | 
					
						
							| 
									
										
										
										
											2015-08-18 16:16:30 +02:00
										 |  |  |   } | 
					
						
							| 
									
										
										
										
											2015-07-04 22:25:43 +04:30
										 |  |  | } |