prometheusio_exporter-8.x-1.x-dev/tests/src/Unit/Plugin/MetricsCollector/AbstractTestBaseMetrics.php

tests/src/Unit/Plugin/MetricsCollector/AbstractTestBaseMetrics.php
<?php

namespace Drupal\Tests\prometheusio_exporter\Unit\Plugin\MetricsCollector;

use Drupal\Tests\UnitTestCase;
use Drupal\prometheusio_exporter\Bridge\PrometheusBridge;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Drupal\prometheusio_exporter\MetricsCollectorManager;
use Drupal\prometheusio_exporter\Prometheus\Storage\DrupalCache;
use Drupal\Tests\prometheusio_exporter\Unit\Cache\PermanentMemoryProxyBackend;

/**
 * Common abstract class.
 */
abstract class AbstractTestBaseMetrics extends UnitTestCase {

  use \Prophecy\PhpUnit\ProphecyTrait;

  /**
   * The promPHP bridge.
   *
   * @var \Drupal\prometheusio_exporter\Bridge\PrometheusBridgeInterface
   */
  protected $prometheusBridge;

  /**
   * {@inheritdoc}
   */
  protected function setUp(): void {
    $drupalCache = new DrupalCache(new PermanentMemoryProxyBackend());
    $prometheusBridge = new PrometheusBridge($drupalCache);
    $container = $this->getProphet()->prophesize(ContainerInterface::class);
    $mcm = $this->getProphet()->prophesize(MetricsCollectorManager::class);
    $container->get('prometheusio_exporter.metrics_collector_manager')->willReturn($mcm);
    $prometheusBridge->setContainer($container->reveal());
    $this->prometheusBridge = $prometheusBridge;
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc