실패 테스트로 새 요구를 고정
case_insensitive는 rUsT가
Rust와 Trust me.를 모두 찾는지 먼저
확인한다.
IGNORE_CASE는 설정 읽기와 검색 실행 사이를 잇는다
환경 변수는 Config::build에서 한 번 읽고,
run은 저장된 ignore_case 값만 보고 두 검색
함수 중 하나를 호출한다.
case_insensitive는 rUsT가
Rust와 Trust me.를 모두 찾는지 먼저
확인한다.
query.to_lowercase()와
line.to_lowercase()로 대소문자 차이를 검색 조건에서
제거한다.
Config에 실행 옵션 보관
ignore_case: bool을 추가해 명령줄 인수와 환경 변수 해석
결과를 실행 단계로 넘긴다.
run에서 검색 함수만 선택
config.ignore_case가 참이면
search_case_insensitive, 거짓이면 기존
search를 사용한다.