package
1.23.0
Repository: https://github.com/shogo82148/std.git
Documentation: pkg.go.dev

# Functions

TestFSは、ファイルシステムの実装をテストします。 fsys内の全てのファイルツリーを走査し、 各ファイルが正しく動作するかを開いて確認します。 また、ファイルシステムが少なくとも期待されるファイルを含んでいることも確認します。 特別なケースとして、期待されるファイルが一つもリストされていない場合、fsysは空でなければなりません。 それ以外の場合、fsysは少なくともリストされたファイルを含んでいなければなりません。他のファイルも含むことができます。 fsysの内容は、TestFSと同時に変更してはなりません。 TestFSが何かしらの不適切な振る舞いを見つけた場合、最初のエラーまたはエラーのリストを返します。 検査には [errors.Is] または [errors.As] を使用します。 テスト内での典型的な使用法は以下の通りです: if err := fstest.TestFS(myFS, "file/that/should/be/present"); err != nil { t.Fatal(err) }.

# Structs

MapFileは、[MapFS] 内の単一のファイルを説明します。.

# Type aliases

MapFSは、テストで使用するためのシンプルなメモリ内ファイルシステムであり、 パス名(Openへの引数)からそれらが表すファイルやディレクトリの情報へのマップとして表されます。 マップには、マップに含まれるファイルの親ディレクトリを含める必要はありません。 必要に応じてそれらは合成されます。 しかし、[MapFile.Mode] の [fs.ModeDir] ビットを設定することで、ディレクトリをまだ含めることができます。 これは、ディレクトリの [fs.FileInfo] に対する詳細な制御が必要であるか、 空のディレクトリを作成するために必要かもしれません。 ファイルシステムの操作は、マップから直接読み取るため、 必要に応じてマップを編集することでファイルシステムを変更できます。 その意味するところは、ファイルシステムの操作はマップの変更と同時に実行してはならず、 それはレース条件を引き起こす可能性があるということです。 別の意味するところは、ディレクトリのオープンや読み取りには、 マップ全体を反復処理する必要があるため、MapFSは通常、 数百エントリ以上またはディレクトリの読み取りを使用しないで使用する必要があります。.