diff options
author | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-15 02:31:29 +0100 |
---|---|---|
committer | Andreas Stöckel <astoecke@techfak.uni-bielefeld.de> | 2015-01-15 02:31:29 +0100 |
commit | 86885e5a63c10d264bac822cb054607c27c0f734 (patch) | |
tree | 85362383a4e0726b8c89475b939f1d0d44ec0dea /src/core/common/Argument.cpp | |
parent | 2a9541b06b4741f268929377946e720af1418ba0 (diff) |
Fixed bug in Argument validation when missing values are inserted (string types got "null" as default value and not ""), added corresponding unit test
Diffstat (limited to 'src/core/common/Argument.cpp')
-rw-r--r-- | src/core/common/Argument.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/common/Argument.cpp b/src/core/common/Argument.cpp index 6bf2917..a4c153d 100644 --- a/src/core/common/Argument.cpp +++ b/src/core/common/Argument.cpp @@ -247,6 +247,7 @@ bool Arguments::validateArray(Variant::arrayType &arr, Logger &logger) const arr[a] = arguments[a].defaultValue; } else { // Call "validate" to inject a standard value + arr[a] = Variant::fromObject(nullptr); arguments[a].validate(arr[a], nullLogger); logger.error(std::string("Missing argument ") + std::to_string(a + 1) + std::string(" \"") + @@ -302,7 +303,7 @@ bool Arguments::validateMap(Variant::mapType &map, Logger &logger, map[arguments[a].name] = arguments[a].defaultValue; } else { // Call "validate" to inject a standard value - map[arguments[a].name] = Variant{}; + map[arguments[a].name] = Variant::fromObject(nullptr); arguments[a].validate(map[arguments[a].name], nullLogger); logger.error(std::string("Missing argument \"") + arguments[a].name + std::string("\"")); |