diff options
| author | uid20006 <uid20006> | 2005-08-16 18:24:28 +0000 |
|---|---|---|
| committer | uid20006 <uid20006> | 2005-08-16 18:24:28 +0000 |
| commit | 87b373b3d80e234c482e6276a20be2d329d4b795 (patch) | |
| tree | 33134667befda49d88bfd0f013d609e07941cad0 | |
| parent | e7ced7f8af5f3316cf4508478a13dc51cff28773 (diff) | |
| download | luafilesystem-87b373b3d80e234c482e6276a20be2d329d4b795.tar.gz luafilesystem-87b373b3d80e234c482e6276a20be2d329d4b795.tar.bz2 luafilesystem-87b373b3d80e234c482e6276a20be2d329d4b795.zip | |
touch does not work with directories in windows.
| -rw-r--r-- | tests/test.lua | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/tests/test.lua b/tests/test.lua index a152bbb..3522bee 100644 --- a/tests/test.lua +++ b/tests/test.lua | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #!/usr/local/bin/lua | 1 | #!/usr/local/bin/lua50 |
| 2 | 2 | ||
| 3 | local tmp = "/tmp" | 3 | local tmp = "/tmp" |
| 4 | local sep = "/" | 4 | local sep = "/" |
| @@ -9,7 +9,7 @@ require"lfs" | |||
| 9 | function attrdir (path) | 9 | function attrdir (path) |
| 10 | for file in lfs.dir(path) do | 10 | for file in lfs.dir(path) do |
| 11 | if file ~= "." and file ~= ".." then | 11 | if file ~= "." and file ~= ".." then |
| 12 | local f = path..'/'..file | 12 | local f = path..sep..file |
| 13 | print ("\t=> "..f.." <=") | 13 | print ("\t=> "..f.." <=") |
| 14 | local attr = lfs.attributes (f) | 14 | local attr = lfs.attributes (f) |
| 15 | assert (type(attr) == "table") | 15 | assert (type(attr) == "table") |
| @@ -31,34 +31,45 @@ assert (lfs.chdir (upper), "could not change to upper directory") | |||
| 31 | assert (lfs.chdir (reldir), "could not change back to current directory") | 31 | assert (lfs.chdir (reldir), "could not change back to current directory") |
| 32 | assert (lfs.currentdir() == current, "error trying to change directories") | 32 | assert (lfs.currentdir() == current, "error trying to change directories") |
| 33 | assert (lfs.chdir ("this couldn't be an actual directory") == nil, "could change to a non-existent directory") | 33 | assert (lfs.chdir ("this couldn't be an actual directory") == nil, "could change to a non-existent directory") |
| 34 | |||
| 34 | -- Changing creating and removing directories | 35 | -- Changing creating and removing directories |
| 35 | local tmpdir = tmp.."/lfs_tmp_dir" | 36 | local tmpdir = tmp..sep.."lfs_tmp_dir" |
| 37 | local tmpfile = tmpdir..sep.."tmp_file" | ||
| 36 | assert (lfs.mkdir (tmpdir), "could not make a new directory") | 38 | assert (lfs.mkdir (tmpdir), "could not make a new directory") |
| 37 | local attrib, errmsg = lfs.attributes (tmpdir) | 39 | local attrib, errmsg = lfs.attributes (tmpdir) |
| 38 | if not attrib then | 40 | if not attrib then |
| 39 | error ("could not get attributes of file `"..tmpdir.."':\n"..errmsg) | 41 | error ("could not get attributes of file `"..tmpdir.."':\n"..errmsg) |
| 40 | end | 42 | end |
| 43 | local f = io.open(tmpfile, "w") | ||
| 44 | f:close() | ||
| 45 | |||
| 41 | -- Change access time | 46 | -- Change access time |
| 42 | assert (lfs.touch (tmpdir, 11)) | 47 | assert (lfs.touch (tmpfile, 11)) |
| 43 | local new_att = assert (lfs.attributes (tmpdir)) | 48 | local new_att = assert (lfs.attributes (tmpfile)) |
| 44 | assert (new_att.access == 11, "could not set access time") | 49 | assert (new_att.access == 11, "could not set access time") |
| 45 | assert (new_att.modification == 11, "could not set modification time") | 50 | assert (new_att.modification == 11, "could not set modification time") |
| 51 | |||
| 46 | -- Change access and modification time | 52 | -- Change access and modification time |
| 47 | assert (lfs.touch (tmpdir, 33, 22)) | 53 | assert (lfs.touch (tmpfile, 33, 22)) |
| 48 | local new_att = assert (lfs.attributes (tmpdir)) | 54 | local new_att = assert (lfs.attributes (tmpfile)) |
| 49 | assert (new_att.access == 33, "could not set access time") | 55 | assert (new_att.access == 33, "could not set access time") |
| 50 | assert (new_att.modification == 22, "could not set modification time") | 56 | assert (new_att.modification == 22, "could not set modification time") |
| 57 | |||
| 51 | -- Restore access time to current value | 58 | -- Restore access time to current value |
| 52 | assert (lfs.touch (tmpdir)) | 59 | assert (lfs.touch (tmpfile)) |
| 53 | new_att = assert (lfs.attributes (tmpdir)) | 60 | new_att = assert (lfs.attributes (tmpfile)) |
| 54 | assert (new_att.access == attrib.access) | 61 | assert (new_att.access == attrib.access) |
| 55 | assert (new_att.modification == attrib.modification) | 62 | assert (new_att.modification == attrib.modification) |
| 56 | -- Remove new directory | 63 | |
| 64 | -- Remove new file and directory | ||
| 65 | assert (os.remove (tmpfile), "could not remove new file") | ||
| 57 | assert (lfs.rmdir (tmpdir), "could not remove new directory") | 66 | assert (lfs.rmdir (tmpdir), "could not remove new directory") |
| 58 | assert (lfs.mkdir (tmpdir.."/lfs_tmp_dir") == false, "could create a directory inside a non-existent one") | 67 | assert (lfs.mkdir (tmpdir..sep.."lfs_tmp_dir") == false, "could create a directory inside a non-existent one") |
| 68 | |||
| 59 | -- Trying to get attributes of a non-existent file | 69 | -- Trying to get attributes of a non-existent file |
| 60 | assert (lfs.attributes ("this couldn't be an actual file") == nil, "could get attributes of a non-existent file") | 70 | assert (lfs.attributes ("this couldn't be an actual file") == nil, "could get attributes of a non-existent file") |
| 61 | assert (type(lfs.attributes (upper)) == "table", "couldn't get attributes of upper directory") | 71 | assert (type(lfs.attributes (upper)) == "table", "couldn't get attributes of upper directory") |
| 72 | |||
| 62 | -- Stressing directory iterator | 73 | -- Stressing directory iterator |
| 63 | count = 0 | 74 | count = 0 |
| 64 | for i = 1, 4000 do | 75 | for i = 1, 4000 do |
