Skip to content

[P6] include/ 共通コンポーネントのユニットテストを追加する #92

@thawk105

Description

@thawk105

親イシュー: #28 / 旧 #35 を分割したうちの 1 つ(include/ 共通コンポーネントのユニットテスト担当)。
依存: #91(テストインフラの配線)完了後に着手。

現状(2026-05-15)

  • include/ には全プロトコル共通のコンポーネントが多数あるが、対応するユニットテストが1 つもない。代表例:
    • include/zipf.hh — Zipf 分布生成
    • include/atomic_wrapper.hh — アトミック操作ラッパ
    • include/rwlock.hh — read/write ロック
    • include/masstree_wrapper.hh — masstree ラッパ
    • その他 random.hh, backoff.hh, int64byte.hh, string.hh など
  • googletest はサブモジュールとして存在するが、現状リンクしているのは cc/ss2pl/test(ss2pl 専用の make_db_test)のみ。共通コンポーネントのテストは皆無。
  • microbench/(旧 instruction/ を P7 でリネーム)は同じ include/ 部品を使うが、目的は命令数・サイクル等のコスト測定マイクロベンチであり、本イシューが扱う正当性のユニットテストとは目的が直交する。microbench をテストの代わりにはしない。
  • [P6] テストインフラを機能させる(enable_testing + CI ctest + 孤立テスト接続) #91enable_testing() + gtest のビルドツリー接続 + テスト用 CMake ヘルパ + CI ctest ステップが整備される。本イシューはその上にテスト本体を載せる。

やること

完了条件

  • include/ の主要な共通コンポーネント(少なくとも zipf / atomic_wrapper / rwlock / masstree_wrapper)にユニットテストが存在すること
  • それらが CI 内の ctest で実行され、パスすること

備考

Metadata

Metadata

Assignees

No one assigned

    Labels

    iceboxFrozen for later. Thaw when the time is right.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions