summaryrefslogtreecommitdiff
path: root/modules/search/search.test
diff options
context:
space:
mode:
Diffstat (limited to 'modules/search/search.test')
-rw-r--r--modules/search/search.test26
1 files changed, 26 insertions, 0 deletions
diff --git a/modules/search/search.test b/modules/search/search.test
index ca1dd24a3..eeb6bf21b 100644
--- a/modules/search/search.test
+++ b/modules/search/search.test
@@ -1461,6 +1461,17 @@ class SearchConfigSettingsForm extends DrupalWebTestCase {
$this->assertText(t('The index will be rebuilt'));
$this->drupalGet('admin/config/search/settings');
$this->assertText(t('There is 1 item left to index.'));
+
+ // Test that the form saves with the default values.
+ $this->drupalPost('admin/config/search/settings', array(), t('Save configuration'));
+ $this->assertText(t('The configuration options have been saved.'), 'Form saves with the default values.');
+
+ // Test that the form does not save with an invalid word length.
+ $edit = array(
+ 'minimum_word_size' => $this->randomName(3),
+ );
+ $this->drupalPost('admin/config/search/settings', $edit, t('Save configuration'));
+ $this->assertNoText(t('The configuration options have been saved.'), 'Form does not save with an invalid word length.');
}
/**
@@ -1639,6 +1650,21 @@ class SearchExcerptTestCase extends DrupalUnitTestCase {
$result = preg_replace('| +|', ' ', search_excerpt('"abc def"', $text));
$this->assertTrue(strpos($result, '<strong>abc,def</strong>') !== FALSE, 'Phrase with keyword simplified into two separate words is highlighted with simplified match');
+
+ // Test phrases with characters which are being truncated.
+ $result = preg_replace('| +|', ' ', search_excerpt('"ipsum _"', $text));
+ $this->assertTrue(strpos($result, '<strong>ipsum </strong>') !== FALSE, 'Only valid part of the phrase is highlighted and invalid part containing "_" is ignored.');
+
+ $result = preg_replace('| +|', ' ', search_excerpt('"ipsum 0000"', $text));
+ $this->assertTrue(strpos($result, '<strong>ipsum </strong>') !== FALSE, 'Only valid part of the phrase is highlighted and invalid part "0000" is ignored.');
+
+ // Test combination of the valid keyword and keyword containing only
+ // characters which are being truncated during simplification.
+ $result = preg_replace('| +|', ' ', search_excerpt('ipsum _', $text));
+ $this->assertTrue(strpos($result, '<strong>ipsum</strong>') !== FALSE, 'Only valid keyword is highlighted and invalid keyword "_" is ignored.');
+
+ $result = preg_replace('| +|', ' ', search_excerpt('ipsum 0000', $text));
+ $this->assertTrue(strpos($result, '<strong>ipsum</strong>') !== FALSE, 'Only valid keyword is highlighted and invalid keyword "0000" is ignored.');
}
}