blib/lib/Mojo/Redis/Cache.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
branch | 18 | 30 | 60.0 |
line | true | false | branch |
---|---|---|---|
27 | 2 | 3 | $self->refresh ? : |
29 | 1 | 4 | $_[0] ? : |
30 | 0 | 5 | if $expire < 0 |
31 | 4 | 1 | unless $data |
38 | 4 | 0 | ref $_[0] eq 'ARRAY' ? : |
51 | 0 | 3 | $expire < 0 ? : |
58 | 0 | 3 | &blessed($data) && $data->can('then') ? : |
65 | 0 | 0 | unless $data |
68 | 0 | 0 | if $data->[1] and _time() < $data->[1] |
77 | 0 | 0 | unless (eval { do { $self->_compute_p($key, $expire, $compute)->then(sub { $p->resolve(shift(), {"computed", 1, "expired", 1}); } , sub { $p->resolve($data->[0], {"error", $_[0], "expired", 1}); } ) } }) |
85 | 0 | 1 | unless state $c = eval "package Mojo::Redis::Connection::Offline;\nuse Mojo::Base 'Mojo::Redis::Connection';\nour \$STORE = {}; # Meant for internal use only\n\nsub write_p {\n my (\$conn, \$op, \$key) = (shift, shift, shift);\n\n if (\$op eq 'SET') {\n \$STORE->{\$conn->url}{\$key} = [\$_[0], defined \$_[2] ? \$_[2] + Mojo::Redis::Cache::_time() * 1000 : undef];\n return Mojo::Promise->new->resolve('OK');\n }\n else {\n my \$val = \$STORE->{\$conn->url}{\$key} || [];\n my \$expired = \$val->[1] && \$val->[1] < Mojo::Redis::Cache::_time() * 1000;\n delete \$STORE->{\$conn->url}{\$key} if \$expired;\n return Mojo::Promise->new->resolve(\$expired ? undef : \$val->[0]);\n }\n}\n\n'Mojo::Redis::Connection::Offline';\n" |
3 | 0 | defined $_[2] ? : | |
1 | 2 | if $expired | |
1 | 2 | $expired ? : | |
3 | 3 | if ($op eq 'SET') { } |