1 31 32 package org.opencms.file; 33 34 import org.opencms.main.CmsException; 35 import org.opencms.test.OpenCmsTestCase; 36 import org.opencms.test.OpenCmsTestProperties; 37 38 import junit.extensions.TestSetup; 39 import junit.framework.Test; 40 import junit.framework.TestSuite; 41 42 48 public class TestReleaseExpire extends OpenCmsTestCase { 49 50 private int m_msecPerDay = 1000 * 60 * 60 * 12; 51 52 private String m_resourceName = "/index.html"; 53 54 59 public TestReleaseExpire(String arg0) { 60 61 super(arg0); 62 } 63 64 69 public static Test suite() { 70 71 OpenCmsTestProperties.initialize(org.opencms.test.AllTests.TEST_PROPERTIES_PATH); 72 73 TestSuite suite = new TestSuite(); 74 suite.setName(TestReleaseExpire.class.getName()); 75 76 suite.addTest(new TestReleaseExpire("testSetDateReleased")); 77 suite.addTest(new TestReleaseExpire("testSetDateExpired")); 78 79 TestSetup wrapper = new TestSetup(suite) { 80 81 protected void setUp() { 82 83 setupOpenCms("simpletest", "/sites/default/"); 84 } 85 86 protected void tearDown() { 87 88 removeOpenCms(); 89 } 90 }; 91 92 return wrapper; 93 } 94 95 101 public void testSetDateExpired() throws Throwable { 102 103 CmsObject cms = getCmsObject(); 104 echo("Testing to set expire date"); 105 106 long yesterday = System.currentTimeMillis() - m_msecPerDay; 107 cms.lockResource(m_resourceName); 108 cms.setDateExpired(m_resourceName, yesterday, false); 109 cms.unlockResource(m_resourceName); 110 111 CmsResource resource = testOutsideTimeRange(cms); 112 assertEquals(resource.getDateExpired(), yesterday); 113 } 114 115 120 public void testSetDateReleased() throws Throwable { 121 122 CmsObject cms = getCmsObject(); 123 echo("Testing to set relase date"); 124 125 long tomorrow = System.currentTimeMillis() + m_msecPerDay; 126 cms.lockResource(m_resourceName); 127 cms.setDateReleased(m_resourceName, tomorrow, false); 128 cms.unlockResource(m_resourceName); 129 130 CmsResource resource = testOutsideTimeRange(cms); 131 assertEquals(resource.getDateReleased(), tomorrow); 132 } 133 134 private CmsResource testOutsideTimeRange(CmsObject cms) throws CmsException { 135 136 boolean coughtException = false; 137 try { 139 cms.readResource(m_resourceName, CmsResourceFilter.DEFAULT); 140 } catch (CmsVfsResourceNotFoundException e) { 141 coughtException = true; 142 } 143 if (!coughtException) { 144 fail("Read invisible resource with filter CmsResourceFilter.ONLY_VISIBLE"); 145 } 146 147 try { 148 return cms.readResource(m_resourceName, CmsResourceFilter.ALL); 149 } catch (CmsException e) { 150 fail("Unable to read invisible resource with filter CmsResourceFilter.ALL"); 151 } 152 return null; 153 } 154 } 155 | Popular Tags |