On Thu, Dec 01, 2016 at 12:34:13PM +0200, Yiannis Tsiouris wrote:
> This patch adds tests to RAPI for gnt-instance modify options:
> - '--clear-os-parameters'/'--clear-os-parameters-private'
> - '--remove-os-parameters'/'--remove-os-parameters-private'

So... this is just testing that these options are passed through from RAPI and
that an OpCode with the correct information can be built, right?

Because some of the combinations specify strange things eg clearing all params
and removing one, or removing an option which might not exist.

If so, LGTM.

Thanks,
Brian.

> Signed-off-by: Yiannis Tsiouris <ts...@grnet.gr>
> ---
>  test/py/ganeti.rapi.rlib2_unittest.py | 73 
> +++++++++++++++++++++--------------
>  1 file changed, 45 insertions(+), 28 deletions(-)
> 
> diff --git a/test/py/ganeti.rapi.rlib2_unittest.py 
> b/test/py/ganeti.rapi.rlib2_unittest.py
> index fe67538..1f52ec1 100755
> --- a/test/py/ganeti.rapi.rlib2_unittest.py
> +++ b/test/py/ganeti.rapi.rlib2_unittest.py
> @@ -1077,33 +1077,48 @@ class TestParseModifyInstanceRequest(RAPITestCase):
>              for nics in [[], [(0, { constants.INIC_IP: "192.0.2.1", })]]:
>                for disks in test_disks:
>                  for disk_template in constants.DISK_TEMPLATES:
> -                  data = {
> -                    "osparams": osparams,
> -                    "hvparams": hvparams,
> -                    "beparams": beparams,
> -                    "nics": nics,
> -                    "disks": disks,
> -                    "force": force,
> -                    "disk_template": disk_template,
> -                    }
> -
> -                  op = self.getSubmittedOpcode(
> -                    rlib2.R_2_instances_name_modify, [name], {}, data, "PUT",
> -                    opcodes.OpInstanceSetParams
> -                  )
> -
> -                  self.assertEqual(op.instance_name, name)
> -                  self.assertEqual(op.hvparams, hvparams)
> -                  self.assertEqual(op.beparams, beparams)
> -                  self.assertEqual(op.osparams, osparams)
> -                  self.assertEqual(op.force, force)
> -                  self.assertEqual(op.nics, nics)
> -                  self.assertEqual(op.disks, disks)
> -                  self.assertEqual(op.disk_template, disk_template)
> -                  self.assertTrue(op.remote_node is None)
> -                  self.assertTrue(op.os_name is None)
> -                  self.assertFalse(op.force_variant)
> -                  self.assertFalse(op.dry_run)
> +                  for clear_osparams in [False, True]:
> +                    for clear_osparams_private in [False, True]:
> +                      for remove_osparams in [[], ["osp1", "osp2"]]:
> +                        for remove_osparams_private in [[], ["priv_osp1",
> +                                                             "priv_osp2"]]:
> +                          data = {
> +                            "osparams": osparams,
> +                            "hvparams": hvparams,
> +                            "beparams": beparams,
> +                            "nics": nics,
> +                            "disks": disks,
> +                            "force": force,
> +                            "disk_template": disk_template,
> +                            "clear_osparams": clear_osparams,
> +                            "clear_osparams_private": clear_osparams_private,
> +                            "remove_osparams": remove_osparams,
> +                            "remove_osparams_private": 
> remove_osparams_private,
> +                          }
> +
> +                          op = self.getSubmittedOpcode(
> +                            rlib2.R_2_instances_name_modify, [name], {}, 
> data,
> +                            "PUT", opcodes.OpInstanceSetParams
> +                          )
> +
> +                          self.assertEqual(op.instance_name, name)
> +                          self.assertEqual(op.hvparams, hvparams)
> +                          self.assertEqual(op.beparams, beparams)
> +                          self.assertEqual(op.osparams, osparams)
> +                          self.assertEqual(op.force, force)
> +                          self.assertEqual(op.nics, nics)
> +                          self.assertEqual(op.disks, disks)
> +                          self.assertEqual(op.disk_template, disk_template)
> +                          self.assertEqual(op.clear_osparams, clear_osparams)
> +                          self.assertEqual(op.clear_osparams_private,
> +                                           clear_osparams_private)
> +                          self.assertEqual(op.remove_osparams, 
> remove_osparams)
> +                          self.assertEqual(op.remove_osparams_private,
> +                                           remove_osparams_private)
> +                          self.assertTrue(op.remote_node is None)
> +                          self.assertTrue(op.os_name is None)
> +                          self.assertFalse(op.force_variant)
> +                          self.assertFalse(op.dry_run)
>  
>    def testDefaults(self):
>      name = "instir8aish31"
> @@ -1112,7 +1127,9 @@ class TestParseModifyInstanceRequest(RAPITestCase):
>                                   {}, "PUT", opcodes.OpInstanceSetParams)
>  
>      for i in ["hvparams", "beparams", "osparams", "force", "nics", "disks",
> -              "disk_template", "remote_node", "os_name", "force_variant"]:
> +              "disk_template", "remote_node", "os_name", "force_variant",
> +              "clear_osparams", "clear_osparams_private", "remove_osparams",
> +              "remove_osparams_private"]:
>        self.assertTrue(hasattr(op, i))
>  
>  
> -- 
> 2.10.2
> 

Reply via email to