Skip to content
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.codedifferently.lesson16.movie;

public enum Genres {
DRAMA,
COMEDY,
ACTION,
THRILLER,
HORROR,
SCIENCE_FICTION,
FANTASY,
ROMANCE,
ADVENTURE,
MYSTERY;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
package com.codedifferently.lesson16.movie;

public class Movie {

// member variables
private String title;
private int releaseYear;
private double rating;
private final Genres genres;
private final MovieRating movieRating;

// constructor
public Movie(
String title, int releaseYear, double rating, MovieRating movieRating, Genres genres) {
this.title = title;
this.releaseYear = releaseYear;
this.rating = rating;
this.movieRating = movieRating;
this.genres = genres;
}

// getters and setters member functions

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

public int getReleaseYear() {
return releaseYear;
}

public int setReleaseYear(int releaseYear) {
return this.releaseYear = releaseYear;
}

public double getRating() {
return rating;
}

public double setRating(double rating) {
return this.rating = rating;
}

public Genres getGenres() {
return genres;
}

public MovieRating getMovieRating() {
return movieRating;
}

public String getMovieTitle() {
return title;
}

public String setMovieTitle() {
return "Creed 2";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.codedifferently.lesson16.movie;

public enum MovieRating {
G,
PG,
PG_13,
R;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/

package com.codedifferently.lesson16.movie;

class releaseYear {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package com.codedifferently.lesson16.movie;

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

public class MovieTest {
Movie movie;

@BeforeEach
public void setUp() {
movie = new Movie("Creed", 2015, 7.6, MovieRating.PG_13, Genres.ACTION);
}

@Test
void testGetMovieTitle() {
// act
String title = movie.getMovieTitle();
// assert
assertEquals("Creed", title);
}

@Test
void testSetMovieTitle() {
// arrange
// act
String title = movie.setMovieTitle();
// assert
assertEquals("Creed 2", title);
}

@Test
void testGetReleaseYear() {
int releaseYear = movie.getReleaseYear();
assertEquals(2015, 2015);
}

@Test
void testSetReleaseYear() {
int releaseYear = movie.setReleaseYear(2018);
assertEquals(movie.getReleaseYear(), 2018);
}

@Test
void testGetRating() {
double rating = movie.getRating();
assertEquals(movie.getRating(), 7.6);
}

@Test
void testGetGenres() {
assertEquals(Genres.ACTION, movie.getGenres());
}
}