9 my $tmpdir = File::Tempdir->new();
10 my $dir = io($tmpdir->name);
12 $dir->catdir('share/pages/cachetest')->mkpath;
13 $dir->catdir('share/templates')->mkpath;
15 io('t/data/cachetest/share/pages/cachetest/1.html') > io($dir->catfile('share/pages/cachetest/1.html'));
16 io('t/data/cachetest/share/pages/cachetest.conf') > io($dir->catfile('share/pages/cachetest.conf'));
17 io('t/data/cachetest/share/templates/layout.html') > io($dir->catfile('share/templates/layout.html'));
18 io('t/data/cachetest/share/templates/alternate.html') > io($dir->catfile('share/templates/alternate.html'));
19 io('t/data/cachetest/share/templates/third.html') > io($dir->catfile('share/templates/third.html'));
21 my $app = App::SCS->new(
25 my $cachetest1 = $app->pages->get({ path => 'cachetest/1' });
27 ok($cachetest1, 'Got a page object');
31 io->file('t/data/cachetest/share/pages/cachetest/1.html')->all,
35 like ($cachetest1->_html_zoom->to_html,
36 qr{<body>.*<h2>Heading 2</h2>.*</body>}s,
40 # We want to make sure our config is newer than the cached version
43 io('t/data/cachetest/share/pages/cachetest2.conf') > io($dir->catfile('share/pages/cachetest.conf'));
45 $cachetest1 = $app->pages->get({ path => 'cachetest/1' });
47 like ($cachetest1->_html_zoom->to_html,
48 qr{<body>.*<h3>Heading 3</h3>.*</body>}s,
49 'Changing the config invalidates cache, updates content'