不可欠なSQLite DBファイルの読み取りに失敗した場合(I / Oエラーが発生した場合)、ソフトウェアが期待どおりに反応するかどうかを自動的にテストしたいと思います。まさにそれは数日前にクライアントで起こりました。手動で修正しましたが、自動コードを作成して修正し、テストするために壊れたファイルにアクセスする必要があります。
Unixのすべてがファイルであるため、(たとえば/ devで)読み取ろうとすると常にI / Oエラーが発生する特殊なファイルがあるのではないかと考えました。
同様のファイル(imo)は次のとおりです。
/dev/full
書き込もうとすると、常に「デバイスに空き容量がありません」と表示されます/dev/null
そして/dev/zero
そのため、そのようなファイルが必要であると想定しました(ただし、まだ見つかりませんでした)。
誰かがそのようなファイルまたは私が望ましい結果を得るための他の方法を知っていますか(意図的に欠陥のあるパーティションイメージ、LD_PRELOADを使用したopen()の周りのラッパー、...)?
ここに行く最良の方法は何ですか?