assertInstanceOf(\rcube_spellchecker_pspell::class, $object, 'Class constructor');
$this->assertInstanceOf(\rcube_spellchecker_engine::class, $object, 'Class constructor');
}
/**
* Test languages() method
*/
public function test_languages()
{
if (!extension_loaded('pspell')) {
$this->markTestSkipped();
}
\rcube::get_instance()->config->set('spellcheck_engine', 'pspell');
$object = new \rcube_spellchecker();
$langs = $object->languages();
$this->assertSame('English (US)', $langs['en']);
}
/**
* Test check() method
*/
public function test_check()
{
if (!extension_loaded('pspell')) {
$this->markTestSkipped();
}
\rcube::get_instance()->config->set('spellcheck_engine', 'pspell');
$object = new \rcube_spellchecker();
$this->assertTrue($object->check('one'));
// Test other methods that depend on the spellcheck result
$this->assertSame(0, $object->found());
$this->assertSame([], $object->get_words());
$this->assertSame(
'
www.redacted.com'; $this->assertTrue($object->check($html, true)); $html = '
' . 'http://www.redacted.com'; $this->assertTrue($object->check($html, true)); $this->assertTrue($object->check('one http://www.redacted.com')); $this->assertTrue($object->check('one www.redacted.com')); } /** * Test get_suggestions() method */ public function test_get_suggestions() { if (!extension_loaded('pspell')) { $this->markTestSkipped(); } \rcube::get_instance()->config->set('spellcheck_engine', 'pspell'); $object = new \rcube_spellchecker(); $expected = ['ON', 'on', 'Ont', 'only', 'onya', 'NY', 'onyx', 'Ono', 'any', 'one']; $result = $object->get_suggestions('ony'); sort($expected); sort($result); $this->assertSame($expected, $result); } /** * Test get_words() method */ public function test_get_words() { if (!extension_loaded('pspell')) { $this->markTestSkipped(); } \rcube::get_instance()->config->set('spellcheck_engine', 'pspell'); $object = new \rcube_spellchecker(); $this->assertSame(['ony'], $object->get_words('ony')); } }