From b11c1682d8165f19d169844752b01a977a019f40 Mon Sep 17 00:00:00 2001 From: gonzaloriestra <14979109+gonzaloriestra@users.noreply.github.com> Date: Mon, 24 Aug 2026 00:33:19 +0000 Subject: [PATCH] [Tests] Add unit tests for isValidMetricName validator --- .../vendor/otel-js/utils/validators.test.ts | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 packages/cli-kit/src/public/node/vendor/otel-js/utils/validators.test.ts diff --git a/packages/cli-kit/src/public/node/vendor/otel-js/utils/validators.test.ts b/packages/cli-kit/src/public/node/vendor/otel-js/utils/validators.test.ts new file mode 100644 index 00000000000..bf41aaa305d --- /dev/null +++ b/packages/cli-kit/src/public/node/vendor/otel-js/utils/validators.test.ts @@ -0,0 +1,24 @@ +import {isValidMetricName} from './validators.js' +import {diag} from '@opentelemetry/api' +import {describe, expect, test, vi} from 'vitest' + +describe('isValidMetricName', () => { + test('returns true for valid metric names', () => { + expect(isValidMetricName('valid_metric_name')).toBe(true) + expect(isValidMetricName('metric')).toBe(true) + expect(isValidMetricName('_metric')).toBe(true) + expect(isValidMetricName('METRIC_NAME')).toBe(true) + }) + + test('returns false and logs warning for invalid metric names', () => { + const diagSpy = vi.spyOn(diag, 'warn').mockImplementation(() => {}) + + expect(isValidMetricName('invalid-metric')).toBe(false) + expect(isValidMetricName('123metric')).toBe(false) + expect(isValidMetricName('metric.name')).toBe(false) + expect(isValidMetricName('metric@name')).toBe(false) + expect(isValidMetricName('metric name')).toBe(false) + + expect(diagSpy).toHaveBeenCalled() + }) +})