test
This commit is contained in:
		
							parent
							
								
									9f81288fcc
								
							
						
					
					
						commit
						b4e3d42e96
					
				
					 1 changed files with 40 additions and 5 deletions
				
			
		
							
								
								
									
										45
									
								
								test/api.js
									
										
									
									
									
								
							
							
						
						
									
										45
									
								
								test/api.js
									
										
									
									
									
								
							|  | @ -17,6 +17,7 @@ const db = require('../built/db/mongodb').default; | ||||||
| describe('API', () => { | describe('API', () => { | ||||||
| 	// Reset database
 | 	// Reset database
 | ||||||
| 	db.get('users').drop(); | 	db.get('users').drop(); | ||||||
|  | 	db.get('posts').drop(); | ||||||
| 
 | 
 | ||||||
| 	it('greet server', done => { | 	it('greet server', done => { | ||||||
| 		chai.request(server) | 		chai.request(server) | ||||||
|  | @ -28,11 +29,14 @@ describe('API', () => { | ||||||
| 			}); | 			}); | ||||||
| 	}); | 	}); | ||||||
| 
 | 
 | ||||||
|  | 	const account = { | ||||||
|  | 		username: 'sakurako', | ||||||
|  | 		password: 'HimawariDaisuki06160907' | ||||||
|  | 	}; | ||||||
|  | 
 | ||||||
|  | 	let me; | ||||||
|  | 
 | ||||||
| 	it('create account', done => { | 	it('create account', done => { | ||||||
| 		const account = { |  | ||||||
| 			username: 'sakurako', |  | ||||||
| 			password: 'HimawariDaisuki06160907' |  | ||||||
| 		}; |  | ||||||
| 		chai.request(server) | 		chai.request(server) | ||||||
| 			.post('/signup') | 			.post('/signup') | ||||||
| 			.set('content-type', 'application/x-www-form-urlencoded') | 			.set('content-type', 'application/x-www-form-urlencoded') | ||||||
|  | @ -45,6 +49,36 @@ describe('API', () => { | ||||||
| 			}); | 			}); | ||||||
| 	}); | 	}); | ||||||
| 
 | 
 | ||||||
|  | 	it('signin', done => { | ||||||
|  | 		chai.request(server) | ||||||
|  | 			.post('/signin') | ||||||
|  | 			.set('content-type', 'application/x-www-form-urlencoded') | ||||||
|  | 			.send(account) | ||||||
|  | 			.end((err, res) => { | ||||||
|  | 				res.should.have.status(204); | ||||||
|  | 				me = res.header['set-cookie'][0].match(/i=(!\w+)/)[1]; | ||||||
|  | 				done(); | ||||||
|  | 			}); | ||||||
|  | 	}); | ||||||
|  | 
 | ||||||
|  | 	describe('i/update', () => { | ||||||
|  | 		it('update my name', done => { | ||||||
|  | 			const myName = '大室櫻子'; | ||||||
|  | 			chai.request(server) | ||||||
|  | 				.post('/i/update') | ||||||
|  | 				.set('content-type', 'application/x-www-form-urlencoded') | ||||||
|  | 				.send(Object.assign({ i: me }, { | ||||||
|  | 					name: myName | ||||||
|  | 				})) | ||||||
|  | 				.end((err, res) => { | ||||||
|  | 					res.should.have.status(200); | ||||||
|  | 					res.body.should.be.a('object'); | ||||||
|  | 					res.body.should.have.property('name').eql(myName); | ||||||
|  | 					done(); | ||||||
|  | 				}); | ||||||
|  | 		}); | ||||||
|  | 	}); | ||||||
|  | 
 | ||||||
| 	describe('posts/create', () => { | 	describe('posts/create', () => { | ||||||
| 		it('simple', done => { | 		it('simple', done => { | ||||||
| 			const post = { | 			const post = { | ||||||
|  | @ -52,7 +86,8 @@ describe('API', () => { | ||||||
| 			}; | 			}; | ||||||
| 			chai.request(server) | 			chai.request(server) | ||||||
| 				.post('/posts/create') | 				.post('/posts/create') | ||||||
| 				.send(post) | 				.set('content-type', 'application/x-www-form-urlencoded') | ||||||
|  | 				.send(Object.assign({ i: me }, post)) | ||||||
| 				.end((err, res) => { | 				.end((err, res) => { | ||||||
| 					res.should.have.status(200); | 					res.should.have.status(200); | ||||||
| 					res.body.should.be.a('object'); | 					res.body.should.be.a('object'); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue