<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!--
This file was generated by Devel::Cover Version 0.66
Devel::Cover is copyright 2001-2010, Paul Johnson (pjcj@cpan.org)
Devel::Cover is free. It is licensed under the same terms as Perl itself.
The latest version of Devel::Cover should be available from my homepage:
http://www.pjcj.net
-->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
<meta http-equiv="Content-Language" content="en-us"></meta>
<link rel="stylesheet" type="text/css" href="cover.css"></link>
<link rel="stylesheet" type="text/css" href="cover.css"></link>
<title>File Coverage: t/6-security.t</title>
</head>
<body>
<h1>File Coverage</h1>
<table>
<tr><td class="h" align="right">File:</td><td align="left">t/6-security.t</td></tr>
<tr><td class="h" align="right">Coverage:</td><td align="left" class="c2">98.1%</td></tr>
</table>
<div><br/></div>
<table>
<tr><th>line</th><th>stmt</th><th>bran</th><th>cond</th><th>sub</th><th>pod</th><th>time</th><th>code</th></tr>
<tr><td class="h">1</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L1">1</a></div></td><td></td><td><div>1272034662998704</div><div>12942</div><div>10</div></td><td class="s">use Test::More;</td></tr>
<tr><td class="h">2</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L2">1</a></div></td><td></td><td><div>461</div><div>2098</div><div>6</div></td><td class="s">use Test::Exception;</td></tr>
<tr><td class="h">3</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L3">1</a></div></td><td></td><td><div>348</div><div>934167</div><div>19</div></td><td class="s">use Catalyst ();</td></tr>
<tr><td class="h">4</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L4">1</a></div></td><td></td><td><div>215</div><div>927</div><div>32</div></td><td class="s">use FindBin;</td></tr>
<tr><td class="h">5</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L5">1</a></div></td><td></td><td><div>168</div><div>130088</div><div>19</div></td><td class="s">use DateTime;</td></tr>
<tr><td class="h">6</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L6">1</a></div></td><td></td><td><div>4</div><div>1</div><div>48</div></td><td class="s">use DateTime::Duration;</td></tr>
<tr><td class="h">7</td><td colspan="7"></td></tr><tr><td class="h">8</td><td><div class="c3">1</div></td><td><div class="c0" title="-/F"><a href="t-6-security-t--branch.html#L8">50</a></div></td><td></td><td></td><td></td><td><div>440038</div></td><td class="s">plan skip_all => 'this test is skipped under windows' if ($^O =~ m{Win}xms);</td></tr>
<tr><td class="h">9</td><td colspan="7"></td></tr><tr><td class="h">10</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"># a simple package</td></tr>
<tr><td class="h">11</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">{</td></tr>
<tr><td class="h">12</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>1</div></td><td class="s"> package MyApp::Controller::Js;</td></tr>
<tr><td class="h">13</td><td><div class="c3">1</div><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L13">1</a></div></td><td></td><td><div>4</div><div>1</div><div>10</div></td><td class="s"> use Moose;</td></tr>
<tr><td class="h">14</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>9</div></td><td class="s"> extends 'Catalyst::Controller::Combine';</td></tr>
<tr><td class="h">15</td><td colspan="7"></td></tr><tr><td class="h">16</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>2801</div></td><td class="s"> __PACKAGE__->config(</td></tr>
<tr><td class="h">17</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> # expire => 1,</td></tr>
<tr><td class="h">18</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> # expire_in => 60 * 60, # 1 hour</td></tr>
<tr><td class="h">19</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"> );</td></tr>
<tr><td class="h">20</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">}</td></tr>
<tr><td class="h">21</td><td colspan="7"></td></tr><tr><td class="h">22</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"># setup our Catalyst :-)</td></tr>
<tr><td class="h">23</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>213</div></td><td class="s">my $c = Catalyst->new();</td></tr>
<tr><td class="h">24</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>369</div></td><td class="s">$c->setup_log();</td></tr>
<tr><td class="h">25</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>899</div></td><td class="s">$c->setup_home("$FindBin::Bin");</td></tr>
<tr><td class="h">26</td><td colspan="7"></td></tr><tr><td class="h">27</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>701</div></td><td class="s">my $controller;</td></tr>
<tr><td class="h">28</td><td><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L28">1</a></div></td><td></td><td><div>18</div><div>94</div></td><td class="s">lives_ok { $controller = $c->setup_component('MyApp::Controller::Js') } 'setup component worked';</td></tr>
<tr><td class="h">29</td><td colspan="7"></td></tr><tr><td class="h">30</td><td colspan="7"></td></tr><tr><td class="h">31</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">#</td></tr>
<tr><td class="h">32</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s"># check if expires header is sent, if feature isn't turned on</td></tr>
<tr><td class="h">33</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="s">#</td></tr>
<tr><td class="h">34</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>337</div></td><td class="s">$c->response->body('');</td></tr>
<tr><td class="h">35</td><td><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L35">1</a></div></td><td></td><td><div>200</div><div>83</div></td><td class="s">lives_ok { $controller->do_combine($c, 'js1') } 'file inside root_dir lives';</td></tr>
<tr><td class="h">36</td><td colspan="7"></td></tr><tr><td class="h">37</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>278</div></td><td class="s">$c->response->body('');</td></tr>
<tr><td class="h">38</td><td><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L38">1</a></div></td><td></td><td><div>44</div><div>81</div></td><td class="s">dies_ok { $controller->do_combine($c, 'js1', '../../../6-security.t') } 'file outside root_dir dies';</td></tr>
<tr><td class="h">39</td><td colspan="7"></td></tr><tr><td class="h">40</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>1817</div></td><td class="s">$c->response->body('');</td></tr>
<tr><td class="h">41</td><td><div class="c3">1</div><div class="c3">1</div></td><td></td><td></td><td><div class="c3"><a href="t-6-security-t--subroutine.html#L41">1</a></div></td><td></td><td><div>42</div><div>78</div></td><td class="s">lives_ok { $controller->do_combine($c, 'js1', '../../../xx_notexisting.js') } 'not existing file outside root_dir lives';</td></tr>
<tr><td class="h">42</td><td colspan="7"></td></tr><tr><td class="h">43</td><td><div class="c3">1</div></td><td></td><td></td><td></td><td></td><td><div>252</div></td><td class="s">done_testing;</td></tr>
</table>
</body>
</html>