This patch adds a few simple behavior tests for VNC.
Signed-off-by: Cleber Rosa <crosa@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
---
tests/acceptance/vnc.py | 60 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 60 insertions(+)
create mode 100644 tests/acceptance/vnc.py
diff --git a/tests/acceptance/vnc.py b/tests/acceptance/vnc.py
new file mode 100644
index 0000000000..b1ef9d71b1
--- /dev/null
+++ b/tests/acceptance/vnc.py
@@ -0,0 +1,60 @@
+# Simple functional tests for VNC functionality
+#
+# Copyright (c) 2018 Red Hat, Inc.
+#
+# Author:
+# Cleber Rosa <crosa@redhat.com>
+#
+# This work is licensed under the terms of the GNU GPL, version 2 or
+# later. See the COPYING file in the top-level directory.
+
+from avocado_qemu import Test
+
+
+class Vnc(Test):
+ """
+ :avocado: enable
+ :avocado: tags=vnc,quick
+ """
+ def test_no_vnc(self):
+ self.vm.add_args('-nodefaults', '-S')
+ self.vm.launch()
+ self.assertFalse(self.vm.qmp('query-vnc')['return']['enabled'])
+
+ def test_no_vnc_change_password(self):
+ self.vm.add_args('-nodefaults', '-S')
+ self.vm.launch()
+ self.assertFalse(self.vm.qmp('query-vnc')['return']['enabled'])
+ set_password_response = self.vm.qmp('change',
+ device='vnc',
+ target='password',
+ arg='new_password')
+ self.assertIn('error', set_password_response)
+ self.assertEqual(set_password_response['error']['class'],
+ 'GenericError')
+ self.assertEqual(set_password_response['error']['desc'],
+ 'Could not set password')
+
+ def test_vnc_change_password_requires_a_password(self):
+ self.vm.add_args('-nodefaults', '-S', '-vnc', ':0')
+ self.vm.launch()
+ self.assertTrue(self.vm.qmp('query-vnc')['return']['enabled'])
+ set_password_response = self.vm.qmp('change',
+ device='vnc',
+ target='password',
+ arg='new_password')
+ self.assertIn('error', set_password_response)
+ self.assertEqual(set_password_response['error']['class'],
+ 'GenericError')
+ self.assertEqual(set_password_response['error']['desc'],
+ 'Could not set password')
+
+ def test_vnc_change_password(self):
+ self.vm.add_args('-nodefaults', '-S', '-vnc', ':0,password')
+ self.vm.launch()
+ self.assertTrue(self.vm.qmp('query-vnc')['return']['enabled'])
+ set_password_response = self.vm.qmp('change',
+ device='vnc',
+ target='password',
+ arg='new_password')
+ self.assertEqual(set_password_response['return'], {})
--
2.17.0
On 05/30/2018 03:41 PM, Cleber Rosa wrote:
> This patch adds a few simple behavior tests for VNC.
>
> Signed-off-by: Cleber Rosa <crosa@redhat.com>
> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> tests/acceptance/vnc.py | 60 +++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 60 insertions(+)
> create mode 100644 tests/acceptance/vnc.py
>
> diff --git a/tests/acceptance/vnc.py b/tests/acceptance/vnc.py
> new file mode 100644
> index 0000000000..b1ef9d71b1
> --- /dev/null
> +++ b/tests/acceptance/vnc.py
> @@ -0,0 +1,60 @@
> +# Simple functional tests for VNC functionality
> +#
> +# Copyright (c) 2018 Red Hat, Inc.
> +#
> +# Author:
> +# Cleber Rosa <crosa@redhat.com>
> +#
> +# This work is licensed under the terms of the GNU GPL, version 2 or
> +# later. See the COPYING file in the top-level directory.
> +
> +from avocado_qemu import Test
> +
> +
> +class Vnc(Test):
> + """
> + :avocado: enable
> + :avocado: tags=vnc,quick
> + """
> + def test_no_vnc(self):
> + self.vm.add_args('-nodefaults', '-S')
> + self.vm.launch()
> + self.assertFalse(self.vm.qmp('query-vnc')['return']['enabled'])
> +
> + def test_no_vnc_change_password(self):
> + self.vm.add_args('-nodefaults', '-S')
> + self.vm.launch()
> + self.assertFalse(self.vm.qmp('query-vnc')['return']['enabled'])
> + set_password_response = self.vm.qmp('change',
> + device='vnc',
> + target='password',
> + arg='new_password')
> + self.assertIn('error', set_password_response)
> + self.assertEqual(set_password_response['error']['class'],
> + 'GenericError')
> + self.assertEqual(set_password_response['error']['desc'],
> + 'Could not set password')
> +
> + def test_vnc_change_password_requires_a_password(self):
> + self.vm.add_args('-nodefaults', '-S', '-vnc', ':0')
> + self.vm.launch()
> + self.assertTrue(self.vm.qmp('query-vnc')['return']['enabled'])
> + set_password_response = self.vm.qmp('change',
> + device='vnc',
> + target='password',
> + arg='new_password')
> + self.assertIn('error', set_password_response)
> + self.assertEqual(set_password_response['error']['class'],
> + 'GenericError')
> + self.assertEqual(set_password_response['error']['desc'],
> + 'Could not set password')
> +
> + def test_vnc_change_password(self):
> + self.vm.add_args('-nodefaults', '-S', '-vnc', ':0,password')
> + self.vm.launch()
> + self.assertTrue(self.vm.qmp('query-vnc')['return']['enabled'])
> + set_password_response = self.vm.qmp('change',
> + device='vnc',
> + target='password',
> + arg='new_password')
> + self.assertEqual(set_password_response['return'], {})
>
© 2016 - 2025 Red Hat, Inc.