diff --git a/gnucash/report/test/test-report-extras.scm b/gnucash/report/test/test-report-extras.scm index f4a56cdcee..a65981f3fd 100644 --- a/gnucash/report/test/test-report-extras.scm +++ b/gnucash/report/test/test-report-extras.scm @@ -51,8 +51,11 @@ (gnc:html-document-set-style-sheet! document (gnc:report-stylesheet report)) (if test-title (gnc:html-document-set-title! document test-title)) - (let ((render (gnc:html-document-render document))) - (call-with-output-file (format #f "/tmp/~a-~a.html" + (let ((render (gnc:html-document-render document)) + (tmpdir (if (eq? (system-file-name-convention) 'windows) + (getenv "TMP") + "/tmp"))) + (call-with-output-file (format #f "~a/~a-~a.html" tmpdir (string-map sanitize-char prefix) (string-map sanitize-char test-title)) (lambda (p) diff --git a/gnucash/report/test/test-report-html.scm b/gnucash/report/test/test-report-html.scm index 773a8bbdd9..e9b9f00a3f 100644 --- a/gnucash/report/test/test-report-html.scm +++ b/gnucash/report/test/test-report-html.scm @@ -802,8 +802,11 @@ HTML Document Title\n\ (let* ((doc (gnc:make-html-document))) (gnc:html-document-set-style-sheet! doc (gnc:html-style-sheet-find "Default")) (gnc:html-document-add-object! doc table) - (let ((render (gnc:html-document-render doc))) - (call-with-output-file (format #f "/tmp/html-acct-table-~a.html" prefix) + (let ((render (gnc:html-document-render doc)) + (tmpdir (if (eq? (system-file-name-convention) 'windows) + (getenv "TMP") + "/tmp"))) + (call-with-output-file (format #f "~a/html-acct-table-~a.html" tmpdir prefix) (lambda (p) (display render p))) (xml->sxml render diff --git a/libgnucash/backend/xml/test/gtest-load-save-files.cpp b/libgnucash/backend/xml/test/gtest-load-save-files.cpp index 0602487f3a..b8ee039650 100644 --- a/libgnucash/backend/xml/test/gtest-load-save-files.cpp +++ b/libgnucash/backend/xml/test/gtest-load-save-files.cpp @@ -40,6 +40,7 @@ #include #include #include +#include #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wcpp" @@ -208,6 +209,7 @@ public: TEST_P(LoadSaveFiles, test_file) { auto filename = GetParam(); + auto base_url = gnc_uri_normalize_uri (filename.c_str (), FALSE); /* Verify that we can write a compressed version of the original file that * has the original content when uncompressed. */ @@ -215,7 +217,9 @@ TEST_P(LoadSaveFiles, test_file) /* Verify that we can read a compressed file and write an uncompressed file * that has the original content. */ + auto compressed_url = gnc_uri_normalize_uri (new_compressed_file.c_str (), FALSE); auto new_uncompressed_file = filename + "-test-uncompressed~"; + auto uncompressed_url = gnc_uri_normalize_uri (new_uncompressed_file.c_str (), FALSE); const char *logdomain = "backend.xml"; GLogLevelFlags loglevel = static_cast (G_LOG_LEVEL_WARNING); @@ -226,14 +230,15 @@ TEST_P(LoadSaveFiles, test_file) { auto load_uncompressed_session = std::shared_ptr{qof_session_new (qof_book_new ()), qof_session_destroy}; - QOF_SESSION_CHECKED_CALL(qof_session_begin, load_uncompressed_session, filename.c_str (), SESSION_READ_ONLY); + QOF_SESSION_CHECKED_CALL(qof_session_begin, load_uncompressed_session, base_url, SESSION_READ_ONLY); QOF_SESSION_CHECKED_CALL(qof_session_load, load_uncompressed_session, nullptr); auto save_compressed_session = std::shared_ptr{qof_session_new (nullptr), qof_session_destroy}; g_unlink (new_compressed_file.c_str ()); g_unlink ((new_compressed_file + ".LCK").c_str ()); - QOF_SESSION_CHECKED_CALL(qof_session_begin, save_compressed_session, new_compressed_file.c_str (), SESSION_NEW_OVERWRITE); + + QOF_SESSION_CHECKED_CALL(qof_session_begin, save_compressed_session, compressed_url, SESSION_NEW_OVERWRITE); qof_event_suspend (); qof_session_swap_data (load_uncompressed_session.get (), save_compressed_session.get ()); @@ -254,14 +259,14 @@ TEST_P(LoadSaveFiles, test_file) { auto load_compressed_session = std::shared_ptr{qof_session_new (qof_book_new ()), qof_session_destroy}; - QOF_SESSION_CHECKED_CALL(qof_session_begin, load_compressed_session, new_compressed_file.c_str (), SESSION_READ_ONLY); + QOF_SESSION_CHECKED_CALL(qof_session_begin, load_compressed_session, compressed_url, SESSION_READ_ONLY); QOF_SESSION_CHECKED_CALL(qof_session_load, load_compressed_session, nullptr); auto save_uncompressed_session = std::shared_ptr{qof_session_new (nullptr), qof_session_destroy}; g_unlink (new_uncompressed_file.c_str ()); g_unlink ((new_uncompressed_file + ".LCK").c_str ()); - QOF_SESSION_CHECKED_CALL(qof_session_begin, save_uncompressed_session, new_uncompressed_file.c_str (), SESSION_NEW_OVERWRITE); + QOF_SESSION_CHECKED_CALL(qof_session_begin, save_uncompressed_session, uncompressed_url, SESSION_NEW_OVERWRITE); qof_event_suspend (); qof_session_swap_data (load_compressed_session.get (), save_uncompressed_session.get ()); @@ -276,6 +281,10 @@ TEST_P(LoadSaveFiles, test_file) qof_session_end (save_uncompressed_session.get ()); } + g_free (base_url); + g_free (compressed_url); + g_free (uncompressed_url); + if (!compare_files (filename, new_uncompressed_file)) return; } diff --git a/libgnucash/backend/xml/test/gtest-xml-contents.cpp b/libgnucash/backend/xml/test/gtest-xml-contents.cpp index d5db6912a1..f01ba3e2e7 100644 --- a/libgnucash/backend/xml/test/gtest-xml-contents.cpp +++ b/libgnucash/backend/xml/test/gtest-xml-contents.cpp @@ -30,6 +30,7 @@ #include #include #include +#include #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wcpp" @@ -62,8 +63,11 @@ static QofBook* session_load (QofSession* session, const char* filename) { if (!session || !filename) return nullptr; + auto url = gnc_uri_normalize_uri (filename, FALSE); + + qof_session_begin (session, url, SESSION_READ_ONLY); + g_free (url); - qof_session_begin (session, filename, SESSION_READ_ONLY); if (qof_session_get_error(session) != 0) { std::cerr << "Session begin failed: " << qof_session_get_error_message(session); diff --git a/libgnucash/backend/xml/test/test-load-xml2.cpp b/libgnucash/backend/xml/test/test-load-xml2.cpp index ef6ecc4c91..4ed7384a7c 100644 --- a/libgnucash/backend/xml/test/test-load-xml2.cpp +++ b/libgnucash/backend/xml/test/test-load-xml2.cpp @@ -43,6 +43,7 @@ #include #include #include +#include #include #include @@ -91,13 +92,15 @@ test_load_file (const char* filename) auto book = qof_book_new(); auto session = qof_session_new (book); + auto url = gnc_uri_normalize_uri (filename, FALSE); remove_locks (filename); ignore_lock = (g_strcmp0 (g_getenv ("SRCDIR"), ".") != 0); /* gnc_prefs_set_file_save_compressed(FALSE); */ - qof_session_begin (session, filename, + qof_session_begin (session, url, ignore_lock ? SESSION_READ_ONLY : SESSION_NORMAL_OPEN); + g_free (url); qof_session_load (session, NULL);