Skip to content

ライブラリコードと検証コードを近くに配置する - #14

Merged
blue-jam merged 3 commits into
mainfrom
copilot/place-test-code-near-library-code
Mar 24, 2026
Merged

ライブラリコードと検証コードを近くに配置する#14
blue-jam merged 3 commits into
mainfrom
copilot/place-test-code-near-library-code

Conversation

Copilot AI commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

検証コードが verify/ ディレクトリに集約されており、対応するライブラリとの関係が分かりにくかった。検証コードを対応するライブラリと同じディレクトリに移動し、{ライブラリ名}.{問題ID}.test.cpp の形式で命名する。

ファイルの移動・リネーム

31個のテストファイルを verify/ から各ライブラリディレクトリへ移動:

移動先
graph/ dijkstra.grl_1_a.test.cpp, kruskal.grl_2_a.test.cpp
datastructure/ fenwick.dsl_2_b.test.cpp, lazysegtree.aoj1351.test.cpp
geometry/ crosspoint.cgl_2_b.test.cpp, arrangement.aoj1279.test.cpp

複数ライブラリを使うテストは、最も本質的なライブラリのディレクトリに配置(例: aoj1279 は arrangement + dijkstra を使うが geometry/arrangement.aoj1279.test.cpp として配置)。

CMakeLists.txt の更新

  • VERIFY_SOURCES のグロブを verify/*.test.cpp から各ライブラリディレクトリの *.test.cpp に変更
  • ALL_SOURCES(lint 対象)も同様に更新
  • get_filename_componentNAME_WE から NAME_WLE に変更 — 新しいファイル名は複数のドットを含むため、NAME_WE では最初のドット以降がすべて除去され CMake ターゲット名が重複する

verify/src/ 配下の非テストファイルは変更なし。

Original prompt

This section details on the original issue you should resolve

<issue_title>ライブラリコードと検証コードを近くに配置する</issue_title>
<issue_description>検証コードがverifyディレクトリにあり、検証しているコードから遠くに配置されているのでどのコードを検証しているか分かりにくい。検証コードを検証されているコードと同じディレクトリに配置して、名前も対応するようにする。

検証コードの名前は、"検証しているコード.問題名.test.cpp"とする。例えば、dijkstra.hppをAOJ1234で検証しているならば、dijkstra.aoj1234.test.cppとする。

複数のライブラリをインクルードしている場合は、検証している問題の最も本質的な部分に対応するライブラリにする。例えば、最小全域木をクラスカルで解いている場合、クラスカルの中で疎集合データ構造を使うが、検証したいのはクラスカルなのでクラスカルと同じディレクトリに配置する。</issue_description>

Comments on the Issue (you are @copilot in this section)


⌨️ Start Copilot coding agent tasks without leaving your editor — available in VS Code, Visual Studio, JetBrains IDEs and Eclipse.

Copilot AI changed the title [WIP] Place verification code next to library code ライブラリコードと検証コードを近くに配置する Mar 24, 2026
Copilot AI requested a review from blue-jam March 24, 2026 21:07
@blue-jam

Copy link
Copy Markdown
Owner

@copilot lintが落ちているから直して

Copilot AI commented Mar 24, 2026

Copy link
Copy Markdown
Contributor Author

@copilot lintが落ちているから直して

ec9806a でclang-formatの違反を修正しました。

@blue-jam
blue-jam marked this pull request as ready for review March 24, 2026 21:17
@blue-jam
blue-jam merged commit 98bbe39 into main Mar 24, 2026
2 checks passed
@blue-jam
blue-jam deleted the copilot/place-test-code-near-library-code branch March 24, 2026 22:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ライブラリコードと検証コードを近くに配置する

2 participants