class Language

Constants

JAVA
JAVASCRIPT
PYTHON
RUBY
SWIFT

Public Class Methods

all() click to toggle source
# File lib/skeleton/languages.rb, line 69
def self.all
  %w[ruby java python javascript swift]
end
domain(format) click to toggle source
# File lib/skeleton/languages.rb, line 52
def self.domain(format)
  case format
  when 'ruby', 'rb'
    RUBY
  when 'java'
    JAVA
  when 'javascript', 'js'
    JAVASCRIPT
  when 'python', 'py'
    PYTHON
  when 'swift'
    SWIFT
  else
    "I haven't this language format"
  end
end

Public Instance Methods

java(camel_method_name:, locator_type:, locator_value:) click to toggle source
# File lib/skeleton/languages.rb, line 8
  def java(camel_method_name:, locator_type:, locator_value:)
    <<~JAVA
      By #{camel_method_name} = MobileBy.#{locator_type[:java]}("#{locator_value}");

    JAVA
  end
js(camel_method_name:, locator_type:, locator_value:) click to toggle source
# File lib/skeleton/languages.rb, line 29
  def js(camel_method_name:, locator_type:, locator_value:)
    <<~JS
      let #{camel_method_name} = await driver.elements("#{locator_type[:javascript]}", "#{locator_value}");

    JS
  end
python(snake_method_name:, locator_type:, locator_value:) click to toggle source
# File lib/skeleton/languages.rb, line 22
  def python(snake_method_name:, locator_type:, locator_value:)
    <<~PYTHON
      #{snake_method_name} = self.driver.#{locator_type[:python]}("#{locator_value})"

    PYTHON
  end
ruby(snake_method_name:, locator_type:, locator_value:) click to toggle source
# File lib/skeleton/languages.rb, line 15
  def ruby(snake_method_name:, locator_type:, locator_value:)
    <<~RUBY
      #{snake_method_name} = :#{locator_type[:ruby]}, "#{locator_value}"

    RUBY
  end
swift(camel_method_name:, element_type:, locator_value:, accessibility_id:) click to toggle source
# File lib/skeleton/languages.rb, line 36
  def swift(camel_method_name:, element_type:, locator_value:, accessibility_id:)
    if accessibility_id
    <<~SWIFT
      let #{camel_method_name} = app.#{element_type}["#{locator_value}"]

    SWIFT
    else
      <<~SWIFT
      let #{camel_method_name} = app.#{element_type}.matching(
        NSPredicate(format: "#{locator_value}")
      ).element

      SWIFT
    end
  end