summaryrefslogtreecommitdiffstats
path: root/test/t/json-cache.t
blob: a9d8918cedc7f09c9cd6f28a026ad28ef5c56d34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use Test::More;

use strict;

SKIP: {
    eval "use JSON";
    skip "JSON isn't available" if ($@);
    use_ok('Devscripts::JSONCache');

    my %c;

    ok(tie(%c, 'Devscripts::JSONCache', 'test.json'), 'No file');
    $c{a} = 1;
    untie %c;
    ok(-r 'test.json', 'Cache created');
    ok(tie(%c, 'Devscripts::JSONCache', 'test.json'), 'Reuse file');
    ok($c{a} == 1, 'Value saved');
    untie %c;
    unlink 'test.json';

    my %c2;
    eval { tie(%c2, 'Devscripts::JSONCache', 'zzz/test.json') };
    ok($@, "Build refused if write isn't possible");
}
done_testing();