1*c3cf5a6cSMartin Doucha<?php 2*c3cf5a6cSMartin Doucha 3*c3cf5a6cSMartin Doucharequire_once DOKU_INC . 'inc/parserutils.php'; 4*c3cf5a6cSMartin Doucha 5*c3cf5a6cSMartin Douchaclass cache_stalecheck_test extends DokuWikiTest { 6*c3cf5a6cSMartin Doucha function test_staleness() { 7*c3cf5a6cSMartin Doucha global $ID; 8*c3cf5a6cSMartin Doucha 9*c3cf5a6cSMartin Doucha $ID = 'stale'; 10*c3cf5a6cSMartin Doucha $file = wikiFN($ID); 11*c3cf5a6cSMartin Doucha 12*c3cf5a6cSMartin Doucha # Prepare test page 13*c3cf5a6cSMartin Doucha saveWikiText($ID, 'Fresh', 'Created'); 14*c3cf5a6cSMartin Doucha 15*c3cf5a6cSMartin Doucha # Create stale cache 16*c3cf5a6cSMartin Doucha $cache = new cache_renderer($ID, $file, 'xhtml'); 17*c3cf5a6cSMartin Doucha $cache->storeCache('Stale'); 18*c3cf5a6cSMartin Doucha $stale = $cache->retrieveCache(); 19*c3cf5a6cSMartin Doucha 20*c3cf5a6cSMartin Doucha # Prepare stale cache for testing 21*c3cf5a6cSMartin Doucha $time = filemtime($file); 22*c3cf5a6cSMartin Doucha touch($cache->cache, $time); 23*c3cf5a6cSMartin Doucha 24*c3cf5a6cSMartin Doucha # Make the test 25*c3cf5a6cSMartin Doucha $fresh = p_cached_output($file, 'xhtml', $ID); 26*c3cf5a6cSMartin Doucha $this->assertNotEquals($fresh, $stale, 'Stale cache failed to expire'); 27*c3cf5a6cSMartin Doucha } 28*c3cf5a6cSMartin Doucha} 29*c3cf5a6cSMartin Doucha?> 30