sqlite3 を使用する次の C コードがあります。
if(SQLITE_OK == sqlite3_initialize()) {
self->db_open_result = sqlite3_open(self->db_uri, &(self->db));
} else {
self->db_open_result = SQLITE_ERROR;
}
明らかに、コードが正しく、期待どおりに動作するという確信はかなりあります。ただし、gcov/lcov を使用して単体テストのコード カバレッジを測定しています。この場合、カバレッジ数を 100% にする方法に興味があります。通常の状況sqlite3_initialize()
では、決して失敗しないため、else
句が実行されることはありません。
完全に破壊的ではない、これを失敗させる方法はありますか?