public function test_editor_mode_conflicts()
 {
     $args = array('name' => 'test_richtextarea_1', 'default_value' => '<p>some <strong>html</strong> content</p>', 'editor_settings' => array('default_editor' => 'html'));
     $fm = new Fieldmanager_RichTextArea($args);
     ob_start();
     $fm->add_meta_box('Test RichTextArea', 'post')->render_meta_box($this->post, array());
     $html_1 = ob_get_clean();
     $args['name'] = 'test_richtextarea_2';
     $args['editor_settings']['default_editor'] = 'tinymce';
     $fm = new Fieldmanager_RichTextArea($args);
     ob_start();
     $fm->add_meta_box('Test RichTextArea', 'post')->render_meta_box($this->post, array());
     $html_2 = ob_get_clean();
     $args['name'] = 'test_richtextarea_3';
     $args['editor_settings']['default_editor'] = 'html';
     $fm = new Fieldmanager_RichTextArea($args);
     ob_start();
     $fm->add_meta_box('Test RichTextArea', 'post')->render_meta_box($this->post, array());
     $html_3 = ob_get_clean();
     if (_fm_phpunit_is_wp_at_least(3.9)) {
         $this->assertContains('html-active', $html_1);
         $this->assertNotContains('tmce-active', $html_1);
         $this->assertContains('tmce-active', $html_2);
         $this->assertNotContains('html-active', $html_2);
         $this->assertContains('html-active', $html_3);
         $this->assertNotContains('tmce-active', $html_3);
     } else {
         $this->_skip_tests_because_version(3.9);
     }
     if (_fm_phpunit_is_wp_at_least(4.3)) {
         $this->assertContains(format_for_editor($args['default_value']), $html_1);
         $this->assertContains(format_for_editor($args['default_value']), $html_2);
         $this->assertContains(format_for_editor($args['default_value']), $html_3);
     } elseif (_fm_phpunit_is_wp_at_least(3.9)) {
         $this->assertContains(wp_htmledit_pre($args['default_value']), $html_1);
         $this->assertContains(wp_richedit_pre($args['default_value']), $html_2);
         $this->assertContains(wp_htmledit_pre($args['default_value']), $html_3);
     } else {
         $this->_skip_tests_because_version(3.9);
     }
 }
 /**
  * @group serialize_data
  */
 public function test_unserialize_data_mixed_depth()
 {
     if (!_fm_phpunit_is_wp_at_least(4.4)) {
         return $this->_skip_tests_because_version(4.4);
     }
     $base = new Fieldmanager_Group(array('name' => 'base_group', 'serialize_data' => false, 'children' => array('test_text' => new Fieldmanager_TextField(), 'test_group' => new Fieldmanager_Group(array('serialize_data' => false, 'children' => array('deep_text' => new Fieldmanager_TextArea()))))));
     $data = array('test_text' => rand_str(), 'test_group' => array('deep_text' => rand_str()));
     $html = $this->_get_html_for($base, $data);
     $this->assertEquals($data['test_text'], get_term_meta($this->term_id, 'base_group_test_text', true));
     $this->assertEquals($data['test_group']['deep_text'], get_term_meta($this->term_id, 'base_group_test_group_deep_text', true));
     $this->assertContains('name="base_group[test_text]"', $html);
     $this->assertContains('value="' . $data['test_text'] . '"', $html);
     $this->assertContains('name="base_group[test_group][deep_text]"', $html);
     $this->assertContains('>' . $data['test_group']['deep_text'] . '</textarea>', $html);
 }