Add temp file and FD support to TemporaryFileHandle

This commit adds file descriptor and temporary file management to
DuplicatableFileHandle, removing the redundant test-only
TemporaryFileHandle utility.

Changes:
- Add file descriptor constructor and setFd() method
- Add temporary file constructor with string_view content
- Add filePath member and automatic cleanup in destructor
- Add configurable temp-dir meson option (default: /tmp/bmcweb)
- Remove include/file_test_utilities.hpp
- Update all tests to use DuplicatableFileHandle
- Rename stringPath to filePath

These features will be used by the multipart parser to stream
large uploads to temporary files instead of keeping them in memory,
and by the update service to pass file descriptors over D-Bus.

Change-Id: I982f5928d453f9f0c13d91c3525006134ddc87b3
Signed-off-by: Rajeev Ranjan <ranjan.rajeev1609@gmail.com>
diff --git a/test/include/ssl_key_handler_test.cpp b/test/include/ssl_key_handler_test.cpp
index 44da038..0680dcc 100644
--- a/test/include/ssl_key_handler_test.cpp
+++ b/test/include/ssl_key_handler_test.cpp
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: Apache-2.0
 // SPDX-FileCopyrightText: Copyright OpenBMC Authors
-#include "file_test_utilities.hpp"
+#include "duplicatable_file_handle.hpp"
 #include "ssl_key_handler.hpp"
 
 #include <string>
@@ -14,14 +14,14 @@
 {
     /* Verifies that we can generate a certificate, then read back in the
      * certificate that was read */
-    TemporaryFileHandle myFile("");
+    DuplicatableFileHandle myFile("");
     std::string cert = generateSslCertificate("TestCommonName");
 
     EXPECT_FALSE(cert.empty());
 
-    writeCertificateToFile(myFile.stringPath, cert);
+    writeCertificateToFile(myFile.filePath, cert);
 
-    std::string cert2 = verifyOpensslKeyCert(myFile.stringPath);
+    std::string cert2 = verifyOpensslKeyCert(myFile.filePath);
     EXPECT_FALSE(cert2.empty());
     EXPECT_EQ(cert, cert2);
 }