WillAyd opened a new issue, #47434:
URL: https://github.com/apache/arrow/issues/47434

   ### Describe the bug, including details regarding any error messages, 
version, and platform.
   
   With a clean build of Arrow:
   
   ```sh
   $ cmake -S . -B build -G Ninja -DARROW_COMPUTE=ON -DARROW_BUILD_TESTS=ON 
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON 
   $ cmake --build build
   ```
   
   The default ctest invocation seems to show everything as passing:
   
   ```sh
   $ cd build
   $ ctest
   ```
   
   However, with verbose inspection, you will see that many tests are not 
actually running:
   
   ```sh
   $ ctest --verbose
   UpdateCTestConfiguration  from 
:C:/Users/Will/clones/arrow/cpp/build/DartConfiguration.tcl
   UpdateCTestConfiguration  from 
:C:/Users/Will/clones/arrow/cpp/build/DartConfiguration.tcl
   Test project C:/Users/Will/clones/arrow/cpp/build
   Constructing a list of tests
   Done constructing a list of tests
   Updating test list for fixtures
   Added 0 tests to meet fixture requirements
   Checking test dependency graph...
   Checking test dependency graph end
   test 1
         Start  1: arrow-array-test
   
   1: Test command: 
C:\Users\Will\clones\arrow\cpp\build\debug\arrow-array-test.exe
   1: Working Directory: C:/Users/Will/clones/arrow/cpp/build/src/arrow
   1: Test timeout computed to be: 10000000
   1: Running main() from 
C:\Users\Will\clones\arrow\cpp\build\_deps\googletest-src\googletest\src\gtest_main.cc
   1: [==========] Running 0 tests from 0 test suites.
   1: [==========] 0 tests from 0 test suites ran. (0 ms total)
   1: [  PASSED  ] 0 tests.
    1/49 Test  #1: arrow-array-test ......................   Passed    0.02 sec
   test 2
         Start  2: arrow-buffer-test
   
   2: Test command: 
C:\Users\Will\clones\arrow\cpp\build\debug\arrow-buffer-test.exe
   2: Working Directory: C:/Users/Will/clones/arrow/cpp/build/src/arrow
   2: Test timeout computed to be: 10000000
   2: Running main() from 
C:\Users\Will\clones\arrow\cpp\build\_deps\googletest-src\googletest\src\gtest_main.cc
   2: [==========] Running 0 tests from 0 test suites.
   2: [==========] 0 tests from 0 test suites ran. (0 ms total)
   2: [  PASSED  ] 0 tests.
    2/49 Test  #2: arrow-buffer-test .....................   Passed    0.01 sec
   test 3
         Start  3: arrow-extension-type-test
   
   3: Test command: 
C:\Users\Will\clones\arrow\cpp\build\debug\arrow-extension-type-test.exe
   3: Working Directory: C:/Users/Will/clones/arrow/cpp/build/src/arrow
   3: Test timeout computed to be: 10000000
   3: Running main() from 
C:\Users\Will\clones\arrow\cpp\build\_deps\googletest-src\googletest\src\gtest_main.cc
   3: [==========] Running 0 tests from 0 test suites.
   3: [==========] 0 tests from 0 test suites ran. (0 ms total)
   3: [  PASSED  ] 0 tests.
    3/49 Test  #3: arrow-extension-type-test .............   Passed    0.01 sec
   test 4
         Start  4: arrow-misc-test
   
   4: Test command: 
C:\Users\Will\clones\arrow\cpp\build\debug\arrow-misc-test.exe
   4: Working Directory: C:/Users/Will/clones/arrow/cpp/build/src/arrow
   4: Test timeout computed to be: 10000000
   4: Running main() from 
C:\Users\Will\clones\arrow\cpp\build\_deps\googletest-src\googletest\src\gtest_main.cc
   4: [==========] Running 0 tests from 0 test suites.
   4: [==========] 0 tests from 0 test suites ran. (0 ms total)
   4: [  PASSED  ] 0 tests.
   
   ...
   ```
   
   From a quick glance, the only test executables actually running are 
arrow-gtest-util-test (which fails with the issue shown in 
https://github.com/apache/arrow/pull/47282/files#r2270999922), 
arrow-compute-internals-test, arrow-json-integration-test, arrow-utility-test, 
and arrow-compute-scalar-cast-test. The common pattern for AFAICT for these is 
that they define their own main function. I also noticed that adding the 
following main function:
   
   ```cpp
   int main(int argc, char **argv) {
     ::testing::InitGoogleTest(&argc, argv);
     return RUN_ALL_TESTS();
   }
   ```
   
   To `gtest_util_test.cc` allows you to run the tests in the 
`arrow-gtest-util-test` executable
   
   ### Component(s)
   
   C++


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to