class LeapSalesforce::Generator::PageObjects

Creates SoqlObjects and related modules

Constants

POM_FOLDER

Public Instance Methods

create() click to toggle source
# File lib/leap_salesforce_ui/generator/page_objects.rb, line 14
def create
  LeapSalesforce.objects_to_verify.each { |entity| create_poms_for entity }
end
create_poms_for(entity) click to toggle source

@param [LeapSalesforce::SoqlData] entity An object representing an object in Salesforce

# File lib/leap_salesforce_ui/generator/page_objects.rb, line 19
def create_poms_for(entity)
  @entity_name = entity
  @soql_object = LeapSalesforce.soql_objects.find { |so| so.class_name == entity.to_s }
  %w[create view update].each do |page_action|
    content = read_template "#{page_action}_page.rb.erb", binding, folder: __dir__
    file = File.join(POM_FOLDER, "#{@entity_name.to_s.snakecase}/#{page_action}_page.rb")
    generate_file file, content, overwrite: false
  end
end