91 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			91 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | import { | ||
|  |   describe, | ||
|  |   fdescribe, | ||
|  |   xdescribe, | ||
|  |   it, | ||
|  |   fit, | ||
|  |   xit, | ||
|  |   beforeEach, | ||
|  |   afterEach, | ||
|  |   beforeEachProviders, | ||
|  |   inject | ||
|  | } from 'angular2/testing'; | ||
|  | 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.
 | ||
|  |                    }); | ||
|  | }); | ||
|  | describe('another component', | ||
|  |          () => { it('also has a test', () => { throw 'This test will not run.'; }); }); | ||
|  | // #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})]); | ||
|  |   it('uses MyService', inject([MyService], (service) => { | ||
|  |                                                // service is an instance of MyMockService.
 | ||
|  |                                            })); | ||
|  | }); | ||
|  | // #enddocregion
 | ||
|  | 
 | ||
|  | // #docregion afterEach
 | ||
|  | describe('some component', () => { | ||
|  |   afterEach((done) => { db.reset().then((_) => done()); }); | ||
|  |   it('uses the db', () => { | ||
|  |                         // This test can leave the database in a dirty state.
 | ||
|  |                         // The afterEach will ensure it gets reset.
 | ||
|  |                     }); | ||
|  | }); | ||
|  | // #enddocregion
 |