Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const { expect } = require('chai')
- const ChristmasMovies = require('./02. Christmas Movies_Resources')
- describe("test", () => {
- let instance = {}
- beforeEach(() =>instance = new ChristmasMovies({
- movieCollection: [],
- watched: {},
- actors: []
- }))
- describe("buyMovie method", () => {
- it("should add", () => {
- expect(instance.buyMovie("pirates", ["ac1", "ac2", "ac3"])).to.be.equal("You just got pirates to your collection in which ac1, ac2, ac3 are taking part!")
- })
- it("its there", () => {
- instance.buyMovie('Last Christmas', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- expect(() => instance.buyMovie('Last Christmas', ["ac1", "ac2", "ac3"])).to.throw(`You already own Last Christmas in your collection!`)
- })
- })
- describe("discardMovie method", () => {
- it("wont delete", () => {
- instance.buyMovie('Last Christmas 2', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- expect(() => instance.discardMovie('pirates')).to.throw(`pirates is not at your collection!`)
- })
- it("not watched", () => {
- instance.buyMovie('Last Christmas', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- expect(() => instance.discardMovie('Last Christmas')).to.throw(`Last Christmas is not watched!`)
- })
- it("watched", () => {
- instance.buyMovie('pirate', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- instance.watchMovie("pirate")
- expect(instance.discardMovie('pirate')).to.be.equal(`You just threw away pirate!`)
- })
- })
- describe("watchMovie method", () => {
- it("not in collection", () => {
- expect(() => instance.watchMovie("pirate")).to.throw("No such movie in your collection!")
- })
- })
- describe("favouriteMovie method", () => {
- it("no watched", () => {
- expect(() => instance.favouriteMovie()).to.throw("You have not watched a movie yet this year!")
- })
- it("favourite", () => {
- instance.buyMovie('Last Christmas', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- instance.buyMovie('pirate', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- instance.watchMovie("pirate")
- instance.watchMovie("pirate")
- instance.watchMovie("Last Christmas")
- expect(instance.favouriteMovie()).to.equal("Your favourite movie is pirate and you have watched it 2 times!")
- })
- })
- describe("mostStarredActors method", () => {
- it("no movies", () => {
- expect(() => instance.mostStarredActor()).to.throw("You have not watched a movie yet this year!")
- })
- it("successfuly", () => {
- instance.buyMovie('Last Christmas', ['Madison Ingoldsby', 'Emma Thompson', 'Boris Isakovic', 'Madison Ingoldsby'])
- instance.buyMovie('pirate', ['Madison Ingoldsby'])
- expect(instance.mostStarredActor()).to.equal("The most starred actor is Madison Ingoldsby and starred in 2 movies!")
- })
- })
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement