LCOV - code coverage report
Current view: top level - backend/storage/duckdb - duckdb_storage_test_fixture.h (source / functions) Coverage Total Hit
Test: _coverage_report.dat Lines: 100.0 % 15 15
Test Date: 2026-07-02 21:01:18 Functions: 100.0 % 2 2

            Line data    Source code
       1              : #ifndef BIGQUERY_EMULATOR_BACKEND_STORAGE_DUCKDB_DUCKDB_STORAGE_TEST_FIXTURE_H_
       2              : #define BIGQUERY_EMULATOR_BACKEND_STORAGE_DUCKDB_DUCKDB_STORAGE_TEST_FIXTURE_H_
       3              : 
       4              : #include <cstdlib>
       5              : #include <filesystem>
       6              : #include <random>
       7              : #include <string>
       8              : 
       9              : #include "absl/strings/str_cat.h"
      10              : #include "backend/schema/schema.h"
      11              : #include "backend/storage/storage.h"
      12              : #include "gtest/gtest.h"
      13              : 
      14              : namespace bigquery_emulator {
      15              : namespace backend {
      16              : namespace storage {
      17              : namespace duckdb {
      18              : 
      19              : class DuckDBStorageTest : public ::testing::Test {
      20              :  protected:
      21           35 :   void SetUp() override {
      22           35 :     const char* tmpdir_env = std::getenv("TMPDIR");
      23           35 :     const std::string tmpdir = tmpdir_env != nullptr ? tmpdir_env : "/tmp";
      24           35 :     std::random_device rd;
      25           35 :     std::seed_seq seed{rd(), rd()};
      26           35 :     std::mt19937_64 rng(seed);
      27           35 :     data_dir_ = std::filesystem::path(tmpdir) /
      28           35 :                 absl::StrCat("bqemu-duckdb-storage-test-", rng());
      29           35 :     std::error_code ec;
      30           35 :     std::filesystem::remove_all(data_dir_, ec);
      31           35 :   }
      32              : 
      33           35 :   void TearDown() override {
      34           35 :     std::error_code ec;
      35           35 :     std::filesystem::remove_all(data_dir_, ec);
      36           35 :   }
      37              : 
      38              :   std::filesystem::path data_dir_{};
      39              : };
      40              : 
      41              : schema::TableSchema PeopleSchema();
      42              : 
      43              : Row MakePerson(int64_t id, absl::string_view name);
      44              : 
      45              : }  // namespace duckdb
      46              : }  // namespace storage
      47              : }  // namespace backend
      48              : }  // namespace bigquery_emulator
      49              : 
      50              : #endif
        

Generated by: LCOV version 2.0-1