verify 機能の追加
ddddddO opened this issue · 4 comments
ddddddO commented
gtreeと同様に、framedコマンドはyamlに基づいてディレクトリ生成できる。
このframedには、既存ディレクトリがyamlの記述に基づいているかチェックする機能があるよう。
https://github.com/mactat/framed#3-test-project-structure-cicd
Markdownとコマンドラインフラグとで既存ディレクトリが意図通りか検査する機能を追加したい
ddddddO commented
- Markdownに記載されてるディレクトリ構造が正
- この構造が全て、ディレクトリに存在すればverifiedとする(Markdownに記載無いディレクトリがあってもok)
- Markdownに有るパスがディレクトリに無い時のパスはすべて標準エラー出力に出力
- この構造と完全一致したディレクトリであればverifiedとする(Markdownに記載無いディレクトリがあればng)
strict
モードとして扱う- Markdownに無いパスがディレクトリに有る時のパスはすべて標準エラー出力に出力
- Markdownに有るパスがディレクトリに無い時のパスはすべて標準エラー出力に出力
- この構造が全て、ディレクトリに存在すればverifiedとする(Markdownに記載無いディレクトリがあってもok)
- growerはそのまま使える
- verifierなinterface用意して実装
- 全nodeで、
hasChild
== false なnodeをmapのキーにすればいい - baseのパスどうする?
- Markdown内に
/
あると面倒だから、enableValidationを有効にしておく - 一旦、カレントディレクトリ + node.path とする。あとで、フラグとOptionでbaseパスを指定できるようにする
- ディレクトリツリーは、https://github.com/ddddddO/work/blob/master/go/cmd/fs/main.go で取得
- Markdown内に
- 全nodeで、
- 公開関数として
Verify
func・VerifyProgrammably
を定義 -e
フラグ,WithFileExtentions
は必要?- いらない気がする。実装手間だしuxも悪い
ddddddO commented
ddddddO commented
この実装のunit testが未対応
ddddddO commented
unit test の充実はあとで