Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. describe('Testing Film Studio class', function () {
  2.     it('Testing film name', function () {
  3.         let myClass = new FilmStudio('Thor');
  4.         expect(myClass.name).to.be.equal('Thor')
  5.     });
  6.     it('Testing film property', function () {
  7.         let myClass = new FilmStudio('Thor');
  8.         expect(myClass.films).to.be.deep.equal([]);
  9.     });
  10.     it('Testing makeMovie, arg count', function () {
  11.         let myClass = new FilmStudio('Thor');
  12.  
  13.         expect(() => myClass.makeMovie('x')).to.throw('Invalid arguments count');
  14.     });
  15.     it('Testing makeMovie, arg type', function () {
  16.         let myClass = new FilmStudio('Thor');
  17.  
  18.         expect(() => myClass.makeMovie(9, [1, 2, 3])).to.throw('Invalid arguments');
  19.     });
  20.     it('Testing makeMovie, all good', function () {
  21.         let myClass = new FilmStudio('The Avengers');
  22.         let result = {
  23.             filmName: 'The Avengers',
  24.             filmRoles:
  25.                 [{ role: 'Iron-Man', actor: false },
  26.                 { role: 'Thor', actor: false },
  27.                 { role: 'Hulk', actor: false },
  28.                 { role: 'Arrow guy', actor: false }]
  29.         }
  30.         let input = myClass.makeMovie('The Avengers', ['Iron-Man', 'Thor', 'Hulk', 'Arrow guy']);
  31.         expect(input).to.be.deep.equal(result);
  32.     });
  33.     it('Testing casting, no movie', function () {
  34.         let myClass = new FilmStudio('Thor');
  35.         expect(myClass.casting('Pesho', 'X')).to.be.equal('There are no films yet in Thor.');
  36.     });
  37.     it('Testing casting, no role', function () {
  38.         let myClass = new FilmStudio('Thor');
  39.         let input = myClass.makeMovie('The Avengers', ['Iron-Man', 'Thor', 'Hulk', 'Arrow guy']);
  40.         expect(myClass.casting('Pesho', 'X')).to.be.equal('Pesho, we cannot find a X role...');
  41.     });
  42.     it('Testing casting, all good', function () {
  43.         let myClass = new FilmStudio('Thor');
  44.         let input = myClass.makeMovie('The Avengers', ['Iron-Man', 'Thor', 'Hulk', 'Arrow guy']);
  45.         expect(myClass.casting('Pesho', 'Thor')).to.be.equal('You got the job! Mr. Pesho you are next Thor in the The Avengers. Congratz!');
  46.     });
  47.     it('Testing lookForProducer, no movie', function () {
  48.         let myClass = new FilmStudio('Thor');
  49.         let input = myClass.makeMovie('The Avengers', ['Iron-Man', 'Thor', 'Hulk', 'Arrow guy']);
  50.         expect(() => myClass.lookForProducer('x')).to.throw(Error, 'x do not exist yet, but we need the money...');
  51.     });
  52.     it('Testing lookForProducer, all good', function () {
  53.         let myClass = new FilmStudio('Thor');
  54.         let input = myClass.makeMovie('The Avengers', ['Iron-Man', 'Thor', 'Hulk', 'Arrow guy']);
  55.         expect(myClass.lookForProducer('The Avengers')).to.be.equal(`Film name: The Avengers\nCast:\nfalse as Iron-Man\nfalse as Thor\nfalse as Hulk\nfalse as Arrow guy\n`)
  56.     });
  57. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement