On Fri, Feb 07, 2014 at 01:37:26PM +0100, Santi Raffa wrote:
> * Fix GenericInstanceCreate
> * Fix pylint disable annotation
> * Change some assert methods to assertTrue()
> 
> Signed-off-by: Santi Raffa <[email protected]>
> ---
>  lib/cli.py                            |  7 +++++--
>  lib/serializer.py                     |  4 ++--
>  lib/utils/algo.py                     |  3 ++-
>  test/py/ganeti.serializer_unittest.py | 34 +++++++++++++++++-----------------
>  4 files changed, 26 insertions(+), 22 deletions(-)
> 
> diff --git a/lib/cli.py b/lib/cli.py
> index aa3d968..e9bf963 100644
> --- a/lib/cli.py
> +++ b/lib/cli.py
> @@ -2778,6 +2778,9 @@ def GenericInstanceCreate(mode, opts, args):
>    else:
>      raise errors.ProgrammerError("Invalid creation mode %s" % mode)
>  
> +  osparams_private = opts.osparams_private or serializer.PrivateDict()
> +  osparams_secret = opts.osparams_private or serializer.PrivateDict()

I fixed this also.

> +
>    op = opcodes.OpInstanceCreate(instance_name=instance,
>                                  disks=disks,
>                                  disk_template=opts.disk_template,
> @@ -2794,8 +2797,8 @@ def GenericInstanceCreate(mode, opts, args):
>                                  hvparams=hvparams,
>                                  beparams=opts.beparams,
>                                  osparams=opts.osparams,
> -                                osparams_private=opts.osparams_private,
> -                                osparams_secret=opts.osparams_secret,
> +                                osparams_private=osparams_private,
> +                                osparams_secret=osparams_secret,
>                                  mode=mode,
>                                  start=start,
>                                  os_type=os_type,
> diff --git a/lib/serializer.py b/lib/serializer.py
> index f98db48..6278dc0 100644
> --- a/lib/serializer.py
> +++ b/lib/serializer.py
> @@ -244,10 +244,10 @@ class Private(object):
>      return self._item
>  
>    def __str__(self):
> -    return "<{._descr}>".format(self)
> +    return "<%s>" % self._descr
>  
>    def __repr__(self):
> -    return "Private(?, descr='{._descr}')".format(self)
> +    return "Private(?, descr=%r)".format(self._descr)
>  
>    # pylint: disable=W0212
>    # If it doesn't access _item directly, the call will go through __getattr__
> diff --git a/lib/utils/algo.py b/lib/utils/algo.py
> index aee2afb..e8d9d1e 100644
> --- a/lib/utils/algo.py
> +++ b/lib/utils/algo.py
> @@ -95,7 +95,8 @@ def FindDuplicates(seq):
>    return list(dup)
>  
>  
> -#pylint: disable=W0142 (use of *-magic in argument list)
> +#pylint: disable=W0142
> +# (use of *-magic in argument list)
>  def GetRepeatedKeys(*dicts):
>    """Return the set of keys defined multiple times in the given dicts.
>  
> diff --git a/test/py/ganeti.serializer_unittest.py 
> b/test/py/ganeti.serializer_unittest.py
> index e015f55..c92f2ee 100755
> --- a/test/py/ganeti.serializer_unittest.py
> +++ b/test/py/ganeti.serializer_unittest.py
> @@ -182,32 +182,32 @@ class TestPrivate(unittest.TestCase):
>    def testLeak(self):
>      pDict = serializer.PrivateDict()
>      pDict["bar"] = "egg"
> -    self.assertNotIn("egg", str(pDict), "Value leaked in str(PrivateDict)")
> -    self.assertNotIn("egg", repr(pDict), "Value leaked in repr(PrivateDict)")
> -    self.assertNotIn("egg", "{0}".format(pDict),
> +    self.assertTrue("egg" not in str(pDict), "Value leaked in 
> str(PrivateDict)")
> +    self.assertTrue("egg" not in repr(pDict), "Value leak in 
> repr(PrivateDict)")
> +    self.assertTrue("egg" not in "{0}".format(pDict),
>                       "Value leaked in PrivateDict.__format__")
> -    self.assertNotIn("egg", serializer.Dump(pDict),
> +    self.assertTrue("egg" not in serializer.Dump(pDict),
>                       "Value leaked in serializer.Dump(PrivateDict)")
>  
>    def testProperAccess(self):
>      pDict = serializer.PrivateDict()
>      pDict["bar"] = "egg"
>  
> -    self.assertIs("egg", pDict["bar"].Get(),
> -                  "Value not returned by Private.Get()")
> -    self.assertIs("egg", pDict.GetPrivate("bar"),
> -                  "Value not returned by Private.GetPrivate()")
> -    self.assertIs("egg", pDict.Unprivate()["bar"],
> -                  "Value not returned by PrivateDict.Unprivate()")
> -    self.assertIn(
> -      "egg",
> -      serializer.Dump(pDict,
> -                      private_encoder=serializer.EncodeWithPrivateFields)
> -    )
> +    self.assertTrue("egg" is pDict["bar"].Get(),
> +                    "Value not returned by Private.Get()")
> +    self.assertTrue("egg" is pDict.GetPrivate("bar"),
> +                    "Value not returned by Private.GetPrivate()")
> +    self.assertTrue("egg" is pDict.Unprivate()["bar"],
> +                    "Value not returned by PrivateDict.Unprivate()")
> +
> +    json = serializer.Dump(pDict,
> +                           
> private_encoder=serializer.EncodeWithPrivateFields)
> +    self.assertTrue("egg" in json)
>  
>    def testDictGet(self):
> -    self.assertIs("tar", serializer.PrivateDict().GetPrivate("bar", "tar"),
> -                  "Private.GetPrivate() did not handle the default case")
> +    result = serializer.PrivateDict().GetPrivate("bar", "tar")
> +    self.assertTrue("tar" is result,
> +                    "Private.GetPrivate() did not handle the default case")
>  
>    def testZeronessPrivate(self):
>      self.assertTrue(serializer.Private("foo"),
> -- 
> 1.9.0.rc1.175.g0b1dcb5
> 

-- 
Jose Antonio Lopes
Ganeti Engineering
Google Germany GmbH
Dienerstr. 12, 80331, München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores
Steuernummer: 48/725/00206
Umsatzsteueridentifikationsnummer: DE813741370

Reply via email to