| 
									
										
										
										
											2016-04-12 09:40:37 -07:00
										 |  |  | import { | 
					
						
							|  |  |  |   describe, | 
					
						
							|  |  |  |   fdescribe, | 
					
						
							|  |  |  |   xdescribe, | 
					
						
							|  |  |  |   it, | 
					
						
							|  |  |  |   fit, | 
					
						
							|  |  |  |   xit, | 
					
						
							|  |  |  |   beforeEach, | 
					
						
							|  |  |  |   afterEach, | 
					
						
							|  |  |  |   beforeEachProviders, | 
					
						
							|  |  |  |   inject | 
					
						
							|  |  |  | } from 'angular2/testing'; | 
					
						
							| 
									
										
										
										
											2015-11-30 08:28:54 -08:00
										 |  |  | import {provide} from 'angular2/core'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var db: any; | 
					
						
							|  |  |  | class MyService {} | 
					
						
							|  |  |  | class MyMockService implements MyService {} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion describeIt
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							|  |  |  |   it('does something', () => { | 
					
						
							|  |  |  |                            // This is a test.
 | 
					
						
							|  |  |  |                        }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion fdescribe
 | 
					
						
							|  |  |  | fdescribe('some component', () => { | 
					
						
							|  |  |  |   it('has a test', () => { | 
					
						
							|  |  |  |                        // This test will run.
 | 
					
						
							|  |  |  |                    }); | 
					
						
							|  |  |  | }); | 
					
						
							| 
									
										
										
										
											2016-04-12 09:40:37 -07:00
										 |  |  | describe('another component', | 
					
						
							|  |  |  |          () => { it('also has a test', () => { throw 'This test will not run.'; }); }); | 
					
						
							| 
									
										
										
										
											2015-11-30 08:28:54 -08:00
										 |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion xdescribe
 | 
					
						
							|  |  |  | xdescribe('some component', () => { it('has a test', () => {throw 'This test will not run.'}); }); | 
					
						
							|  |  |  | describe('another component', () => { | 
					
						
							|  |  |  |   it('also has a test', () => { | 
					
						
							|  |  |  |                             // This test will run.
 | 
					
						
							|  |  |  |                         }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion fit
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							|  |  |  |   fit('has a test', () => { | 
					
						
							|  |  |  |                         // This test will run.
 | 
					
						
							|  |  |  |                     }); | 
					
						
							|  |  |  |   it('has another test', () => { throw 'This test will not run.'; }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion xit
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							|  |  |  |   xit('has a test', () => { throw 'This test will not run.'; }); | 
					
						
							|  |  |  |   it('has another test', () => { | 
					
						
							|  |  |  |                              // This test will run.
 | 
					
						
							|  |  |  |                          }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion beforeEach
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							|  |  |  |   beforeEach(() => { db.connect(); }); | 
					
						
							|  |  |  |   it('uses the db', () => { | 
					
						
							|  |  |  |                         // Database is connected.
 | 
					
						
							|  |  |  |                     }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion beforeEachProviders
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							|  |  |  |   beforeEachProviders(() => [provide(MyService, {useClass: MyMockService})]); | 
					
						
							| 
									
										
										
										
											2016-04-12 09:40:37 -07:00
										 |  |  |   it('uses MyService', inject([MyService], (service: MyMockService) => { | 
					
						
							|  |  |  |                                                // service is an instance of MyMockService.
 | 
					
						
							|  |  |  |                                            })); | 
					
						
							| 
									
										
										
										
											2015-11-30 08:28:54 -08:00
										 |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // #docregion afterEach
 | 
					
						
							|  |  |  | describe('some component', () => { | 
					
						
							| 
									
										
										
										
											2016-02-11 17:01:17 -08:00
										 |  |  |   afterEach((done: Function) => { db.reset().then((_: any) => done()); }); | 
					
						
							| 
									
										
										
										
											2015-11-30 08:28:54 -08:00
										 |  |  |   it('uses the db', () => { | 
					
						
							|  |  |  |                         // This test can leave the database in a dirty state.
 | 
					
						
							|  |  |  |                         // The afterEach will ensure it gets reset.
 | 
					
						
							|  |  |  |                     }); | 
					
						
							|  |  |  | }); | 
					
						
							|  |  |  | // #enddocregion
 |