@Test(dataProvider = "journal") public void testBrowseLatestIssueFromLatestVolume(Journal journal) { // set journal to have a null currentIssue Issue originalIssue = journal.getCurrentIssue(); journal.setCurrentIssue(null); dummyDataStore.update(journal); try { assertEquals(action.execute(), BaseActionSupport.SUCCESS, "Action didn't return success"); IssueInfo issueInfo = action.getIssueInfo(); assertNotNull(issueInfo, "action had null issue info"); // Load up latest volume w/ dummy datastore to defeat lazy-loaded issues Long volumeId = journal.getVolumes().get(journal.getVolumes().size() - 1).getID(); Volume latestVolume = dummyDataStore.get(Volume.class, volumeId); Issue latestIssue = latestVolume.getIssues().get(latestVolume.getIssues().size() - 1); assertEquals( issueInfo.getIssueURI(), latestIssue.getIssueUri(), "action had incorrect issue uri"); assertEquals( issueInfo.getDescription(), latestIssue.getDescription(), "action had incorrect issue description"); assertEquals( action.getVolumeInfo().getVolumeUri(), latestVolume.getVolumeUri(), "action had incorrect volume"); } finally { // reset state journal.setCurrentIssue(originalIssue); dummyDataStore.update(journal); } }
@Test(dataProvider = "journal") public void testBrowseCurrentIssue(Journal journal) throws Exception { assertEquals(action.execute(), BaseActionSupport.SUCCESS, "Action didn't return success"); IssueInfo issueInfo = action.getIssueInfo(); assertNotNull(issueInfo, "action had null issue info"); assertEquals( issueInfo.getArticleUriList(), journal.getCurrentIssue().getArticleDois(), "action's issue had incorrect article dois"); assertEquals( issueInfo.getIssueURI(), journal.getCurrentIssue().getIssueUri(), "Action's issue had incorrect issue uri"); }