Class: CompareCompressors::GzipCompressor

Inherits:
Compressor
  • Object
show all
Defined in:
lib/compare_compressors/compressors/gzip_compressor.rb

Overview

Compress with gzip.

Instance Method Summary collapse

Methods inherited from Compressor

#display_name, #evaluate

Instance Method Details

#compression_command(target, level) ⇒ Object



26
27
28
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 26

def compression_command(target, level)
  ['gzip', "-#{level}", target]
end

#decompression_command(target) ⇒ Object



30
31
32
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 30

def decompression_command(target)
  ['gunzip', output_name(target)]
end

#extensionObject



12
13
14
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 12

def extension
  'gz'
end

#levelsObject



16
17
18
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 16

def levels
  (1..9).to_a
end

#nameObject



8
9
10
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 8

def name
  'gzip'
end

#versionObject



20
21
22
23
24
# File 'lib/compare_compressors/compressors/gzip_compressor.rb', line 20

def version
  status, _times, out, _err = run(name, '--version')
  return nil unless status.zero?
  out.lines.first.chomp
end