From e53617909440b8d1774647b756d36c42437f766c Mon Sep 17 00:00:00 2001
From: Guillaume Pasero <guillaume.pasero@c-s.fr>
Date: Tue, 20 Feb 2018 15:26:45 +0100
Subject: [PATCH] TEST: new test to validate the parameter dict

---
 .../Wrappers/SWIG/test/python/CMakeLists.txt  |  5 ++
 .../SWIG/test/python/PythonParametersDict.py  | 46 +++++++++++++++++++
 2 files changed, 51 insertions(+)
 create mode 100644 Modules/Wrappers/SWIG/test/python/PythonParametersDict.py

diff --git a/Modules/Wrappers/SWIG/test/python/CMakeLists.txt b/Modules/Wrappers/SWIG/test/python/CMakeLists.txt
index b0e0ac49bc..bd5865b570 100644
--- a/Modules/Wrappers/SWIG/test/python/CMakeLists.txt
+++ b/Modules/Wrappers/SWIG/test/python/CMakeLists.txt
@@ -141,3 +141,8 @@ add_test( NAME pyTvBug1498
   ${OTB_DATA_ROOT}/Input/poupees.tif
   ${TEMP}/Bu1498-output.tif)  
 
+add_test( NAME pyTvParametersDict
+  COMMAND ${TEST_DRIVER} Execute
+  ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/PythonTestDriver.py
+  PythonParametersDict
+  ${OTB_DATA_ROOT}/Input/poupees.tif)
diff --git a/Modules/Wrappers/SWIG/test/python/PythonParametersDict.py b/Modules/Wrappers/SWIG/test/python/PythonParametersDict.py
new file mode 100644
index 0000000000..d05161acc4
--- /dev/null
+++ b/Modules/Wrappers/SWIG/test/python/PythonParametersDict.py
@@ -0,0 +1,46 @@
+# -*- coding: utf-8 -*-
+#
+# Copyright (C) 2005-2017 Centre National d'Etudes Spatiales (CNES)
+#
+# This file is part of Orfeo Toolbox
+#
+#     https://www.orfeo-toolbox.org/
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# -*- coding: utf-8 -*-
+
+#
+#  Example on the use of parameters dictionaries
+#
+
+def test(otb, argv):
+	app = otb.Registry.CreateApplication("Smoothing")
+
+	app.SetParameterString("out", "myOutput.tif")
+	app.SetParameterInt("type.mean.radius",4)
+	prm = app.GetParameters()
+	if prm["out"] != "myOutput.tif":
+		exit(1)
+	if prm["type.mean.radius"] != 4:
+		exit(1)
+	prm["in"] = argv[1]
+	prm["type"] = "anidif"
+	prm["type.anidif.nbiter"] = 12
+	app.SetParameters(prm)
+	if app.GetParameterString("in") != argv[1]:
+		exit(1)
+	if app.GetParameterInt("type.anidif.nbiter") != 12:
+		exit(1)
+
-- 
GitLab