Module: Selenium::WebDriver::Zipper
- Defined in:
- lib/selenium/webdriver/common/zipper.rb
Constant Summary collapse
- EXTENSIONS =
%w[.zip .xpi]
Class Method Summary collapse
Class Method Details
.unzip(path) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/selenium/webdriver/common/zipper.rb', line 13 def unzip(path) destination = Dir.mktmpdir("unzip") FileReaper << destination Zip::ZipFile.open(path) do |zip| zip.each do |entry| to = File.join(destination, entry.name) dirname = File.dirname(to) FileUtils.mkdir_p dirname unless File.exist? dirname zip.extract(entry, to) end end destination end |
.zip(path) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/selenium/webdriver/common/zipper.rb', line 30 def zip(path) with_tmp_zip do |zip| ::Find.find(path) do |file| unless File.directory?(file) add_zip_entry zip, file, file.sub("#{path}/", '') end end zip.commit File.open(zip.name, "rb") { |io| Base64.strict_encode64 io.read } end end |
.zip_file(path) ⇒ Object
43 44 45 46 47 48 49 50 |
# File 'lib/selenium/webdriver/common/zipper.rb', line 43 def zip_file(path) with_tmp_zip do |zip| add_zip_entry zip, path, File.basename(path) zip.commit File.open(zip.name, "rb") { |io| Base64.strict_encode64 io.read } end end |