From 4c1035b0df886ff63b8e9c8bacf0642dd236cb86 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Wed, 23 May 2012 13:46:25 +0200 Subject: Make summain handle a symlink to root --- summain | 2 ++ tests/symlink-root.script | 9 +++++++++ tests/symlink-root.stdout | 7 +++++++ 3 files changed, 18 insertions(+) create mode 100755 tests/symlink-root.script create mode 100644 tests/symlink-root.stdout diff --git a/summain b/summain index 278eca8..fd0e077 100755 --- a/summain +++ b/summain @@ -128,6 +128,8 @@ class Summain(cliapp.Application): dirnames.sort() for filename in sorted(filenames): yield os.path.join(dirname, filename) + elif os.path.islink(root): + yield root elif not os.path.exists(root): raise cliapp.AppException('Does not exist: %s' % root) else: diff --git a/tests/symlink-root.script b/tests/symlink-root.script new file mode 100755 index 0000000..c82f5c8 --- /dev/null +++ b/tests/symlink-root.script @@ -0,0 +1,9 @@ +#!/bin/sh + +set -e + +mkdir "$DATADIR/dir" +ln -s dir "$DATADIR/symlink" +./summain --exclude=mtime --exclude=uid --exclude=username \ + --exclude=gid --exclude=group --exclude=mode "$DATADIR/symlink" | +sed 's,^Name: /.*/,Name: ,' diff --git a/tests/symlink-root.stdout b/tests/symlink-root.stdout new file mode 100644 index 0000000..8288ba8 --- /dev/null +++ b/tests/symlink-root.stdout @@ -0,0 +1,7 @@ +Name: symlink +Ino: 1 +Dev: 1 +Nlink: 1 +Size: 3 +Target: dir + -- cgit v1.2.1