github.com/hxx258456/ccgo@v0.0.5-0.20230213014102-48b35f46f66f/grpc/internal/credentials/util_test.go (about) 1 /* 2 * 3 * Copyright 2020 gRPC authors. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * 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 package credentials 20 21 import ( 22 "reflect" 23 "testing" 24 ) 25 26 func (s) TestAppendH2ToNextProtos(t *testing.T) { 27 tests := []struct { 28 name string 29 ps []string 30 want []string 31 }{ 32 { 33 name: "empty", 34 ps: nil, 35 want: []string{"h2"}, 36 }, 37 { 38 name: "only h2", 39 ps: []string{"h2"}, 40 want: []string{"h2"}, 41 }, 42 { 43 name: "with h2", 44 ps: []string{"alpn", "h2"}, 45 want: []string{"alpn", "h2"}, 46 }, 47 { 48 name: "no h2", 49 ps: []string{"alpn"}, 50 want: []string{"alpn", "h2"}, 51 }, 52 } 53 for _, tt := range tests { 54 t.Run(tt.name, func(t *testing.T) { 55 if got := AppendH2ToNextProtos(tt.ps); !reflect.DeepEqual(got, tt.want) { 56 t.Errorf("AppendH2ToNextProtos() = %v, want %v", got, tt.want) 57 } 58 }) 59 } 60 }