diff --git a/tests/Unit/Traffic/Message/Multipart/FileTest.php b/tests/Unit/Traffic/Message/Multipart/FileTest.php index 5894c25f..14907fa0 100644 --- a/tests/Unit/Traffic/Message/Multipart/FileTest.php +++ b/tests/Unit/Traffic/Message/Multipart/FileTest.php @@ -11,6 +11,19 @@ class FileTest extends TestCase { + public static function provideEmbeddings(): iterable + { + yield [['Content-Type' => 'image/jpeg'], null]; + yield [['Content-Type' => 'image/jpeg', 'Content-Disposition' => 'inline; filename="foo.jpg"'], null]; + yield [['Content-Type' => 'image/jpeg', 'Content-Disposition' => 'inline; filename="foo.jpg"; id="bar"'], null]; + yield [['Content-Type' => 'image/png; name="embedding-name"; id="bar"'], 'embedding-name']; + yield [['Content-Type' => 'image/png; a-name=test; name=embedding-name; b-name=test'], 'embedding-name']; + yield [['Content-Type' => 'image/png; name=\'embedding-name\''], 'embedding-name']; + yield [['Content-Disposition' => 'inline; name="embedding-name"'], 'embedding-name']; + yield [['Content-Disposition' => 'inline; ; a-name="a"; name=embedding; file-name=3'], 'embedding']; + yield [['Content-Disposition' => 'inline; name=\'embedding-1\''], 'embedding-1']; + } + public function testGetters(): void { $file = new File(['Foo' => 'Bar'], 'name', 'filename'); @@ -30,19 +43,6 @@ public function testWithHeader(): void self::assertSame('baz', $new->getHeaderLine('foo')); } - public static function provideEmbeddings(): iterable - { - yield [['Content-Type' => 'image/jpeg'], null]; - yield [['Content-Type' => 'image/jpeg', 'Content-Disposition' => 'inline; filename="foo.jpg"'], null]; - yield [['Content-Type' => 'image/jpeg', 'Content-Disposition' => 'inline; filename="foo.jpg"; id="bar"'], null]; - yield [['Content-Type' => 'image/png; name="embedding-name"; id="bar"'], 'embedding-name']; - yield [['Content-Type' => 'image/png; a-name=test; name=embedding-name; b-name=test'], 'embedding-name']; - yield [['Content-Type' => 'image/png; name=\'embedding-name\''], 'embedding-name']; - yield [['Content-Disposition' => 'inline; name="embedding-name"'], 'embedding-name']; - yield [['Content-Disposition' => 'inline; ; a-name="a"; name=embedding; file-name=3'], 'embedding']; - yield [['Content-Disposition' => 'inline; name=\'embedding-1\''], 'embedding-1']; - } - #[DataProvider('provideEmbeddings')] public function testEmbeddingId(array $headers, ?string $result): void {