---
lua/run-bindtests | 4 ++-
lua/tests/010-load.lua | 19 -----------
lua/tests/010-load.lua.in | 19 +++++++++++
lua/tests/015-globals.lua | 26 ---------------
lua/tests/015-globals.lua.in | 26 +++++++++++++++
lua/tests/020-create.lua | 21 ------------
lua/tests/020-create.lua.in | 21 ++++++++++++
lua/tests/025-create-flags.lua | 21 ------------
lua/tests/025-create-flags.lua.in | 21 ++++++++++++
lua/tests/027-create-multiple.lua | 32 ------------------
lua/tests/027-create-multiple.lua.in | 32 ++++++++++++++++++
lua/tests/030-config.lua | 40 ----------------------
lua/tests/030-config.lua.in | 40 ++++++++++++++++++++++
lua/tests/050-lvcreate.lua | 46 -------------------------
lua/tests/050-lvcreate.lua.in | 46 +++++++++++++++++++++++++
lua/tests/060-readdir.lua | 61 ----------------------------------
lua/tests/060-readdir.lua.in | 61 ++++++++++++++++++++++++++++++++++
lua/tests/070-optargs.lua | 25 --------------
lua/tests/070-optargs.lua.in | 25 ++++++++++++++
lua/tests/400-events.lua | 53 -----------------------------
lua/tests/400-events.lua.in | 53 +++++++++++++++++++++++++++++
lua/tests/400-progress.lua | 44 ------------------------
lua/tests/400-progress.lua.in | 44 ++++++++++++++++++++++++
lua/tests/900-errors.lua | 37 ---------------------
lua/tests/900-errors.lua.in | 37 +++++++++++++++++++++
run.in | 1 +
26 files changed, 429 insertions(+), 426 deletions(-)
delete mode 100755 lua/tests/010-load.lua
create mode 100755 lua/tests/010-load.lua.in
delete mode 100755 lua/tests/015-globals.lua
create mode 100755 lua/tests/015-globals.lua.in
delete mode 100755 lua/tests/020-create.lua
create mode 100755 lua/tests/020-create.lua.in
delete mode 100755 lua/tests/025-create-flags.lua
create mode 100755 lua/tests/025-create-flags.lua.in
delete mode 100755 lua/tests/027-create-multiple.lua
create mode 100755 lua/tests/027-create-multiple.lua.in
delete mode 100755 lua/tests/030-config.lua
create mode 100755 lua/tests/030-config.lua.in
delete mode 100755 lua/tests/050-lvcreate.lua
create mode 100755 lua/tests/050-lvcreate.lua.in
delete mode 100755 lua/tests/060-readdir.lua
create mode 100755 lua/tests/060-readdir.lua.in
delete mode 100755 lua/tests/070-optargs.lua
create mode 100755 lua/tests/070-optargs.lua.in
delete mode 100755 lua/tests/400-events.lua
create mode 100755 lua/tests/400-events.lua.in
delete mode 100755 lua/tests/400-progress.lua
create mode 100755 lua/tests/400-progress.lua.in
delete mode 100755 lua/tests/900-errors.lua
create mode 100755 lua/tests/900-errors.lua.in
diff --git a/lua/run-bindtests b/lua/run-bindtests
index 170e45b..fd2e67f 100755
--- a/lua/run-bindtests
+++ b/lua/run-bindtests
@@ -16,5 +16,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-lua bindtests.lua > bindtests.tmp
+set -e
+
+$LUA $srcdir/bindtests.lua > bindtests.tmp
diff -u $srcdir/../bindtests bindtests.tmp
diff --git a/lua/tests/010-load.lua b/lua/tests/010-load.lua
deleted file mode 100755
index 4443e32..0000000
--- a/lua/tests/010-load.lua
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-require "guestfs"
diff --git a/lua/tests/010-load.lua.in b/lua/tests/010-load.lua.in
new file mode 100755
index 0000000..3e7dfcc
--- /dev/null
+++ b/lua/tests/010-load.lua.in
@@ -0,0 +1,19 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+require "guestfs"
diff --git a/lua/tests/015-globals.lua b/lua/tests/015-globals.lua
deleted file mode 100755
index 9733ef5..0000000
--- a/lua/tests/015-globals.lua
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-assert (G._COPYRIGHT)
-print ("_COPYRIGHT = ", G._COPYRIGHT)
-assert (G._DESCRIPTION)
-print ("_DESCRIPTION = ", G._DESCRIPTION)
-assert (G._VERSION)
-print ("_VERSION = ", G._VERSION)
diff --git a/lua/tests/015-globals.lua.in b/lua/tests/015-globals.lua.in
new file mode 100755
index 0000000..9d056c2
--- /dev/null
+++ b/lua/tests/015-globals.lua.in
@@ -0,0 +1,26 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+assert (G._COPYRIGHT)
+print ("_COPYRIGHT = ", G._COPYRIGHT)
+assert (G._DESCRIPTION)
+print ("_DESCRIPTION = ", G._DESCRIPTION)
+assert (G._VERSION)
+print ("_VERSION = ", G._VERSION)
diff --git a/lua/tests/020-create.lua b/lua/tests/020-create.lua
deleted file mode 100755
index b7e748d..0000000
--- a/lua/tests/020-create.lua
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
diff --git a/lua/tests/020-create.lua.in b/lua/tests/020-create.lua.in
new file mode 100755
index 0000000..7940177
--- /dev/null
+++ b/lua/tests/020-create.lua.in
@@ -0,0 +1,21 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
diff --git a/lua/tests/025-create-flags.lua b/lua/tests/025-create-flags.lua
deleted file mode 100755
index 08865c7..0000000
--- a/lua/tests/025-create-flags.lua
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create { environment = 0 }
diff --git a/lua/tests/025-create-flags.lua.in b/lua/tests/025-create-flags.lua.in
new file mode 100755
index 0000000..68d04eb
--- /dev/null
+++ b/lua/tests/025-create-flags.lua.in
@@ -0,0 +1,21 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create { environment = 0 }
diff --git a/lua/tests/027-create-multiple.lua b/lua/tests/027-create-multiple.lua
deleted file mode 100755
index a3f8c8c..0000000
--- a/lua/tests/027-create-multiple.lua
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g1 = G.create ()
-local g2 = G.create ()
-local g3 = G.create ()
-
--- Check that each handle is independent.
-g1:set_path ("1")
-g2:set_path ("2")
-g3:set_path ("3")
-
-assert (g1:get_path () == "1", "incorrect path in g1, expected
'1'")
-assert (g2:get_path () == "2", "incorrect path in g2, expected
'2'")
-assert (g3:get_path () == "3", "incorrect path in g3, expected
'3'")
diff --git a/lua/tests/027-create-multiple.lua.in b/lua/tests/027-create-multiple.lua.in
new file mode 100755
index 0000000..b11bdd9
--- /dev/null
+++ b/lua/tests/027-create-multiple.lua.in
@@ -0,0 +1,32 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g1 = G.create ()
+local g2 = G.create ()
+local g3 = G.create ()
+
+-- Check that each handle is independent.
+g1:set_path ("1")
+g2:set_path ("2")
+g3:set_path ("3")
+
+assert (g1:get_path () == "1", "incorrect path in g1, expected
'1'")
+assert (g2:get_path () == "2", "incorrect path in g2, expected
'2'")
+assert (g3:get_path () == "3", "incorrect path in g3, expected
'3'")
diff --git a/lua/tests/030-config.lua b/lua/tests/030-config.lua
deleted file mode 100755
index d70528c..0000000
--- a/lua/tests/030-config.lua
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-local verbose = g:get_verbose ()
-g:set_verbose (true)
-g:set_verbose (verbose)
-
-g:set_autosync (false)
-g:set_autosync (true)
-
-g:set_path (".")
-assert (g:get_path () == ".")
-
-g:add_drive ("/dev/null")
-
-local version = g:version ()
-for k,v in pairs (version) do
- print(k,v)
-end
-
-g:close ()
diff --git a/lua/tests/030-config.lua.in b/lua/tests/030-config.lua.in
new file mode 100755
index 0000000..7ff5b4f
--- /dev/null
+++ b/lua/tests/030-config.lua.in
@@ -0,0 +1,40 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+local verbose = g:get_verbose ()
+g:set_verbose (true)
+g:set_verbose (verbose)
+
+g:set_autosync (false)
+g:set_autosync (true)
+
+g:set_path (".")
+assert (g:get_path () == ".")
+
+g:add_drive ("/dev/null")
+
+local version = g:version ()
+for k,v in pairs (version) do
+ print(k,v)
+end
+
+g:close ()
diff --git a/lua/tests/050-lvcreate.lua b/lua/tests/050-lvcreate.lua
deleted file mode 100755
index 9fd5bec..0000000
--- a/lua/tests/050-lvcreate.lua
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-file = io.open ("test.img", "w")
-file:seek ("set", 500 * 1024 * 1024)
-file:write (' ')
-file:close ()
-
-g:add_drive ("test.img")
-
-g:launch ()
-
-g:pvcreate ("/dev/sda")
-g:vgcreate ("VG", {"/dev/sda"})
-g:lvcreate ("LV1", "VG", 200)
-g:lvcreate ("LV2", "VG", 200)
-
-local lvs = g:lvs ()
-assert (table.getn (lvs) == 2 and
- lvs[1] == "/dev/VG/LV1" and lvs[2] == "/dev/VG/LV2",
- "g:lvs returned incorrect result")
-
-g:shutdown ()
-
-g:close ()
-
-os.remove ("test.img")
diff --git a/lua/tests/050-lvcreate.lua.in b/lua/tests/050-lvcreate.lua.in
new file mode 100755
index 0000000..8cc9541
--- /dev/null
+++ b/lua/tests/050-lvcreate.lua.in
@@ -0,0 +1,46 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+file = io.open ("test.img", "w")
+file:seek ("set", 500 * 1024 * 1024)
+file:write (' ')
+file:close ()
+
+g:add_drive ("test.img")
+
+g:launch ()
+
+g:pvcreate ("/dev/sda")
+g:vgcreate ("VG", {"/dev/sda"})
+g:lvcreate ("LV1", "VG", 200)
+g:lvcreate ("LV2", "VG", 200)
+
+local lvs = g:lvs ()
+assert (table.getn (lvs) == 2 and
+ lvs[1] == "/dev/VG/LV1" and lvs[2] == "/dev/VG/LV2",
+ "g:lvs returned incorrect result")
+
+g:shutdown ()
+
+g:close ()
+
+os.remove ("test.img")
diff --git a/lua/tests/060-readdir.lua b/lua/tests/060-readdir.lua
deleted file mode 100755
index b148137..0000000
--- a/lua/tests/060-readdir.lua
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-file = io.open ("test.img", "w")
-file:seek ("set", 10 * 1024 * 1024)
-file:write (' ')
-file:close ()
-
-g:add_drive ("test.img")
-
-g:launch ()
-
-g:part_disk ("/dev/sda", "mbr")
-g:mkfs ("ext2", "/dev/sda1")
-g:mount ("/dev/sda1", "/")
-g:mkdir ("/p")
-g:touch ("/q")
-
-local dirs = g:readdir ("/")
-
-function print_dirs(dirs)
- for i,dentry in ipairs (dirs) do
- for k,v in pairs (dentry) do
- print(i, k, v)
- end
- end
-end
-
-print_dirs (dirs)
-table.sort (dirs, function (a,b) return a["name"] < b["name"]
end)
-print_dirs (dirs)
-
--- Slots 1, 2, 3 contain "." and ".." and "lost+found"
respectively.
-
-assert (dirs[4]["name"] == "p", "incorrect name in slot
4")
-assert (dirs[5]["name"] == "q", "incorrect name in slot
5")
-
-g:shutdown ()
-
-g:close ()
-
-os.remove ("test.img")
diff --git a/lua/tests/060-readdir.lua.in b/lua/tests/060-readdir.lua.in
new file mode 100755
index 0000000..fed485d
--- /dev/null
+++ b/lua/tests/060-readdir.lua.in
@@ -0,0 +1,61 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+file = io.open ("test.img", "w")
+file:seek ("set", 10 * 1024 * 1024)
+file:write (' ')
+file:close ()
+
+g:add_drive ("test.img")
+
+g:launch ()
+
+g:part_disk ("/dev/sda", "mbr")
+g:mkfs ("ext2", "/dev/sda1")
+g:mount ("/dev/sda1", "/")
+g:mkdir ("/p")
+g:touch ("/q")
+
+local dirs = g:readdir ("/")
+
+function print_dirs(dirs)
+ for i,dentry in ipairs (dirs) do
+ for k,v in pairs (dentry) do
+ print(i, k, v)
+ end
+ end
+end
+
+print_dirs (dirs)
+table.sort (dirs, function (a,b) return a["name"] < b["name"]
end)
+print_dirs (dirs)
+
+-- Slots 1, 2, 3 contain "." and ".." and "lost+found"
respectively.
+
+assert (dirs[4]["name"] == "p", "incorrect name in slot
4")
+assert (dirs[5]["name"] == "q", "incorrect name in slot
5")
+
+g:shutdown ()
+
+g:close ()
+
+os.remove ("test.img")
diff --git a/lua/tests/070-optargs.lua b/lua/tests/070-optargs.lua
deleted file mode 100755
index 00559a1..0000000
--- a/lua/tests/070-optargs.lua
+++ /dev/null
@@ -1,25 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-g:add_drive ("/dev/null")
-g:add_drive ("/dev/null", { readonly = true })
-g:add_drive ("/dev/null", { format = "raw", readonly = false })
diff --git a/lua/tests/070-optargs.lua.in b/lua/tests/070-optargs.lua.in
new file mode 100755
index 0000000..543e517
--- /dev/null
+++ b/lua/tests/070-optargs.lua.in
@@ -0,0 +1,25 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+g:add_drive ("/dev/null")
+g:add_drive ("/dev/null", { readonly = true })
+g:add_drive ("/dev/null", { format = "raw", readonly = false })
diff --git a/lua/tests/400-events.lua b/lua/tests/400-events.lua
deleted file mode 100755
index c17bdc2..0000000
--- a/lua/tests/400-events.lua
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-for i, v in ipairs (G.event_all) do
- print (i, v)
-end
-
-local g = G.create ()
-
-function log_callback (g, event, eh, flags, buf, array)
- io.write (string.format ("lua event logged: event=%s eh=%d
buf='%s'\n",
- event, eh, buf))
-end
-
-close_invoked = 0
-function close_callback (g, event, eh, flags, buf, array)
- close_invoked = close_invoked+1
- log_callback (g, event, eh, flags, buf, array)
-end
-
--- Register an event callback for all log messages.
-g:set_event_callback (log_callback, { "appliance", "library",
"trace" })
-
--- Register an event callback for the close event.
-g:set_event_callback (close_callback, "close")
-
--- Make sure we see some messages.
-g:set_trace (true)
-g:set_verbose (true)
-
--- Do some stuff.
-g:add_drive_ro ("/dev/null")
-
--- Close the handle. The close callback should be invoked.
-g:close ()
-assert (close_invoked == 1, "close callback was not invoked")
diff --git a/lua/tests/400-events.lua.in b/lua/tests/400-events.lua.in
new file mode 100755
index 0000000..8693f24
--- /dev/null
+++ b/lua/tests/400-events.lua.in
@@ -0,0 +1,53 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+for i, v in ipairs (G.event_all) do
+ print (i, v)
+end
+
+local g = G.create ()
+
+function log_callback (g, event, eh, flags, buf, array)
+ io.write (string.format ("lua event logged: event=%s eh=%d
buf='%s'\n",
+ event, eh, buf))
+end
+
+close_invoked = 0
+function close_callback (g, event, eh, flags, buf, array)
+ close_invoked = close_invoked+1
+ log_callback (g, event, eh, flags, buf, array)
+end
+
+-- Register an event callback for all log messages.
+g:set_event_callback (log_callback, { "appliance", "library",
"trace" })
+
+-- Register an event callback for the close event.
+g:set_event_callback (close_callback, "close")
+
+-- Make sure we see some messages.
+g:set_trace (true)
+g:set_verbose (true)
+
+-- Do some stuff.
+g:add_drive_ro ("/dev/null")
+
+-- Close the handle. The close callback should be invoked.
+g:close ()
+assert (close_invoked == 1, "close callback was not invoked")
diff --git a/lua/tests/400-progress.lua b/lua/tests/400-progress.lua
deleted file mode 100755
index 293a463..0000000
--- a/lua/tests/400-progress.lua
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-g:add_drive ("/dev/null")
-g:launch ()
-
-calls = 0
-function cb ()
- calls = calls+1
-end
-
-eh = g:set_event_callback (cb, "progress")
-assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
-assert (calls > 0, "progress callback was not invoked")
-
-calls = 0
-g:delete_event_callback (eh)
-assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
-assert (calls == 0, "progress callback was invoked when deleted")
-
-g:set_event_callback (cb, "progress")
-assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
-assert (calls > 0, "progress callback was not invoked")
-
-g:close ()
diff --git a/lua/tests/400-progress.lua.in b/lua/tests/400-progress.lua.in
new file mode 100755
index 0000000..1f5031e
--- /dev/null
+++ b/lua/tests/400-progress.lua.in
@@ -0,0 +1,44 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+g:add_drive ("/dev/null")
+g:launch ()
+
+calls = 0
+function cb ()
+ calls = calls+1
+end
+
+eh = g:set_event_callback (cb, "progress")
+assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
+assert (calls > 0, "progress callback was not invoked")
+
+calls = 0
+g:delete_event_callback (eh)
+assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
+assert (calls == 0, "progress callback was invoked when deleted")
+
+g:set_event_callback (cb, "progress")
+assert (g:debug ("progress", {"5"}) == "ok", "debug
progress command failed")
+assert (calls > 0, "progress callback was not invoked")
+
+g:close ()
diff --git a/lua/tests/900-errors.lua b/lua/tests/900-errors.lua
deleted file mode 100755
index c560f7f..0000000
--- a/lua/tests/900-errors.lua
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/usr/bin/lua
--- libguestfs Lua bindings -*- lua -*-
--- Copyright (C) 2012 Red Hat Inc.
---
--- 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 2 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, write to the Free Software
--- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-local G = require "guestfs"
-
-local g = G.create ()
-
-code, err = pcall (function (fn) g:add_drive (fn) end, "/NOTSUCHFILE")
-assert (not code)
-
--- The default __tostring function will convert the error to either:
---
--- "%s", msg
--- or:
--- "%s: %s", msg, strerror (err)
---
--- We are expecting the second case here, but since the libguestfs
--- code calls perrorf, the string version of ENOENT is already
--- included in 'msg' and so appears twice here.
-local str = tostring (err)
-assert (str == "/NOTSUCHFILE: No such file or directory: No such file or
directory",
- string.format ("unexpected error string: %s", str))
diff --git a/lua/tests/900-errors.lua.in b/lua/tests/900-errors.lua.in
new file mode 100755
index 0000000..dbf8462
--- /dev/null
+++ b/lua/tests/900-errors.lua.in
@@ -0,0 +1,37 @@
+#!/usr/bin/env @LUA@
+-- libguestfs Lua bindings -*- lua -*-
+-- Copyright (C) 2012 Red Hat Inc.
+--
+-- 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 2 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, write to the Free Software
+-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+local G = require "guestfs"
+
+local g = G.create ()
+
+code, err = pcall (function (fn) g:add_drive (fn) end, "/NOTSUCHFILE")
+assert (not code)
+
+-- The default __tostring function will convert the error to either:
+--
+-- "%s", msg
+-- or:
+-- "%s: %s", msg, strerror (err)
+--
+-- We are expecting the second case here, but since the libguestfs
+-- code calls perrorf, the string version of ENOENT is already
+-- included in 'msg' and so appears twice here.
+local str = tostring (err)
+assert (str == "/NOTSUCHFILE: No such file or directory: No such file or
directory",
+ string.format ("unexpected error string: %s", str))
diff --git a/run.in b/run.in
index ec0b018..9d4a6b1 100755
--- a/run.in
+++ b/run.in
@@ -108,6 +108,7 @@ fi
export CLASSPATH
# For Lua.
+export LUA=@LUA@
if [ -z "$LUA_CPATH" ]; then
LUA_CPATH="$b/lua/?.so"
else
--
1.7.10.4