jsonで定義したdirectory構造に当てはまっているかどうかを評価する.
(npmで提供されていたが、npmを入れたくないので作る)
以下のjson型のobjectでfileとdirectoryを表現する
[
{
"name": "name",
"type": "dir or file",
"contents": [{...}, ...] // only dir
}
]
{
"file": null,
"dir": {...}
}
tree構造である. bfs(幅優先探索)アルゴリズムを使用する. lsで表示されたlistをjsonと比較し、directoryがあったら後に同じように行う.
- json読み込み. dataに代入
- dataとpathをqueueに入れる
- check_list(queue.pop())
- queueが空になるまで繰り返す
- すべてチェックし終わったら、正常値を返して終了.
- lsでfileとdirectoryを表示
- lsで表示した内容をlistにする
- listとdataの数が一致. 一つずつdata["name"]で確認.
- directoryの場合はdata["dirname"]とdirectoryのpathをキューに渡す.