From 7ebea90af9d0501bd97778a0882d681be317e473 Mon Sep 17 00:00:00 2001 From: Blottiere Paul Date: Thu, 11 Apr 2019 13:14:04 +0200 Subject: [PATCH 1/3] Add a fallback to unmanaged parameters --- src/server/qgsserverparameters.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/server/qgsserverparameters.cpp b/src/server/qgsserverparameters.cpp index 1d4fccf1b36b..62df3624dc4d 100644 --- a/src/server/qgsserverparameters.cpp +++ b/src/server/qgsserverparameters.cpp @@ -526,7 +526,14 @@ QString QgsServerParameters::request() const QString QgsServerParameters::value( const QString &key ) const { - return value( QgsServerParameter::name( key ) ).toString(); + if ( ! mParameters.contains( QgsServerParameter::name( key ) ) ) + { + return mUnmanagedParameters[key]; + } + else + { + return value( QgsServerParameter::name( key ) ).toString(); + } } QVariant QgsServerParameters::value( QgsServerParameter::Name name ) const From f562b099a560a40b21779431f23ad6758f1e1ff7 Mon Sep 17 00:00:00 2001 From: Blottiere Paul Date: Thu, 11 Apr 2019 13:14:23 +0200 Subject: [PATCH 2/3] Add unit test --- tests/src/python/test_qgsserver_request.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/src/python/test_qgsserver_request.py b/tests/src/python/test_qgsserver_request.py index eab2da893a44..2e4fb35a80cb 100644 --- a/tests/src/python/test_qgsserver_request.py +++ b/tests/src/python/test_qgsserver_request.py @@ -196,6 +196,11 @@ def _check_links(params, method='GET'): _check_links(params) _check_links(params, 'POST') + def test_add_parameters(self): + request = QgsServerRequest() + request.setParameter('FOOBAR', 'foobar') + self.assertEqual(request.parameter('FOOBAR'), 'foobar') + if __name__ == '__main__': unittest.main() From d730aa337ab44d1c46421298caba3099548940a2 Mon Sep 17 00:00:00 2001 From: Blottiere Paul Date: Thu, 11 Apr 2019 13:23:39 +0200 Subject: [PATCH 3/3] Add test for an unkown parameter --- tests/src/python/test_qgsserver_request.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/src/python/test_qgsserver_request.py b/tests/src/python/test_qgsserver_request.py index 2e4fb35a80cb..80fbcd98dc04 100644 --- a/tests/src/python/test_qgsserver_request.py +++ b/tests/src/python/test_qgsserver_request.py @@ -200,6 +200,7 @@ def test_add_parameters(self): request = QgsServerRequest() request.setParameter('FOOBAR', 'foobar') self.assertEqual(request.parameter('FOOBAR'), 'foobar') + self.assertEqual(request.parameter('UNKNOWN'), '') if __name__ == '__main__':