trpc.group/trpc-go/trpc-go@v1.0.3/internal/codec/serialization_test.go (about)

     1  //
     2  //
     3  // Tencent is pleased to support the open source community by making tRPC available.
     4  //
     5  // Copyright (C) 2023 THL A29 Limited, a Tencent company.
     6  // All rights reserved.
     7  //
     8  // If you have downloaded a copy of the tRPC source code from Tencent,
     9  // please note that tRPC source code is licensed under the  Apache 2.0 License,
    10  // A copy of the Apache 2.0 License is included in this file.
    11  //
    12  //
    13  
    14  package codec_test
    15  
    16  import (
    17  	"testing"
    18  
    19  	"trpc.group/trpc-go/trpc-go/codec"
    20  	icodec "trpc.group/trpc-go/trpc-go/internal/codec"
    21  )
    22  
    23  func TestIsValidSerializationType(t *testing.T) {
    24  	tests := []struct {
    25  		name string
    26  		arg  int
    27  		want bool
    28  	}{
    29  		{"valid serialization type that is defined in codec", codec.SerializationTypePB, true},
    30  		{"valid serialization type that isn't defined in codec", 10000, true},
    31  		{"invalid serialization type", -1, false},
    32  	}
    33  	for _, tt := range tests {
    34  		t.Run(tt.name, func(t *testing.T) {
    35  			if got := icodec.IsValidSerializationType(tt.arg); got != tt.want {
    36  				t.Errorf("IsValidSerializationType() = %v, want %v", got, tt.want)
    37  			}
    38  		})
    39  	}
    40  }