Sha256: 3aac3a8d56a26c22da2aea5e6599108e119ece1e729ddf8c3f8f264ac84cc5e3
Contents?: true
Size: 1.81 KB
Versions: 1
Compression:
Stored size: 1.81 KB
Contents
require 'erb' require 'fileutils' require 'nokogiri' require 'logger' require 'colorize' require_relative 'skeleton/version' require_relative 'skeleton/base' require_relative 'skeleton/ios' require_relative 'skeleton/android' module Skeleton class Skeleton include Language attr_accessor :platform, :udid, :bundle_id def initialize(options) self.platform = options.platform self.udid = options.udid self.bundle_id = options.bundle @driver = ios? ? IOS.new(options) : Android.new(options) end def platform=(platform) platform.nil? || platform.downcase! if platform != 'ios' && platform != 'android' raise 'Set platform, ios or android [-p arg]' end @platform = platform end def udid=(udid) if udid.nil? raise 'Not set udid [-u arg]' end @udid = udid end def bundle_id=(bundle_id) if @platform == 'ios' && bundle_id.nil? raise 'Not set bundle_id [-b arg]' end @bundle_id = bundle_id end def run @driver.clear @driver.precondition @driver.skeletoner fill_html @driver.log.info('Get it: http://localhost:4567/index.html 😍') end def fill_html languages = ['ruby', 'java'] languages.each do |lang| type = language_type(lang: lang) @pageobject = File.read(Dir["#{Base::PAGE_OBJECTS_FOLDER}/*.#{type}"].first) @elements_tree = File.read(Dir["#{Base::PAGE_OBJECTS_FOLDER}/*.xml"].first) screenshot = Dir["#{Base::ATTACHMENTS_FOLDER}/*.png"].first FileUtils.cp_r(screenshot, "../html/screenshot.png") template = File.read('../html/template.html.erb') result = ERB.new(template).result(binding) File.open("../html/#{lang}.html", 'w+') { |f| f.write(result) } end end def ios? @platform == 'ios' end def android? @platform == 'android' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
skeleton-ui-0.1.0 | lib/skeleton.rb |