From f0d2015c3da8255e2793657e2d1ca65b7cc51acc Mon Sep 17 00:00:00 2001 From: Vihas Makwana Date: Tue, 26 Nov 2024 21:26:15 +0530 Subject: [PATCH] chore: test --- metric/cpu/metric_windows_test.go | 51 +++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 metric/cpu/metric_windows_test.go diff --git a/metric/cpu/metric_windows_test.go b/metric/cpu/metric_windows_test.go new file mode 100644 index 000000000..26755f687 --- /dev/null +++ b/metric/cpu/metric_windows_test.go @@ -0,0 +1,51 @@ +// Licensed to Elasticsearch B.V. under one or more contributor +// license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright +// ownership. Elasticsearch B.V. licenses this file to you under +// the Apache License, Version 2.0 (the "License"); you may +// not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +//go:build windows + +package cpu + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestCounterLength(t *testing.T) { + query, err := buildQuery() + require.NoError(t, err) + require.NoError(t, query.CollectData()) + + kernelRawData, err := query.GetRawCounterArray(totalKernelTimeCounter, true) + require.NoError(t, err) + + idleRawData, err := query.GetRawCounterArray(totalIdleTimeCounter, true) + require.NoError(t, err) + + userRawData, err := query.GetRawCounterArray(totalUserTimeCounter, true) + require.NoError(t, err) + + require.Equal(t, len(kernelRawData), len(idleRawData)) + require.Equal(t, len(userRawData), len(idleRawData)) + + for i := 0; i < len(userRawData); i++ { + require.Equal(t, userRawData[i].InstanceName, kernelRawData[i].InstanceName, "InstanceName should be equal") + } + for i := 0; i < len(kernelRawData); i++ { + require.Equal(t, kernelRawData[i].InstanceName, idleRawData[i].InstanceName, "InstanceName should be equal") + } +}