Go에서 맵 동등성 테스트
테이블 중심 테스트에서는 맵 동등성을 테스트하는 문제가 발생합니다. 길이와 키-값 쌍을 수동으로 확인하는 것은 지루한 일이 되며, 특히 다양한 지도 유형에 대해 반복할 때 더욱 그렇습니다.
관용적인 솔루션
관용적인 솔루션은 Go 표준 라이브러리의 반영 패키지를 활용합니다. Reflect.DeepEqual 함수는 두 개의 인터페이스{} 인수를 취하고 다음을 통해 동일성을 확인합니다.
예
import "reflect" func TestMapEquality(t *testing.T) { m1 := map[string]int{"foo": 1, "bar": 2} m2 := map[string]int{"foo": 1, "bar": 2} eq := reflect.DeepEqual(m1, m2) if !eq { t.Errorf("Maps not equal: %v", m1, m2) } }
추가 참고사항
위 내용은 Go에서 지도 동등성을 테스트하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!