Class: SideToCapybara::Minitest

Inherits:
Base
  • Object
show all
Defined in:
lib/side_to_capybara/minitest.rb

Overview

This class holds the translations for minitest.

To add a translation you need to do the following steps:

  1. Open the .side file and find the command you want to add

  2. Define a method in the Minitest class with the command as name. The command name must be translated to the ruby version of the name. ‘assertText` => `assert_text`

  3. Define the translation

The properties of the whole .side command object are accessible through ruby methods.

  • ‘target` is the preferred target selector of Selenium IDE

  • ‘targets` holds all possible target selectors identified by Selenium IDE

  • ‘selector_type` identifies the type of the preferred target selector (e.g css, xpath)

  • ‘selector` is the selector of the preferred target selector itself. (e.g ’body .header .title’)

  • ‘value` e.g. the value that a text field should get

  • ‘command` the command name itself like `assertText` or `click`

  • ‘comment` a optional comment for that command

  • ‘id` the internal id generated by Selenium IDE

Instance Attribute Summary

Attributes inherited from Base

#side_command

Instance Method Summary collapse

Methods inherited from Base

#command, #comment, #id, #initialize, #selector, #selector_type, #target, #targets, #translate, #value

Constructor Details

This class inherits a constructor from SideToCapybara::Base

Instance Method Details

#assert_textObject



53
54
55
# File 'lib/side_to_capybara/minitest.rb', line 53

def assert_text
  "assert_selector('#{selector}', text: '#{value}')"
end

#clickObject



38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/side_to_capybara/minitest.rb', line 38

def click
  case selector_type
  when 'css'
    "find('#{selector}').click"
  when 'id'
    "find('##{selector}').click"
  when 'xpath'
    "find('#{selector}').click"
  when 'name'
    "find('[name=\"#{selector}\"]').click"
  when 'linkText'
    "click_link_or_button('#{selector}')"
  end
end

#double_clickObject



25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/side_to_capybara/minitest.rb', line 25

def double_click
  case selector_type
  when 'css'
    "find('#{selector}').double_click"
  when 'id'
    "find('##{selector}').double_click"
  when 'xpath'
    "find('#{selector}').double_click"
  when 'name'
    "find('[name=\"#{selector}\"]').double_click"
  end
end

#openObject



21
22
23
# File 'lib/side_to_capybara/minitest.rb', line 21

def open
  "visit('#{target}')"
end