diff --git a/phpstan.neon.dist b/phpstan.neon.dist
index 80724755..1b67b321 100644
--- a/phpstan.neon.dist
+++ b/phpstan.neon.dist
@@ -50,4 +50,8 @@ parameters:
-
message: "#.*return with type T is not subtype.*#"
paths:
- - src/SDK/Common/InstrumentationScope
\ No newline at end of file
+ - src/SDK/Common/InstrumentationScope
+ -
+ message: "#.*expects Google\\\\Protobuf\\\\RepeatedField.*#"
+ paths:
+ - src/Contrib/Otlp
\ No newline at end of file
diff --git a/psalm.xml.dist b/psalm.xml.dist
index 0ac60dbe..c14e435b 100644
--- a/psalm.xml.dist
+++ b/psalm.xml.dist
@@ -32,6 +32,12 @@
+
+
+
+
+
+
diff --git a/tests/Unit/Contrib/Otlp/MetricConverterTest.php b/tests/Unit/Contrib/Otlp/MetricConverterTest.php
index 52c56dc0..18c17a37 100644
--- a/tests/Unit/Contrib/Otlp/MetricConverterTest.php
+++ b/tests/Unit/Contrib/Otlp/MetricConverterTest.php
@@ -178,13 +178,15 @@ final class MetricConverterTest extends TestCase
);
}
+ /**
+ * @psalm-suppress InvalidArgument
+ */
public function test_multiple_resources_result_in_multiple_resource_metrics(): void
{
$resourceA = ResourceInfo::create(Attributes::create(['foo' => 'bar']));
$resourceB = ResourceInfo::create(Attributes::create(['foo' => 'baz']));
$this->assertCount(
2,
- /** @phpstan-ignore-next-line */
(new MetricConverter())->convert([
new Metric(
$this->createMock(InstrumentationScopeInterface::class),
diff --git a/tests/Unit/Contrib/Otlp/SpanConverterTest.php b/tests/Unit/Contrib/Otlp/SpanConverterTest.php
index d12afa54..3ee0c248 100644
--- a/tests/Unit/Contrib/Otlp/SpanConverterTest.php
+++ b/tests/Unit/Contrib/Otlp/SpanConverterTest.php
@@ -32,6 +32,9 @@ use PHPUnit\Framework\TestCase;
#[CoversClass(SpanConverter::class)]
class SpanConverterTest extends TestCase
{
+ /**
+ * @psalm-suppress InvalidArgument
+ */
public function test_convert_span_to_payload(): void
{
$context = SpanContext::getInvalid();
@@ -62,7 +65,6 @@ class SpanConverterTest extends TestCase
$this->assertSame($context->getTraceId(), bin2hex($link->getTraceId()));
$this->assertSame($context->getSpanId(), bin2hex($link->getSpanId()));
$this->assertSame(V1\SpanFlags::SPAN_FLAGS_CONTEXT_HAS_IS_REMOTE_MASK, $link->getFlags());
- /** @phpstan-ignore-next-line */
$this->assertCount(1, $link->getAttributes());
}
@@ -310,6 +312,9 @@ class SpanConverterTest extends TestCase
$this->assertCount(2, $result[0]->getResource()->getAttributes());
}
+ /**
+ * @psalm-suppress InvalidArgument
+ */
public function test_multiple_resources_result_in_multiple_resource_spans(): void
{
$resourceA = ResourceInfo::create(Attributes::create(['foo' => 'bar']));
@@ -319,13 +324,14 @@ class SpanConverterTest extends TestCase
(new SpanData())->setResource($resourceA),
(new SpanData())->setResource($resourceB),
])->getResourceSpans();
- /** @phpstan-ignore-next-line */
$this->assertCount(2, $result);
}
+ /**
+ * @psalm-suppress InvalidArgument
+ */
public function test_otlp_no_spans(): void
{
- /** @phpstan-ignore-next-line */
$this->assertCount(0, (new SpanConverter())->convert([])->getResourceSpans());
}