diff options
author | webchick <webchick@24967.no-reply.drupal.org> | 2012-04-30 21:46:58 -0700 |
---|---|---|
committer | webchick <webchick@24967.no-reply.drupal.org> | 2012-04-30 21:46:58 -0700 |
commit | 769405953c12f46c2866f89e46b3771e72046bd9 (patch) | |
tree | df93c632f008fadbc9082e93f809b127b6d8b1f3 /modules/filter/filter.test | |
parent | b9757778158c0741d4df590a4e6b7bc51727be7f (diff) | |
download | brdo-769405953c12f46c2866f89e46b3771e72046bd9.tar.gz brdo-769405953c12f46c2866f89e46b3771e72046bd9.tar.bz2 |
Issue #312458 by rdickert, Heine, sun: Fixed HTML filter is not run first by default, despite default weight.
Diffstat (limited to 'modules/filter/filter.test')
-rw-r--r-- | modules/filter/filter.test | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/modules/filter/filter.test b/modules/filter/filter.test index 7592d2e8e..1a21ecbbd 100644 --- a/modules/filter/filter.test +++ b/modules/filter/filter.test @@ -1835,3 +1835,61 @@ class FilterHooksTestCase extends DrupalWebTestCase { } } +/** + * Tests filter settings. + */ +class FilterSettingsTestCase extends DrupalWebTestCase { + protected $profile = 'testing'; + + public static function getInfo() { + return array( + 'name' => 'Filter settings', + 'description' => 'Tests filter settings.', + 'group' => 'Filter', + ); + } + + /** + * Tests explicit and implicit default settings for filters. + */ + function testFilterDefaults() { + $filter_info = filter_filter_info(); + $filters = array_fill_keys(array_keys($filter_info), array()); + + // Create text format using filter default settings. + $filter_defaults_format = (object) array( + 'format' => 'filter_defaults', + 'name' => 'Filter defaults', + 'filters' => $filters, + ); + filter_format_save($filter_defaults_format); + + // Verify that default weights defined in hook_filter_info() were applied. + $saved_settings = array(); + foreach ($filter_defaults_format->filters as $name => $settings) { + $expected_weight = (isset($filter_info[$name]['weight']) ? $filter_info[$name]['weight'] : 0); + $this->assertEqual($settings['weight'], $expected_weight, format_string('@name filter weight %saved equals %default', array( + '@name' => $name, + '%saved' => $settings['weight'], + '%default' => $expected_weight, + ))); + $saved_settings[$name]['weight'] = $expected_weight; + } + + // Re-save the text format. + filter_format_save($filter_defaults_format); + // Reload it from scratch. + filter_formats_reset(); + $filter_defaults_format = filter_format_load($filter_defaults_format->format); + $filter_defaults_format->filters = filter_list_format($filter_defaults_format->format); + + // Verify that saved filter settings have not been changed. + foreach ($filter_defaults_format->filters as $name => $settings) { + $this->assertEqual($settings->weight, $saved_settings[$name]['weight'], format_string('@name filter weight %saved equals %previous', array( + '@name' => $name, + '%saved' => $settings->weight, + '%previous' => $saved_settings[$name]['weight'], + ))); + } + } +} |