diff options
author | Steve Bennett <steveb@workware.net.au> | 2010-03-03 15:54:53 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2010-10-15 11:02:48 +1000 |
commit | daf20891972d1698d2ee74d5ad75349661a8c9ba (patch) | |
tree | d28e9889b8dcabb80bbf4f9895d718bb44a6e6f2 /tests/filedir.test | |
parent | 6a9fcd338b28fe76cb980867632068dd2bec533c (diff) | |
download | jimtcl-daf20891972d1698d2ee74d5ad75349661a8c9ba.zip jimtcl-daf20891972d1698d2ee74d5ad75349661a8c9ba.tar.gz jimtcl-daf20891972d1698d2ee74d5ad75349661a8c9ba.tar.bz2 |
Improvements to 'file mkdir', 'file delete'
file mkdir will now create intermediate directories
file delete can now also delete empty directories
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'tests/filedir.test')
-rw-r--r-- | tests/filedir.test | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/filedir.test b/tests/filedir.test new file mode 100644 index 0000000..cb1f3a7 --- /dev/null +++ b/tests/filedir.test @@ -0,0 +1,65 @@ +source testing.tcl + +catch { + exec rm -rf tmp + exec mkdir tmp + exec touch tmp/file + exec mkdir tmp/dir +} + +test mkdir-1.1 "Simple dir" { + file mkdir tmp/abc + file isdir tmp/abc +} {1} + +test mkdir-1.2 "Create missing parents" { + file mkdir tmp/def/ghi/jkl + file isdir tmp/def/ghi/jkl +} {1} + +test mkdir-1.3 "Existing dir" { + file mkdir tmp/dir + file isdir tmp/dir +} {1} + +test mkdir-1.4 "Child of existing dir" { + file mkdir tmp/dir/child + file isdir tmp/dir/child +} {1} + +test mkdir-1.5 "Create dir over existing file" { + list [catch {file mkdir tmp/file} msg] [file isdir tmp/file] +} {1 0} + +test mkdir-1.6 "Create dir below existing file" { + list [catch {file mkdir tmp/file/dir} msg] [file isdir tmp/file/dir] +} {1 0} + +test mkdir-1.8 "Multiple dirs" { + file mkdir tmp/1 tmp/2 tmp/3 + list [file isdir tmp/1] [file isdir tmp/2] [file isdir tmp/3] +} {1 1 1} + +test mkdir-1.7 "Stop on failure" { + catch {file mkdir tmp/4 tmp/file tmp/5} + list [file isdir tmp/4] [file isdir tmp/5] +} {1 0} + +test rmdir-2.0 "Remove existing dir" { + file delete tmp/1 + file isdir tmp/1 +} {0} + +test rmdir-2.1 "Remove missing dir" { + file delete tmp/1 +} {} + +test rmdir-2.2 "Remove non-empty dir" { + catch {file delete tmp/def} +} {1} + +catch { + exec rm -rf tmp +} + +testreport |