diff options
Diffstat (limited to 'lua/tests')
-rwxr-xr-x | lua/tests/010-load.lua | 19 | ||||
-rwxr-xr-x | lua/tests/020-create.lua | 21 | ||||
-rwxr-xr-x | lua/tests/025-create-flags.lua | 21 | ||||
-rwxr-xr-x | lua/tests/030-config.lua | 42 | ||||
-rwxr-xr-x | lua/tests/050-lvcreate.lua | 47 | ||||
-rwxr-xr-x | lua/tests/060-readdir.lua | 65 | ||||
-rwxr-xr-x | lua/tests/070-optargs.lua | 25 |
7 files changed, 240 insertions, 0 deletions
diff --git a/lua/tests/010-load.lua b/lua/tests/010-load.lua new file mode 100755 index 00000000..4443e322 --- /dev/null +++ b/lua/tests/010-load.lua @@ -0,0 +1,19 @@ +#!/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/020-create.lua b/lua/tests/020-create.lua new file mode 100755 index 00000000..527aa0bc --- /dev/null +++ b/lua/tests/020-create.lua @@ -0,0 +1,21 @@ +#!/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" + +local g = Guestfs.create () diff --git a/lua/tests/025-create-flags.lua b/lua/tests/025-create-flags.lua new file mode 100755 index 00000000..881b1834 --- /dev/null +++ b/lua/tests/025-create-flags.lua @@ -0,0 +1,21 @@ +#!/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" + +local g = Guestfs.create { environment = 0 } diff --git a/lua/tests/030-config.lua b/lua/tests/030-config.lua new file mode 100755 index 00000000..a1325584 --- /dev/null +++ b/lua/tests/030-config.lua @@ -0,0 +1,42 @@ +#!/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" + +local g = Guestfs.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 (".") +if g:get_path () ~= "." then + error () +end + +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 new file mode 100755 index 00000000..a9d9920e --- /dev/null +++ b/lua/tests/050-lvcreate.lua @@ -0,0 +1,47 @@ +#!/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" + +local g = Guestfs.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 () +if table.getn (lvs) ~= 2 or lvs[1] ~= "/dev/VG/LV1" or lvs[2] ~= "/dev/VG/LV2" +then + error ("g:lvs returned incorrect result") +end + +g:shutdown () + +g:close () + +os.remove ("test.img") diff --git a/lua/tests/060-readdir.lua b/lua/tests/060-readdir.lua new file mode 100755 index 00000000..dd060840 --- /dev/null +++ b/lua/tests/060-readdir.lua @@ -0,0 +1,65 @@ +#!/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" + +local g = Guestfs.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. + +if (dirs[4]["name"] ~= "p") then + error "incorrect name in slot 4" +end +if (dirs[5]["name"] ~= "q") then + error "incorrect name in slot 5" +end + +g:shutdown () + +g:close () + +os.remove ("test.img") diff --git a/lua/tests/070-optargs.lua b/lua/tests/070-optargs.lua new file mode 100755 index 00000000..fe0ec753 --- /dev/null +++ b/lua/tests/070-optargs.lua @@ -0,0 +1,25 @@ +#!/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" + +local g = Guestfs.create () + +g:add_drive ("/dev/null") +g:add_drive ("/dev/null", { readonly = true }) +g:add_drive ("/dev/null", { format = "raw", readonly = false }) |