restoreEnvironmentVariables(); } /** * @dataProvider exporterProvider * @psalm-suppress ArgumentTypeCoercion */ public function test_create(string $exporter): void { $_SERVER[Variables::OTEL_METRICS_EXPORTER] = $exporter; $provider = (new MeterProviderFactory())->create(); $this->assertInstanceOf(MeterInterface::class, $provider->getMeter('test')); } public static function exporterProvider(): array { return [ 'otlp' => [KnownValues::VALUE_OTLP], 'none' => [KnownValues::VALUE_NONE], 'unimplemented' => ['foo'], ]; } }