package testutil import ( "reflect" "sort" ) // SliceEqual 检查两个字符串切片是否完全相等(忽略顺序) func SliceEqual(a, b []string) bool { if len(a) != len(b) { return false } // 复制切片以避免修改原始数据 aCopy := make([]string, len(a)) bCopy := make([]string, len(b)) copy(aCopy, a) copy(bCopy, b) // 排序两个切片 sort.Strings(aCopy) sort.Strings(bCopy) // 比较排序后的切片 return reflect.DeepEqual(aCopy, bCopy) }