Module: ActionText::SystemTestHelper

Defined in:
lib/action_text/system_test_helper.rb

Instance Method Summary collapse

Instance Method Details

#fill_in_rich_textarea(locator = nil, with:) ⇒ Object Also known as: fill_in_rich_text_area

Locates a Trix editor and fills it in with the given HTML.

The editor can be found by:

  • its ‘id`

  • its ‘placeholder`

  • the text from its ‘label` element

  • its ‘aria-label`

  • the ‘name` of its input

Examples:

# <trix-editor id="message_content" ...></trix-editor>
fill_in_rich_textarea "message_content", with: "Hello <em>world!</em>"

# <trix-editor placeholder="Your message here" ...></trix-editor>
fill_in_rich_textarea "Your message here", with: "Hello <em>world!</em>"

# <label for="message_content">Message content</label>
# <trix-editor id="message_content" ...></trix-editor>
fill_in_rich_textarea "Message content", with: "Hello <em>world!</em>"

# <trix-editor aria-label="Message content" ...></trix-editor>
fill_in_rich_textarea "Message content", with: "Hello <em>world!</em>"

# <input id="trix_input_1" name="message[content]" type="hidden">
# <trix-editor input="trix_input_1"></trix-editor>
fill_in_rich_textarea "message[content]", with: "Hello <em>world!</em>"


35
36
37
# File 'lib/action_text/system_test_helper.rb', line 35

def fill_in_rich_textarea(locator = nil, with:)
  find(:rich_textarea, locator).execute_script("this.editor.loadHTML(arguments[0])", with.to_s)
end