Advertisement
Guest User

Untitled

a guest
Feb 19th, 2020
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.26 KB | None | 0 0
  1. describe('Tests', () => {
  2.  
  3.  
  4. describe('Test Constructors', () =>{
  5. it("check properties", () =>{
  6. let christmasMovies = new ChristmasMovies();
  7. expect(christmasMovies.actors).to.deep.equal([])
  8. expect(christmasMovies.movieCollection).to.deep.equal([])
  9. expect(christmasMovies.watched).to.deep.equal({});
  10. });
  11. });
  12. describe("if BuyMovie works properly", () =>{
  13. it('Test Error Message', () => {
  14. let christmasMovies = new ChristmasMovies();
  15. christmasMovies.buyMovie("Movie1", ['Actor1']);
  16. const result = () => christmasMovies.buyMovie("Movie1", ['Actor1']);
  17. expect(result).to.throw(Error, "You already own Movie1 in your collection!")
  18.  
  19. })
  20. it('Test functionallity', () => {
  21. let christmasMovies = new ChristmasMovies();
  22.  
  23. const result = christmasMovies.buyMovie("Movie1", ["Actor1","Actor2","Actor1"]);
  24.  
  25. expect(christmasMovies.movieCollection[0]).to.deep.equal({
  26. name: "Movie1",
  27. actors: ["Actor1", "Actor2"]
  28. });
  29.  
  30. expect(christmasMovies.movieCollection.length).to.equal(1);
  31. expect(christmasMovies.movieCollection[0].actors).to.deep.equal(["Actor1", "Actor2"]);
  32. expect(christmasMovies.movieCollection[0].actors.length).to.equal(2);
  33. expect(result).to.equal(`You just got Movie1 to your collection in which Actor1, Actor2 are taking part!`)
  34.  
  35.  
  36. })
  37. })
  38. describe("discard Movie", () => {
  39. describe("throw excpetion when there is no movie", () => {
  40. it('exception', () => {
  41. let christmasMovies = new ChristmasMovies();
  42. let result = () => christmasMovies.discardMovie('xd');
  43.  
  44. expect(result).to.throw(Error, "xd is not at your collection!")
  45.  
  46.  
  47. })
  48. it("if delete works properly", () => {
  49. let christmasMovies = new ChristmasMovies();
  50. christmasMovies.buyMovie("xd", ["Actor1", "Actor2"]);
  51. christmasMovies.watchMovie("xd")
  52. const result = christmasMovies.discardMovie("xd");
  53. expect(result).to.equal("You just threw away xd!")
  54. expect(christmasMovies.movieCollection.length).to.equal(0);
  55. expect(christmasMovies.movieCollection[0]).not.deep.equal({
  56. name: "Name1",
  57. actors: ["Actor1", "Actor2"]
  58.  
  59. })
  60. it("if the movie is not watched", () => {
  61. let christmasMovies = new ChristmasMovies();
  62. christmasMovies.buyMovie("xd", ["Actor1", "Actor2"]);
  63. const result = () => christmasMovies.discardMovie("xd");
  64. expect(result).to.throw("xd is not watched!")
  65. })
  66. })
  67. })
  68. describe("WatchMovie", () => {
  69. describe("if WatchMovie works correctly", () => {
  70. it("Tests if it doesnt work", () => {
  71. let christmasMovies = new ChristmasMovies();
  72. let result = () => christmasMovies.watchMovie("xd");
  73. expect(result).to.throw(Error, "No such movie in your collection!")
  74.  
  75. })
  76. it("Tests if it works properly", () => {
  77. let christmasMovies = new ChristmasMovies();
  78. christmasMovies.buyMovie("xd", ["Actor1", "Actor2"]);
  79. christmasMovies.watchMovie("xd");
  80. expect(christmasMovies.watched["xd"]).to.equal(1);
  81.  
  82. })
  83. it("Test if it has been watched more than 1 time", () => {
  84. let christmasMovies = new ChristmasMovies();
  85. christmasMovies.buyMovie("xd", ["Actor1", "Actor2"]);
  86. christmasMovies.watchMovie("xd");
  87. christmasMovies.watchMovie("xd");
  88. expect(christmasMovies.watched["xd"]).to.equal(2);
  89.  
  90. })
  91. })
  92. })
  93. describe("Favourite Movie", () => {
  94. it("if it throws an error", () =>{
  95. let christmasMovies = new ChristmasMovies();
  96. let result = () => christmasMovies.favouriteMovie();
  97. expect(result).to.throw(Error, 'You have not watched a movie yet this year!')
  98. })
  99. it("checks if favourite movie works properly", () => {
  100. let christmasMovies = new ChristmasMovies();
  101. christmasMovies.buyMovie("xd", ["Actor1", "Actor2"]);
  102. christmasMovies.buyMovie("x", ["Actor1", "Actor2"]);
  103. christmasMovies.watchMovie("xd");
  104. christmasMovies.watchMovie("xd");
  105.  
  106. christmasMovies.watchMovie("x");
  107.  
  108.  
  109. let result = christmasMovies.favouriteMovie();
  110. expect(result).to.equal("Your favourite movie is xd and you have watched it 2 times!")
  111.  
  112. })
  113. })
  114. describe("Most Starred Actor", () => {
  115. it("does it throw an Error", () => {
  116. let christmasMovies = new ChristmasMovies();
  117. let result = () => christmasMovies.mostStarredActor();
  118. expect(result).to.throw(Error,'You have not watched a movie yet this year!');
  119. })
  120. it("if it works properly", () => {
  121. let christmasMovies = new ChristmasMovies();
  122. christmasMovies.buyMovie("xd", ["Actor1", "Actor2", "Actor6"])
  123. christmasMovies.buyMovie("asd", ["Actor1", "Actor3", "Actor4"])
  124. christmasMovies.buyMovie("xdb", ["Actor3", "Actor1", "Actor5"])
  125.  
  126. const result = christmasMovies.mostStarredActor();
  127.  
  128. expect(result).to.equal(`The most starred actor is Actor1 and starred in 3 movies!`)
  129.  
  130.  
  131.  
  132.  
  133. })
  134. })
  135. })})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement