Merge branch 'Tests'
continuous-integration/drone/push Build is passing Details

master
Lucas Delanier 2 years ago
commit b2781a9f50

@ -1,5 +1,5 @@
import Movie from "../../model/Movie" import Movie from "../../model/Movie"
import {describe, expect, test} from '@jest/globals' import {describe, expect} from '@jest/globals'
import appReducer from "../../redux/reducers/appReducer" import appReducer from "../../redux/reducers/appReducer"
import {ADD_FAVOURITE, ADD_WATCHLATER, FETCH_TRENDING_MOVIE, LOAD_FAVOURITE, LOAD_WATCHLATER, POP_FIRST_TRENDING} from "../../redux/constants" import {ADD_FAVOURITE, ADD_WATCHLATER, FETCH_TRENDING_MOVIE, LOAD_FAVOURITE, LOAD_WATCHLATER, POP_FIRST_TRENDING} from "../../redux/constants"
@ -66,24 +66,107 @@ describe('test ADD_WATCHLATER', () => {
}) })
}) })
}) })
/*
case LOAD_WATCHLATER: describe('test LOAD_WATCHLATER', () => {
// @ts-ignore
return {...state, watchLaterMovies: action.payload}; let initialState = {
case LOAD_FAVOURITE: trendingIDs: [],
// @ts-ignore trendingMovies: [],
return {...state, favouriteMovies: action.payload}; watchLaterMovies: [],
case FETCH_TRENDING_ID: favouriteMovies: [],
// @ts-ignore }
return {...state, trendingIDs: action.payload};
case FETCH_WATCHLATER: it('should handle LOAD_WATCHLATER', () => {
// @ts-ignore const watchLater = new Movie(1, "Test", "", 1, 5, "2023", ["Halloween"], "", "")
return {...state, watchLaterMovies: action.payload}; const MovieList = [watchLater]
case FETCH_FAVOURITE: expect(
// @ts-ignore appReducer(initialState, {
return {...state, favouriteMovies: action.payload}; type: LOAD_WATCHLATER,
case FETCH_TRENDING_MOVIE: payload: MovieList,
return {...state, trendingMovies: action.payload}; })
case POP_FIRST_TRENDING: ).toEqual({
return {...state, trendingMovies: [...state.trendingMovies.filter((item: Movie) => item !== action.payload)]}; trendingIDs: [],
*/ trendingMovies: [],
watchLaterMovies: [watchLater, ...initialState.watchLaterMovies],
favouriteMovies: [],
})
})
})
describe('test LOAD_FAVOURITE', () => {
let initialState = {
trendingIDs: [],
trendingMovies: [],
watchLaterMovies: [],
favouriteMovies: [],
}
it('should handle LOAD_FAVOURITE', () => {
const favourite = new Movie(1, "Test", "", 1, 5, "2023", ["Halloween"], "", "")
const MovieList = [favourite]
expect(
appReducer(initialState, {
type: LOAD_FAVOURITE,
payload: MovieList,
})
).toEqual({
trendingIDs: [],
trendingMovies: [],
watchLaterMovies: [],
favouriteMovies: [favourite, ...initialState.favouriteMovies],
})
})
})
describe('test FETCH_TRENDING_MOVIE', () => {
let initialState = {
trendingIDs: [],
trendingMovies: [],
watchLaterMovies: [],
favouriteMovies: [],
}
it('should handle FETCH_TRENDING_MOVIE', () => {
const trending = new Movie(1, "Test", "", 1, 5, "2023", ["Halloween"], "", "")
const MovieList = [trending]
expect(
appReducer(initialState, {
type: FETCH_TRENDING_MOVIE,
payload: MovieList,
})
).toEqual({
trendingIDs: [],
trendingMovies: [trending, ...initialState.trendingMovies],
watchLaterMovies: [],
favouriteMovies: [],
})
})
})
describe('test POP_FIRST_TRENDING', () => {
const trending = new Movie(1, "Test", "", 1, 5, "2023", ["Halloween"], "", "")
let initialState = {
trendingIDs: [],
trendingMovies: [trending],
watchLaterMovies: [],
favouriteMovies: [],
}
it('should handle POP_FIRST_TRENDING', () => {
expect(
appReducer(initialState, {
type: POP_FIRST_TRENDING,
payload: trending,
})
).toEqual({
trendingIDs: [],
trendingMovies: [...initialState.trendingMovies.filter((item: Movie) => item !== trending)],
watchLaterMovies: [],
favouriteMovies: [],
})
})
})

@ -3,7 +3,7 @@ import Movie from "../../model/Movie";
const initialState = { const initialState = {
trendingIDs: [], trendingIDs: [],
trendingMovies: [], trendingMovies: [] as Movie[],
watchLaterMovies: [] as Movie[], watchLaterMovies: [] as Movie[],
favouriteMovies: [] as Movie[], favouriteMovies: [] as Movie[],
} }

Loading…
Cancel
Save