Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* eslint-disable import/no-extraneous-dependencies*/
- // Test cases for routing
- import { expect } from 'chai';
- import request from 'supertest';
- import { BaseModel } from '../API/models/BaseSchema';
- import Movie from '../API/models/MovieSchema';
- import server from '../server';
- import sampleData from './sampleData';
- let movieId;
- let movieId2;
- const { sampleMovie } = sampleData;
- before(() => {
- const movie = new Movie({ title: 'CasaBlanca' });
- const movie2 = new Movie({ title: 'X men' });
- movie.save();
- movie2.save();
- BaseModel.find().then(( response ) => {
- movieId = response.find( item => item.title === 'CasaBlanca' )._id;
- movieId2 = response.find( item => item.title === 'X men' )._id;
- });
- });
- after(() => {
- BaseModel.remove({ _id: `${movieId}` }).exec();
- BaseModel.remove({ _id: `${movieId2}` }).exec();
- });
- describe( 'Routing test cases', () => {
- describe( 'Movies route', () => {
- it( 'Movies route should return 200', () => {
- request( server )
- .get( '/movies' )
- .expect( 200 )
- .then( response => expect( response.text ).to.equal( 'Rambo' ));
- });
- it( 'A page per movie should be displayed', () => {
- request( server )
- .get( '/movies/58faa4dfb131c3f8c49cb3b0' )
- .expect( 200 )
- .then( response => expect( response.text ).to.equal( 'Rambo' ));
- });
- it( 'myRating property can be set', () => {
- request( server )
- .post( '/movies/58faa4dfb131c3f8c49cb3b0' )
- .send({ rating: '5.6' })
- .expect( 200 )
- .then( response => expect( response.text ).to.equal( 'myRating: 5.6' ));
- });
- it( 'a movie can be deleted from it\'s page', () => {
- request( server )
- .delete( `/movies/${movieId}` )
- .expect( 200 )
- .then( response => expect( response.text ).to.equal( 'CasaBlanca has been deleted' ));
- });
- it( 'a movie can be deleted from the main movies page', () => {
- request( server )
- .delete( '/movies' )
- .send({ id: movieId2 })
- .expect( 200 )
- .then( response => expect( response.text ).to.equal( 'X men has been deleted' ));
- });
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement