trpc.group/trpc-go/trpc-go@v1.0.3/metrics/gauge_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 metrics_test
    15  
    16  import (
    17  	"testing"
    18  
    19  	"trpc.group/trpc-go/trpc-go/metrics"
    20  
    21  	"github.com/stretchr/testify/assert"
    22  )
    23  
    24  func Test_gauge_Set(t *testing.T) {
    25  	metrics.RegisterMetricsSink(&metrics.ConsoleSink{})
    26  	type fields struct {
    27  		name string
    28  	}
    29  	type args struct {
    30  		v float64
    31  	}
    32  	tests := []struct {
    33  		name   string
    34  		fields fields
    35  		args   args
    36  	}{
    37  		{"gauge-cpu.avgload", fields{"cpu.avgload"}, args{0.75}},
    38  		{"gauge-mem.avgload", fields{"mem.avgload"}, args{0.80}},
    39  	}
    40  	for _, tt := range tests {
    41  		t.Run(tt.name, func(t *testing.T) {
    42  			g := metrics.Gauge(tt.fields.name)
    43  			assert.NotNil(t, g)
    44  			g.Set(tt.args.v)
    45  		})
    46  	}
    47  }