Fix exception util::transformFFDC()
Signed-off-by: Zane Shelley <zshelle@us.ibm.com>
Change-Id: I8093bc0d5d46891591501333663d959606ea55fa
diff --git a/test/ffdc_file_test.cpp b/test/ffdc_file_test.cpp
new file mode 100644
index 0000000..481abba
--- /dev/null
+++ b/test/ffdc_file_test.cpp
@@ -0,0 +1,16 @@
+#include <util/ffdc_file.hpp>
+#include <util/trace.hpp>
+
+#include "gtest/gtest.h"
+
+TEST(FFDCFile, TestSet1)
+{
+ std::vector<util::FFDCFile> files;
+ files.emplace_back(util::FFDCFormat::JSON, 1, 1);
+ files.emplace_back(util::FFDCFormat::CBOR, 2, 2);
+ files.emplace_back(util::FFDCFormat::Text, 3, 3);
+ files.emplace_back(util::FFDCFormat::Custom, 4, 4);
+
+ std::vector<util::FFDCTuple> tuples;
+ ASSERT_NO_THROW(util::transformFFDC(files, tuples));
+}
diff --git a/test/meson.build b/test/meson.build
index 6cdae18..bf062ad 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -9,6 +9,19 @@
'hello-world',
]
-foreach t : tests
- test(t, executable(t.underscorify(), t + '.cpp', cpp_args : test_arg))
-endforeach
+gtest = dependency('gtest', main : true, required : false, method : 'system')
+
+if gtest.found()
+ foreach t : tests
+ test(t, executable(t.underscorify(), t + '.cpp', dependencies : gtest,
+ cpp_args : test_arg, include_directories : incdir))
+ endforeach
+
+ test('ffdc_file_test',
+ executable('ffdc_file_test', 'ffdc_file_test.cpp',
+ files('../util/ffdc_file.cpp',
+ '../util/temporary_file.cpp'),
+ dependencies : gtest,
+ cpp_args : test_arg,
+ include_directories : incdir))
+endif
diff --git a/util/ffdc_file.hpp b/util/ffdc_file.hpp
index 6f71e2a..1658bb0 100644
--- a/util/ffdc_file.hpp
+++ b/util/ffdc_file.hpp
@@ -162,7 +162,7 @@
{
o_tuples.clear();
- std::transform(i_files.begin(), i_files.end(), o_tuples.begin(),
+ std::transform(i_files.begin(), i_files.end(), std::back_inserter(o_tuples),
[](const auto& e) {
return FFDCTuple(
e.getFormat(), e.getSubType(), e.getVersion(),