diff --git a/packages/opentelemetry-node/test/registration.test.ts b/packages/opentelemetry-node/test/registration.test.ts index 392568f1c1..e199898a13 100644 --- a/packages/opentelemetry-node/test/registration.test.ts +++ b/packages/opentelemetry-node/test/registration.test.ts @@ -16,7 +16,6 @@ import { context, - NoopTextMapPropagator, propagation, trace, ProxyTracerProvider, @@ -25,7 +24,6 @@ import { AsyncHooksContextManager, AsyncLocalStorageContextManager, } from '@opentelemetry/context-async-hooks'; -import { NoopContextManager } from '@opentelemetry/api'; import { CompositePropagator } from '@opentelemetry/core'; import * as assert from 'assert'; import { NodeTracerProvider } from '../src'; @@ -58,28 +56,29 @@ describe('API registration', () => { it('should register configured implementations', () => { const tracerProvider = new NodeTracerProvider(); - const contextManager = new NoopContextManager(); - const propagator = new NoopTextMapPropagator(); + const mockContextManager = { disable() {} } as any; + const mockPropagator = {} as any; tracerProvider.register({ - contextManager, - propagator, + contextManager: mockContextManager, + propagator: mockPropagator, }); - assert.ok(context['_getContextManager']() === contextManager); - assert.ok(propagation['_getGlobalPropagator']() === propagator); + assert.strictEqual(context['_getContextManager'](), mockContextManager); + assert.strictEqual(propagation['_getGlobalPropagator'](), mockPropagator); const apiTracerProvider = trace.getTracerProvider() as ProxyTracerProvider; - assert.ok(apiTracerProvider.getDelegate() === tracerProvider); + assert.strictEqual(apiTracerProvider.getDelegate(), tracerProvider); }); it('should skip null context manager', () => { const tracerProvider = new NodeTracerProvider(); + const ctxManager = context['_getContextManager'](); tracerProvider.register({ contextManager: null, }); - assert.ok(context['_getContextManager']() instanceof NoopContextManager); + assert.strictEqual(context['_getContextManager'](), ctxManager, "context manager should not change"); assert.ok( propagation['_getGlobalPropagator']() instanceof CompositePropagator @@ -90,14 +89,14 @@ describe('API registration', () => { }); it('should skip null propagator', () => { + const propagator = propagation['_getGlobalPropagator'](); + const tracerProvider = new NodeTracerProvider(); tracerProvider.register({ propagator: null, }); - assert.ok( - propagation['_getGlobalPropagator']() instanceof NoopTextMapPropagator - ); + assert.strictEqual(propagation['_getGlobalPropagator'](), propagator); assert.ok(context['_getContextManager']() instanceof DefaultContextManager); diff --git a/packages/opentelemetry-sdk-node/test/sdk.test.ts b/packages/opentelemetry-sdk-node/test/sdk.test.ts index f9274caad3..920d29f6f2 100644 --- a/packages/opentelemetry-sdk-node/test/sdk.test.ts +++ b/packages/opentelemetry-sdk-node/test/sdk.test.ts @@ -16,8 +16,6 @@ import { context, - NoopTextMapPropagator, - NoopTracerProvider, propagation, ProxyTracerProvider, trace, @@ -29,7 +27,6 @@ import { AsyncHooksContextManager, AsyncLocalStorageContextManager, } from '@opentelemetry/context-async-hooks'; -import { NoopContextManager } from '@opentelemetry/api'; import { CompositePropagator } from '@opentelemetry/core'; import { ConsoleMetricExporter, MeterProvider } from '@opentelemetry/metrics'; import { NodeTracerProvider } from '@opentelemetry/node'; @@ -89,6 +86,10 @@ const DefaultContextManager = semver.gte(process.version, '14.8.0') : AsyncHooksContextManager; describe('Node SDK', () => { + let ctxManager: any; + let propagator: any; + let delegate: any; + before(() => { nock.disableNetConnect(); }); @@ -98,6 +99,10 @@ describe('Node SDK', () => { trace.disable(); propagation.disable(); metrics.disable(); + + ctxManager = context['_getContextManager'](); + propagator = propagation['_getGlobalPropagator'](); + delegate = (trace.getTracerProvider() as ProxyTracerProvider).getDelegate(); }); describe('Basic Registration', () => { @@ -108,13 +113,9 @@ describe('Node SDK', () => { await sdk.start(); - assert.ok(context['_getContextManager']() instanceof NoopContextManager); - assert.ok( - propagation['_getGlobalPropagator']() instanceof NoopTextMapPropagator - ); - - const apiTracerProvider = trace.getTracerProvider() as ProxyTracerProvider; - assert.ok(apiTracerProvider.getDelegate() instanceof NoopTracerProvider); + assert.strictEqual(context['_getContextManager'](), ctxManager, "context manager should not change"); + assert.strictEqual(propagation['_getGlobalPropagator'](), propagator, "propagator should not change"); + assert.strictEqual((trace.getTracerProvider() as ProxyTracerProvider).getDelegate(), delegate, "tracer provider should not have changed"); assert.ok(metrics.getMeterProvider() instanceof NoopMeterProvider); }); @@ -172,13 +173,9 @@ describe('Node SDK', () => { await sdk.start(); - assert.ok(context['_getContextManager']() instanceof NoopContextManager); - assert.ok( - propagation['_getGlobalPropagator']() instanceof NoopTextMapPropagator - ); - - const apiTracerProvider = trace.getTracerProvider() as ProxyTracerProvider; - assert.ok(apiTracerProvider.getDelegate() instanceof NoopTracerProvider); + assert.strictEqual(context['_getContextManager'](), ctxManager, "context manager should not change"); + assert.strictEqual(propagation['_getGlobalPropagator'](), propagator, "propagator should not change"); + assert.strictEqual((trace.getTracerProvider() as ProxyTracerProvider).getDelegate(), delegate, "tracer provider should not have changed"); assert.ok(metrics.getMeterProvider() instanceof MeterProvider); }); diff --git a/packages/opentelemetry-web/test/registration.test.ts b/packages/opentelemetry-web/test/registration.test.ts index 89ff0c0cd4..baab6a4d77 100644 --- a/packages/opentelemetry-web/test/registration.test.ts +++ b/packages/opentelemetry-web/test/registration.test.ts @@ -16,8 +16,6 @@ import { context, - NoopContextManager, - NoopTextMapPropagator, propagation, trace, ProxyTracerProvider, @@ -48,8 +46,8 @@ describe('API registration', () => { it('should register configured implementations', () => { const tracerProvider = new WebTracerProvider(); - const contextManager = new NoopContextManager(); - const propagator = new NoopTextMapPropagator(); + const contextManager = { disable() { }, enable() { } } as any; + const propagator = {} as any; tracerProvider.register({ contextManager, @@ -64,12 +62,13 @@ describe('API registration', () => { }); it('should skip null context manager', () => { + const ctxManager = context['_getContextManager'](); const tracerProvider = new WebTracerProvider(); tracerProvider.register({ contextManager: null, }); - assert.ok(context['_getContextManager']() instanceof NoopContextManager); + assert.strictEqual(context['_getContextManager'](), ctxManager, "context manager should not change"); assert.ok( propagation['_getGlobalPropagator']() instanceof CompositePropagator @@ -79,14 +78,13 @@ describe('API registration', () => { }); it('should skip null propagator', () => { + const propagator = propagation['_getGlobalPropagator'](); const tracerProvider = new WebTracerProvider(); tracerProvider.register({ propagator: null, }); - assert.ok( - propagation['_getGlobalPropagator']() instanceof NoopTextMapPropagator - ); + assert.strictEqual(propagation["_getGlobalPropagator"](), propagator, "propagator should not change") assert.ok(context['_getContextManager']() instanceof StackContextManager); const apiTracerProvider = trace.getTracerProvider() as ProxyTracerProvider;