diff options
author | Lars Wirzenius <liw@liw.fi> | 2012-10-13 10:10:49 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2012-10-13 10:10:49 +0100 |
commit | 1a3631c12fcd0d70141c2c0172ff14c056567a75 (patch) | |
tree | 036819e4f57acb19df3590750eb086e132c57a7d | |
parent | 6bc2a04374e008ebae51aa0d9f09c2fa9d98af13 (diff) | |
download | cachedir-1a3631c12fcd0d70141c2c0172ff14c056567a75.tar.gz |
Add iscache subcommand
-rwxr-xr-x | cachedir | 17 | ||||
-rw-r--r-- | tests/find.stdout | 1 | ||||
-rwxr-xr-x | tests/iscache-not-cache.script | 20 | ||||
-rwxr-xr-x | tests/iscache.script | 21 |
4 files changed, 59 insertions, 0 deletions
@@ -17,6 +17,7 @@ import cliapp import os +import sys __version__ = '0.0' @@ -43,6 +44,22 @@ class Cachedir(cliapp.Application): for dirname in args: os.remove(self._join(dirname)) + def cmd_iscache(self, args): + '''Are all named directories tagged? + + There is no output, but exit code is 0 if all named directories + are tagged as cache directories. + + ''' + + errors = False + for dirname in args: + if not os.path.exists(self._join(dirname)): + sys.stderr.write('%s is not a cache directory\n' % dirname) + errors = True + if errors: + sys.exit(1) + def cmd_find(self, args): '''Find cache directories under the given directories.''' diff --git a/tests/find.stdout b/tests/find.stdout new file mode 100644 index 0000000..8a3a80d --- /dev/null +++ b/tests/find.stdout @@ -0,0 +1 @@ +TMP/foo/bar/cache diff --git a/tests/iscache-not-cache.script b/tests/iscache-not-cache.script new file mode 100755 index 0000000..c4e0e62 --- /dev/null +++ b/tests/iscache-not-cache.script @@ -0,0 +1,20 @@ +#!/bin/sh +# Copyright 2012 Lars Wirzenius +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +set -eu + +"$SRCDIR/cachedir" iscache "$DATADIR" + diff --git a/tests/iscache.script b/tests/iscache.script new file mode 100755 index 0000000..e7384ac --- /dev/null +++ b/tests/iscache.script @@ -0,0 +1,21 @@ +#!/bin/sh +# Copyright 2012 Lars Wirzenius +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +set -eu + +"$SRCDIR/cachedir" tag "$DATADIR" +"$SRCDIR/cachedir" iscache "$DATADIR" + |