From: jenkins-bot Date: Wed, 9 Aug 2017 16:36:22 +0000 (+0000) Subject: Merge "MimeAnalyzer: Add testcases for mp3 detection" X-Git-Tag: 1.31.0-rc.0~2438 X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=commitdiff_plain;h=36395150104588f2afea866c330b683e4329fa48;hp=-c Merge "MimeAnalyzer: Add testcases for mp3 detection" --- 36395150104588f2afea866c330b683e4329fa48 diff --combined tests/phpunit/includes/libs/mime/MimeAnalyzerTest.php index cf891e288d,bf2a3f665c..64f496049b --- a/tests/phpunit/includes/libs/mime/MimeAnalyzerTest.php +++ b/tests/phpunit/includes/libs/mime/MimeAnalyzerTest.php @@@ -1,4 -1,8 +1,8 @@@ mimeAnalyzer ) ); + $method = $class->getMethod( 'doGuessMimeType' ); + $method->setAccessible( true ); + return $method->invokeArgs( $this->mimeAnalyzer, $parameters ); + } + /** * @dataProvider providerImproveTypeFromExtension * @param string $ext File extension (no leading dot) @@@ -57,7 -68,7 +68,7 @@@ function testOggRecognize() { $oggFile = __DIR__ . '/../../../data/media/say-test.ogg'; $actualType = $this->mimeAnalyzer->getMediaType( $oggFile, 'application/ogg' ); - $this->assertEquals( $actualType, MEDIATYPE_AUDIO ); + $this->assertEquals( MEDIATYPE_AUDIO, $actualType ); } /** @@@ -67,6 -78,51 +78,51 @@@ function testOpusRecognize() { $oggFile = __DIR__ . '/../../../data/media/say-test.opus'; $actualType = $this->mimeAnalyzer->getMediaType( $oggFile, 'application/ogg' ); - $this->assertEquals( $actualType, MEDIATYPE_AUDIO ); + $this->assertEquals( MEDIATYPE_AUDIO, $actualType ); } + + /** + * Test to make sure that mp3 files are detected as audio type + */ + function testMP3AsAudio() { + $file = __DIR__ . '/../../../data/media/say-test-with-id3.mp3'; + $actualType = $this->mimeAnalyzer->getMediaType( $file ); + $this->assertEquals( MEDIATYPE_AUDIO, $actualType ); + } + + /** + * Test to make sure that MP3 with id3 tag is recognized + */ + function testMP3WithID3Recognize() { + $file = __DIR__ . '/../../../data/media/say-test-with-id3.mp3'; + $actualType = $this->doGuessMimeType( [ $file, 'mp3' ] ); + $this->assertEquals( 'audio/mpeg', $actualType ); + } + + /** + * Test to make sure that MP3 without id3 tag is recognized (MPEG-1 sample rates) + */ + function testMP3NoID3RecognizeMPEG1() { + $file = __DIR__ . '/../../../data/media/say-test-mpeg1.mp3'; + $actualType = $this->doGuessMimeType( [ $file, 'mp3' ] ); + $this->assertEquals( 'audio/mpeg', $actualType ); + } + + /** + * Test to make sure that MP3 without id3 tag is recognized (MPEG-2 sample rates) + */ + function testMP3NoID3RecognizeMPEG2() { + $file = __DIR__ . '/../../../data/media/say-test-mpeg2.mp3'; + $actualType = $this->doGuessMimeType( [ $file, 'mp3' ] ); + $this->assertEquals( 'audio/mpeg', $actualType ); + } + + /** + * Test to make sure that MP3 without id3 tag is recognized (MPEG-2.5 sample rates) + */ + function testMP3NoID3RecognizeMPEG2_5() { + $file = __DIR__ . '/../../../data/media/say-test-mpeg2.5.mp3'; + $actualType = $this->doGuessMimeType( [ $file, 'mp3' ] ); + $this->assertEquals( 'audio/mpeg', $actualType ); + } }