From d1e5e52e3ac886ce72f6d03a1409de859c91adf1 Mon Sep 17 00:00:00 2001 From: Austin Benoit Date: Fri, 9 Jan 2026 14:48:39 -0500 Subject: [PATCH 1/4] Fix: fix the 32 bit windows test as the analytics dll isn't 32 bit --- analytics/integration_test/src/integration_test.cc | 2 ++ .../test_framework/src/firebase_test_framework.h | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/analytics/integration_test/src/integration_test.cc b/analytics/integration_test/src/integration_test.cc index 2d2965d2bb..3895eaaf70 100644 --- a/analytics/integration_test/src/integration_test.cc +++ b/analytics/integration_test/src/integration_test.cc @@ -248,6 +248,8 @@ TEST_F(FirebaseAnalyticsTest, TestSetProperties) { // The windows analytics DLL enables users to // set a callback function that is // triggered when the underlying DLL logs something. TEST_F(FirebaseAnalyticsTest, TestSetLogCallback) { + SKIP_TEST_ON_WINDOWS_X86; + std::promise finishedPromise; std::future finished = finishedPromise.get_future(); bool log_callback_called = false; diff --git a/testing/test_framework/src/firebase_test_framework.h b/testing/test_framework/src/firebase_test_framework.h index af698e3653..3f115837af 100644 --- a/testing/test_framework/src/firebase_test_framework.h +++ b/testing/test_framework/src/firebase_test_framework.h @@ -128,14 +128,28 @@ namespace firebase_test_framework { #endif // (defined(TARGET_OS_OSX) && TARGET_OS_OSX) #if defined(_WIN32) +// defined when the compilation target is 32-bit ARM, 64-bit ARM, x86, x64 #define SKIP_TEST_ON_WINDOWS \ { \ app_framework::LogInfo("Skipping %s on Windows.", test_info_->name()); \ GTEST_SKIP(); \ return; \ } +#if !defined(_WIN64) +// _WIN64 when the target is 64-bit ARM, x64, or ARM64EC. Otherwise, undefined +// Using it then to tell when we are on windows but not a 64 bit target. +#define SKIP_TEST_ON_WINDOWS_X86 \ + { \ + app_framework::LogInfo("Skipping %s on 32-bit Windows.", test_info_->name()); \ + GTEST_SKIP(); \ + return; \ + } +#else +#define SKIP_TEST_ON_WINDOWS_X86 ((void)0) +#endif // !defined(_WIN64) #else #define SKIP_TEST_ON_WINDOWS ((void)0) +#define SKIP_TEST_ON_WINDOWS_X86 ((void)0) #endif // defined(_WIN32) #if defined(__linux__) From a2aaddc59e477eed202c15c67c4ad42ee37075c4 Mon Sep 17 00:00:00 2001 From: Austin Benoit Date: Fri, 9 Jan 2026 15:11:28 -0500 Subject: [PATCH 2/4] Update testing/test_framework/src/firebase_test_framework.h Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- testing/test_framework/src/firebase_test_framework.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/testing/test_framework/src/firebase_test_framework.h b/testing/test_framework/src/firebase_test_framework.h index 3f115837af..5b5bb73eb4 100644 --- a/testing/test_framework/src/firebase_test_framework.h +++ b/testing/test_framework/src/firebase_test_framework.h @@ -136,16 +136,16 @@ namespace firebase_test_framework { return; \ } #if !defined(_WIN64) -// _WIN64 when the target is 64-bit ARM, x64, or ARM64EC. Otherwise, undefined -// Using it then to tell when we are on windows but not a 64 bit target. -#define SKIP_TEST_ON_WINDOWS_X86 \ +// _WIN64 is defined for 64-bit targets (e.g., x64, 64-bit ARM). +// Its absence on a Windows build indicates a 32-bit target. +#define SKIP_TEST_ON_WINDOWS_32BIT \ { \ app_framework::LogInfo("Skipping %s on 32-bit Windows.", test_info_->name()); \ GTEST_SKIP(); \ return; \ } #else -#define SKIP_TEST_ON_WINDOWS_X86 ((void)0) +#define SKIP_TEST_ON_WINDOWS_32BIT ((void)0) #endif // !defined(_WIN64) #else #define SKIP_TEST_ON_WINDOWS ((void)0) From e073e2312252458a30dcc9b9c199d2b0a18eabb1 Mon Sep 17 00:00:00 2001 From: Austin Benoit Date: Fri, 9 Jan 2026 15:11:38 -0500 Subject: [PATCH 3/4] Update testing/test_framework/src/firebase_test_framework.h Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- testing/test_framework/src/firebase_test_framework.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testing/test_framework/src/firebase_test_framework.h b/testing/test_framework/src/firebase_test_framework.h index 5b5bb73eb4..d08e56ccee 100644 --- a/testing/test_framework/src/firebase_test_framework.h +++ b/testing/test_framework/src/firebase_test_framework.h @@ -149,7 +149,7 @@ namespace firebase_test_framework { #endif // !defined(_WIN64) #else #define SKIP_TEST_ON_WINDOWS ((void)0) -#define SKIP_TEST_ON_WINDOWS_X86 ((void)0) +#define SKIP_TEST_ON_WINDOWS_32BIT ((void)0) #endif // defined(_WIN32) #if defined(__linux__) From a4a3bb108e051bd9a3aca07dec95b2a2a7ab7a8c Mon Sep 17 00:00:00 2001 From: Austin Benoit Date: Fri, 9 Jan 2026 15:14:18 -0500 Subject: [PATCH 4/4] fix formating and name of skip --- analytics/integration_test/src/integration_test.cc | 2 +- testing/test_framework/src/firebase_test_framework.h | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/analytics/integration_test/src/integration_test.cc b/analytics/integration_test/src/integration_test.cc index 3895eaaf70..fe1c54e76a 100644 --- a/analytics/integration_test/src/integration_test.cc +++ b/analytics/integration_test/src/integration_test.cc @@ -248,7 +248,7 @@ TEST_F(FirebaseAnalyticsTest, TestSetProperties) { // The windows analytics DLL enables users to // set a callback function that is // triggered when the underlying DLL logs something. TEST_F(FirebaseAnalyticsTest, TestSetLogCallback) { - SKIP_TEST_ON_WINDOWS_X86; + SKIP_TEST_ON_WINDOWS_32BIT; std::promise finishedPromise; std::future finished = finishedPromise.get_future(); diff --git a/testing/test_framework/src/firebase_test_framework.h b/testing/test_framework/src/firebase_test_framework.h index d08e56ccee..5716aad79e 100644 --- a/testing/test_framework/src/firebase_test_framework.h +++ b/testing/test_framework/src/firebase_test_framework.h @@ -138,11 +138,12 @@ namespace firebase_test_framework { #if !defined(_WIN64) // _WIN64 is defined for 64-bit targets (e.g., x64, 64-bit ARM). // Its absence on a Windows build indicates a 32-bit target. -#define SKIP_TEST_ON_WINDOWS_32BIT \ - { \ - app_framework::LogInfo("Skipping %s on 32-bit Windows.", test_info_->name()); \ - GTEST_SKIP(); \ - return; \ +#define SKIP_TEST_ON_WINDOWS_32BIT \ + { \ + app_framework::LogInfo("Skipping %s on 32-bit Windows.", \ + test_info_->name()); \ + GTEST_SKIP(); \ + return; \ } #else #define SKIP_TEST_ON_WINDOWS_32BIT ((void)0)