sqlmock을 사용하여 Gorm 테스트에서 쿼리를 일치시키려고 하면 다음이 발생합니다. 오류가 발생했습니다:
(path/to/my/project/database.go:263) [2020-01-08 10:29:40] Query: could not match actual sql: "SELECT * FROM "storage_pools" WHERE "storage_pools"."deleted_at" IS NULL AND ((poolid = ?)) ORDER BY "storage_pools"."id" ASC LIMIT 1" with expected regexp "SELECT * FROM "storage_pools" WHERE "storage_pools"."deleted_at" IS NULL AND ((poolid = ?)) ORDER BY "storage_pools"."id" ASC LIMIT 1"
이 문제는 sqlmock 쿼리 일치자로 regexp를 사용하는 데서 발생합니다. 기본적으로 sqlmock은 실제 쿼리와 예상 패턴 간의 정확한 일치가 필요한 엄격한 일치 쿼리 일치자를 사용합니다.
이 문제를 해결하려면 QueryMatcherEqual 옵션을 사용하여 기본 쿼리 일치자를 바꾸세요.
QueryMatcherOption(sqlmock.QueryMatcherEqual)
위 내용은 로그의 동일한 출력에도 불구하고 Sqlmock이 내 쿼리와 일치하지 못하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!