dubbo.apache.org/dubbo-go/v3@v3.1.1/xds/balancer/priority/utils_test.go (about) 1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 /* 19 * 20 * Copyright 2021 gRPC authors. 21 * 22 */ 23 24 package priority 25 26 import ( 27 "testing" 28 ) 29 30 func TestCompareStringSlice(t *testing.T) { 31 tests := []struct { 32 name string 33 a []string 34 b []string 35 want bool 36 }{ 37 { 38 name: "equal", 39 a: []string{"a", "b"}, 40 b: []string{"a", "b"}, 41 want: true, 42 }, 43 { 44 name: "not equal", 45 a: []string{"a", "b"}, 46 b: []string{"a", "b", "c"}, 47 want: false, 48 }, 49 { 50 name: "both empty", 51 a: nil, 52 b: nil, 53 want: true, 54 }, 55 { 56 name: "one empty", 57 a: []string{"a", "b"}, 58 b: nil, 59 want: false, 60 }, 61 } 62 for _, tt := range tests { 63 t.Run(tt.name, func(t *testing.T) { 64 if got := equalStringSlice(tt.a, tt.b); got != tt.want { 65 t.Errorf("equalStringSlice(%v, %v) = %v, want %v", tt.a, tt.b, got, tt.want) 66 } 67 }) 68 } 69 }