Richard W.M. Jones
2016-Feb-12 14:22 UTC
[Libguestfs] [PATCH] tests: Make '080' be an official test of the guestfs_version API.
Useful because it tests returning a single structure. --- docs/guestfs-hacking.pod | 1 + ocaml/Makefile.am | 2 ++ ocaml/t/guestfs_080_version.ml | 27 +++++++++++++++++++++++++++ perl/t/080-version.t | 36 ++++++++++++++++++++++++++++++++++++ 4 files changed, 66 insertions(+) create mode 100644 ocaml/t/guestfs_080_version.ml create mode 100644 perl/t/080-version.t diff --git a/docs/guestfs-hacking.pod b/docs/guestfs-hacking.pod index ae667c9..ecd10bf 100644 --- a/docs/guestfs-hacking.pod +++ b/docs/guestfs-hacking.pod @@ -201,6 +201,7 @@ This is the numbering scheme used by the tests: 060 explicit close 065 implicit close (in GC'd languages) 070 optargs + 080 version - 100 launch, create partitions and LVs and filesystems diff --git a/ocaml/Makefile.am b/ocaml/Makefile.am index b79bcad..bc1d130 100644 --- a/ocaml/Makefile.am +++ b/ocaml/Makefile.am @@ -116,6 +116,7 @@ test_progs_bc = \ t/guestfs_060_explicit_close.bc \ t/guestfs_065_implicit_close.bc \ t/guestfs_070_optargs.bc \ + t/guestfs_080_version.bc \ t/guestfs_410_close_event.bc \ t/guestfs_420_log_messages.bc @@ -128,6 +129,7 @@ test_progs_opt = \ t/guestfs_060_explicit_close.opt \ t/guestfs_065_implicit_close.opt \ t/guestfs_070_optargs.opt \ + t/guestfs_080_version.opt \ t/guestfs_410_close_event.opt \ t/guestfs_420_log_messages.opt diff --git a/ocaml/t/guestfs_080_version.ml b/ocaml/t/guestfs_080_version.ml new file mode 100644 index 0000000..ff10485 --- /dev/null +++ b/ocaml/t/guestfs_080_version.ml @@ -0,0 +1,27 @@ +(* libguestfs OCaml tests + * Copyright (C) 2009-2016 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. + *) + +let () + let g = new Guestfs.guestfs () in + let version = g#version () in + assert (version.Guestfs.major = 1_L) + (* In other bindings, we may do additional tests on dynamic types + * here, but those are not necessary in OCaml. + *) + +let () = Gc.compact () diff --git a/perl/t/080-version.t b/perl/t/080-version.t new file mode 100644 index 0000000..6a80fe9 --- /dev/null +++ b/perl/t/080-version.t @@ -0,0 +1,36 @@ +# libguestfs Perl bindings -*- perl -*- +# Copyright (C) 2016 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. + +use strict; +use warnings; +use Test::More tests => 5; + +use Sys::Guestfs; + +my $g = Sys::Guestfs->new (); +ok ($g); + +my %version = $g->version; +ok (1); + +is ($version{major}, 1); +like ($version{minor}, qr/^\d+$/); +like ($version{release}, qr/^\d+$/); + +# XXX We could try to check that $version{extra} is a string, but perl +# doesn't have a distinction between string and int, and in any case +# it's possible (although unusual) for $version{extra} to be an int. -- 2.5.0
Pino Toscano
2016-Feb-12 14:30 UTC
Re: [Libguestfs] [PATCH] tests: Make '080' be an official test of the guestfs_version API.
On Friday 12 February 2016 14:22:37 Richard W.M. Jones wrote:> Useful because it tests returning a single structure. > --- > docs/guestfs-hacking.pod | 1 + > ocaml/Makefile.am | 2 ++ > ocaml/t/guestfs_080_version.ml | 27 +++++++++++++++++++++++++++ > perl/t/080-version.t | 36 ++++++++++++++++++++++++++++++++++++ > 4 files changed, 66 insertions(+) > create mode 100644 ocaml/t/guestfs_080_version.ml > create mode 100644 perl/t/080-version.tMakes sense, can you please rename the newly added php/extension/tests/guestfs_090_version.phpt to 080 together with it? Thanks, -- Pino Toscano
Possibly Parallel Threads
- [PATCH 4/4] ocaml: The implicit close patch only works on native code.
- [PATCH 0/4] ocaml: Allow Guestfs.t handle to be garbage collected.
- [PATCH] php: restructure and expand tests
- [PATCH libguestfs 4/4] ocaml/t/guestfs_065_implicit_close.ml: Skip this test on OCaml 5
- [PATCH libguestfs 4/4] ocaml/t/guestfs_065_implicit_close.ml: Skip this test on OCaml 5