1 37 package net.sourceforge.cruisecontrol.publishers; 38 39 import junit.framework.TestCase; 40 import net.sourceforge.cruisecontrol.util.XMLLogHelper; 41 import net.sourceforge.cruisecontrol.CruiseControlException; 42 import net.sourceforge.cruisecontrol.testutil.TestUtil; 43 import net.sourceforge.cruisecontrol.publishers.rss.Feed; 44 45 import java.io.File ; 46 47 import org.jdom.Element; 48 49 52 public class RSSPublisherTest extends TestCase { 53 54 private File tmpFile; 55 56 57 protected XMLLogHelper createLogHelper(boolean success, boolean lastBuildSuccess) { 58 Element cruisecontrolElement = TestUtil.createElement(success, lastBuildSuccess); 59 60 return new XMLLogHelper(cruisecontrolElement); 61 } 62 63 public void setUp() throws Exception { 64 tmpFile = File.createTempFile("rsspublisher-test", "tmp"); 65 tmpFile.deleteOnExit(); 66 } 67 68 public void tearDown() throws Exception { 69 tmpFile.delete(); 70 } 71 72 public void testValidate() { 73 RSSPublisher publisher = new RSSPublisher(); 74 try { 75 publisher.validate(); 76 fail("RSSPublisher should throw exceptions when required fields are not set."); 77 } catch (CruiseControlException e) { 78 } 79 80 publisher.setFile(tmpFile.getAbsolutePath()); 81 publisher.setBuildResultsURL("http://cruisecontrol.sourceforge.net"); 82 83 try { 84 publisher.validate(); 85 } catch (CruiseControlException e) { 86 fail("RSSPublisher should not throw exceptions when required fields are set."); 87 } 88 } 89 90 public void testMultipleProjects() throws Exception { 91 RSSPublisher publisher = new RSSPublisher(); 92 93 publisher.setFile(tmpFile.getAbsolutePath()); 94 publisher.setBuildResultsURL("http://cruisecontrol.sourceforge.net"); 95 96 Feed feed1 = RSSPublisher.getRSSFeed(tmpFile); 97 Feed feed2 = RSSPublisher.getRSSFeed(tmpFile); 98 assertNotNull(feed1); 99 assertNotNull(feed2); 100 assertEquals(feed1, feed2); 101 102 103 File tmpFile2 = File.createTempFile("test", "tmp"); 104 Feed feed3 = RSSPublisher.getRSSFeed(tmpFile2); 105 assertNotNull(feed3); 106 assertFalse(feed2 == feed3); 107 assertFalse(feed1 == feed3); 108 109 tmpFile2.delete(); 110 } 111 } 112 | Popular Tags |