diff --git a/tests/FileTextCacheDatabaseTest.php b/tests/FileTextCacheDatabaseTest.php index e300c19..e7fb242 100644 --- a/tests/FileTextCacheDatabaseTest.php +++ b/tests/FileTextCacheDatabaseTest.php @@ -1,23 +1,23 @@ set(Database::class, 'max_content_length', 5); - Config::inst()->update('FileTextCache_Database', 'max_content_length', 5); - $cache = new FileTextCache_Database(); - $file = $this->getMock('File', array('write')); + $cache = new Database(); + $file = $this->getMockBuilder(File::class)->setMethods(['write'])->getMock(); $content = '0123456789'; $cache->save($file, $content); - $this->assertEquals($cache->load($file), '01234'); - Config::unnest(); + $this->assertEquals($cache->load($file), '01234'); } } diff --git a/tests/FileTextExtractableTest.php b/tests/FileTextExtractableTest.php index 166b1ee..4a1edf2 100644 --- a/tests/FileTextExtractableTest.php +++ b/tests/FileTextExtractableTest.php @@ -1,46 +1,53 @@ array('FileTextExtractable') - ); + protected $usesDatabase = true; - public function setUp() + protected static $required_extensions = [ + File::class => [ + FileTextExtractable::class, + ], + ]; + + protected function setUp() { parent::setUp(); // Ensure that html is a valid extension - Config::inst() - ->nest() - ->update('File', 'allowed_extensions', array('html')); - } - - public function tearDown() - { - Config::unnest(); - parent::tearDown(); + Config::modify()->merge(File::class, 'allowed_extensions', ['html']); } public function testExtractFileAsText() { // Create a copy of the file, as it may be clobbered by the test // ($file->extractFileAsText() calls $file->write) - copy(BASE_PATH.'/textextraction/tests/fixtures/test1.html', BASE_PATH.'/textextraction/tests/fixtures/test1-copy.html'); - + copy( + dirname(__FILE__) . '/fixtures/test1.html', + dirname(__FILE__) . '/fixtures/test1-copy.html' + ); + // Use HTML, since the extractor is always available - $file = new File(array( + $file = new File([ 'Name' => 'test1-copy.html', - 'Filename' => 'textextraction/tests/fixtures/test1-copy.html' - )); + 'Filename' => dirname(__FILE__) . '/fixtures/test1-copy.html' + ]); $file->write(); - + $content = $file->extractFileAsText(); $this->assertContains('Test Headline', $content); $this->assertContains('Test Text', $content); $this->assertEquals($content, $file->FileContentCache); - if (file_exists(BASE_PATH.'/textextraction/tests/fixtures/test1-copy.html')) { - unlink(BASE_PATH.'/textextraction/tests/fixtures/test1-copy.html'); + if (file_exists(dirname(__FILE__) . '/fixtures/test1-copy.html')) { + unlink(dirname(__FILE__) . '/fixtures/test1-copy.html'); } } } diff --git a/tests/HTMLTextExtractorTest.php b/tests/HTMLTextExtractorTest.php index 8ff8b0b..59b8018 100644 --- a/tests/HTMLTextExtractorTest.php +++ b/tests/HTMLTextExtractorTest.php @@ -1,11 +1,18 @@ getContent(Director::baseFolder() . '/textextraction/tests/fixtures/test1.html'); + $content = $extractor->getContent(dirname(__FILE__) . '/fixtures/test1.html'); + $this->assertContains('Test Headline', $content); $this->assertNotContains('Test Comment', $content, 'Strips HTML comments'); $this->assertNotContains('Test Style', $content, 'Strips non-content style tags'); diff --git a/tests/PDFTextExtractorTest.php b/tests/PDFTextExtractorTest.php index 96ad1ec..dfbffcd 100644 --- a/tests/PDFTextExtractorTest.php +++ b/tests/PDFTextExtractorTest.php @@ -1,17 +1,22 @@ isAvailable()) { - $this->setExpectedException( - 'FileTextExtractor_Exception', - 'getRawOutput called on unavailable extractor' - ); + $this->expectException(Exception::class); + $this->expectExceptionMessage('getRawOutput called on unavailable extractor'); } - $content = $extractor->getContent(Director::baseFolder() . '/textextraction/tests/fixtures/test1.pdf'); + $content = $extractor->getContent(dirname(__FILE__) . '/fixtures/test1.pdf'); $this->assertContains('This is a test file with a link', $content); } } diff --git a/tests/TikaTextExtractorTest.php b/tests/TikaTextExtractorTest.php index 0342dcf..6c8e801 100644 --- a/tests/TikaTextExtractorTest.php +++ b/tests/TikaTextExtractorTest.php @@ -1,5 +1,11 @@ getContent($file); $this->assertContains('This is a test file with a link', $content); @@ -31,7 +37,7 @@ class TikaTextExtractorTest extends SapphireTest } // Check file - $file = Director::baseFolder() . '/textextraction/tests/fixtures/test1.pdf'; + $file = dirname(__FILE__) . '/fixtures/test1.pdf'; $content = $extractor->getContent($file); $this->assertContains('This is a test file with a link', $content);