From 2fb10892e17f18d908c0a548c34ad510fcf03b13 Mon Sep 17 00:00:00 2001 From: Ger van Diepen <diepen@astron.nl> Date: Wed, 9 Dec 2015 13:00:20 +0000 Subject: [PATCH] Task #8859 Fixed quote removal in case of nested quotes --- LCS/pyparameterset/src/__init__.py | 7 ++++--- LCS/pyparameterset/test/tpyparameterset.py | 2 +- LCS/pyparameterset/test/tpyparameterset.stdout | 8 ++++---- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/LCS/pyparameterset/src/__init__.py b/LCS/pyparameterset/src/__init__.py index 5d83e0ddf70..db1bd8c8f6b 100755 --- a/LCS/pyparameterset/src/__init__.py +++ b/LCS/pyparameterset/src/__init__.py @@ -138,10 +138,11 @@ class parameterset(PyParameterSet): """Turn the parset into a dict""" d = {} for key in self.keys(): + s = self.get(key).get() if removeQuotes: - d[key] = self.get(key).getString() - else: - d[key] = self.get(key).get() + if len(s) >= 2 and s[0] in ['"',"'"] and s[0] == s[-1]: + s = s[1:-1] + d[key] = s return d def adoptArgv(self, argv): diff --git a/LCS/pyparameterset/test/tpyparameterset.py b/LCS/pyparameterset/test/tpyparameterset.py index ba42fc97968..92e61e32fcd 100644 --- a/LCS/pyparameterset/test/tpyparameterset.py +++ b/LCS/pyparameterset/test/tpyparameterset.py @@ -67,7 +67,7 @@ print ps.version("top") print ps.version() print "<<<" ps.add ("a.b", "7") -ps.add ("a.b.lange_naam", "'dit is nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen'") +ps.add ("a.b.lange_naam", "'dit \"is\" nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen'") ps.add ("a.b.c", "5") ps.add ("a.b.double", "3.1415926") ps.add ("a.b.bool", "true") diff --git a/LCS/pyparameterset/test/tpyparameterset.stdout b/LCS/pyparameterset/test/tpyparameterset.stdout index cad33c7cb64..0fc009b824f 100644 --- a/LCS/pyparameterset/test/tpyparameterset.stdout +++ b/LCS/pyparameterset/test/tpyparameterset.stdout @@ -89,7 +89,7 @@ True 7 7 aa -dit is nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen +dit "is" nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen True True False @@ -128,13 +128,13 @@ b.c = 5 4 [] 0 -{'b.c': '5', 'b': '7', 'b.lange_naam': "'dit is nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen'", 'b.bool': 'true', 'b.double': '3.1415926'} -{'b.c': '5', 'b': '7', 'b.lange_naam': 'dit is nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen', 'b.bool': 'true', 'b.double': '3.1415926'} +{'b.c': '5', 'b': '7', 'b.lange_naam': '\'dit "is" nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen\'', 'b.bool': 'true', 'b.double': '3.1415926'} +{'b.c': '5', 'b': '7', 'b.lange_naam': 'dit "is" nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen', 'b.bool': 'true', 'b.double': '3.1415926'} a.b=7 a.b.bool=true a.b.c=5 a.b.double=3.1415926 -a.b.lange_naam='dit is nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen' +a.b.lange_naam='dit "is" nu een andere naam geworden zonder extra spaties aan het einde want die gaan verloren bij wegschrijven + teruglezen' e.g=een voorbeeld egg=een ei vec=[1,2,3] -- GitLab