Sha256: 270b261511f41dd0e348f4d592c071383762499fcfbf9a680d0ef39a96ea2991

Contents?: true

Size: 514 Bytes

Versions: 2

Compression:

Stored size: 514 Bytes

Contents

class String

  #
  # "Watir::Span" => "Span"
  # 

  def demodulize
    gsub(/^.*::/, '')
  end

  #
  # "FooBar" => "foo_bar"
  # 

  def underscore
    gsub(/\B[A-Z][^A-Z]/, '_\&').downcase.gsub(' ', '_')
  end

  #
  # "Checkboxes" => "Checkbox"
  # "Bodies" => "Body"
  # "Buttons" => "Button"
  #
  def singularize
    case self.downcase
    when "checkboxes"
      self.chop.chop
    when "bodies"
      self.chop.chop.chop + "y"
    else
      self.chop
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
commonwatir-1.8.0 lib/watir/core_ext.rb
commonwatir-1.8.0.rc1 lib/watir/core_ext.rb