Advertisement
Guest User

Untitled

a guest
Aug 17th, 2019
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.56 KB | None | 0 0
  1. import br.ufal.ic.academico.exemplos.Database;
  2. import br.ufal.ic.academico.model.*;
  3. import io.dropwizard.testing.junit5.DAOTestExtension;
  4. import io.dropwizard.testing.junit5.DropwizardExtensionsSupport;
  5. import static org.junit.jupiter.api.Assertions.*;
  6.  
  7. import java.util.ArrayList;
  8. import java.util.List;
  9.  
  10. import org.hibernate.SessionFactory;
  11. import org.junit.jupiter.api.Test;
  12. import org.junit.jupiter.api.extension.ExtendWith;
  13.  
  14. @ExtendWith(DropwizardExtensionsSupport.class)
  15. public class CourseTest {
  16.    
  17.     public DAOTestExtension dbTesting = DAOTestExtension.newBuilder()
  18.             .addEntityClass(Subject.class)
  19.             .addEntityClass(Course.class)
  20.             .addEntityClass(Student.class)
  21.             .build();
  22.    
  23.     private Database dao;
  24.     private SessionFactory sessionFactory;
  25.        
  26.     @Test
  27.     public void testSubject() {
  28.        
  29.         sessionFactory = dbTesting.getSessionFactory();
  30.         dao = new Database(sessionFactory);
  31.        
  32.         // FIRST ROUND OF TESTS
  33.        
  34.         sessionFactory.getCurrentSession().beginTransaction();
  35.         Subject firstSubject = new Subject("First Subject", "1", 20);
  36.         dao.persist(Subject.class, firstSubject);
  37.         Course firstCourse = new Course("First Course", "Graduation");
  38.         assertTrue(firstCourse.setOneSubject(firstSubject)); // FIRST ASSERTION
  39.         dao.persist(Course.class, firstCourse);
  40.         sessionFactory.getCurrentSession().getTransaction().commit();
  41.         Course retrievedCourse;
  42.         assertNotNull((retrievedCourse = dao.get(Course.class, firstCourse.getId()))); // SECOND ASSERTION
  43.         assertEquals(retrievedCourse.getCourseSubjects().get(0), firstSubject); // THIRD ASSERTION
  44.         assertFalse(firstCourse.setOneSubject(firstSubject)); // FOURTH ASSERTION
  45.        
  46.         Subject secondSubject = new Subject("Second Subject", "2", 20);
  47.         assertTrue(firstCourse.setOneSubject(secondSubject)); // FIFTH ASSERTION
  48.         sessionFactory.getCurrentSession().beginTransaction();
  49.         dao.persist(Subject.class, secondSubject);
  50.         dao.persist(Course.class, firstCourse);
  51.         sessionFactory.getCurrentSession().getTransaction().commit();
  52.        
  53.         assertNotNull((retrievedCourse = dao.get(Course.class, firstCourse.getId()))); // SEVENTH ASSERTION
  54.         assertTrue(retrievedCourse.getCourseSubjects().size() == 2); // EIGHTH ASSERTION
  55.         assertEquals(retrievedCourse.getCourseSubjects().get(1), secondSubject); // NINTH ASSERTION
  56.        
  57.         // SECOND ROUND OF TESTS
  58.        
  59.         Course secondCourse = new Course("Second Course", "Graduation");
  60.         Subject thirdSubject = new Subject("Third Subject", "3", 30);
  61.         Subject fourthSubject = new Subject("Fourth Subject", "4", 40);
  62.         secondCourse.setOneSubject(thirdSubject);
  63.         secondCourse.setOneSubject(fourthSubject);
  64.         sessionFactory.getCurrentSession().beginTransaction();
  65.         dao.persist(Subject.class, thirdSubject);
  66.         dao.persist(Subject.class, fourthSubject);        
  67.         dao.persist(Course.class, secondCourse);
  68.         sessionFactory.getCurrentSession().getTransaction().commit();
  69.         List<Course> list = dao.list(Course.class);
  70.         assertEquals(firstCourse, list.get(0)); // TENTH ASSERTION
  71.         assertEquals(secondCourse, list.get(1)); // ELEVENTH ASSERTION
  72.         assertEquals("Graduation", list.get(1).getKindOfCourse());
  73.         assertEquals("Second Course", list.get(1).getName());
  74.         assertFalse(list == null);
  75.         assertNotNull(list);
  76.         assertNotNull(list.get(0));
  77.         assertNotNull(list.get(1));
  78.     }
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement