Sha256: 4fdeb86214043a8e92516fb59ae8e498b2d8f40fecb35edc142d35499b6aad43
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
require "wurfl/command" require "getoptlong" require "wurfl/handset" require "wurfl/utils" class Wurfl::Command::Comparator < Wurfl::Command include Wurfl::Utils def usage puts "Usage: wurfltools.rb comparator wurfl_pstore1_db wurfl_pstore2_db " exit 1 end def display_differences(hand1, hand2) puts "-------------------------------------" puts "WURFL_ID: #{hand1.wurfl_id}" puts "Handset 1: #{hand1.user_agent}" puts "Handset 2: #{hand2.user_agent}" hand1.differences(hand2).each do |key| v1, v2 = hand1[key], hand2[key] puts "Key:#{key}" puts "h1>:#{hand1[key]}" puts "h2<:#{hand2[key]}" end puts "-------------------------------------" end def execute if ARGV.size != 2 usage end # load the wurfl databases wurfl1 = wurfl2 = nil begin wurfl1, = load_wurfl_pstore(ARGV[0]) wurfl2, = load_wurfl_pstore(ARGV[1]) rescue => err efile = "" if wurfl1.nil? efile = ARGV[0] else efile = ARGV[1] end STDERR.puts "Error with file #{efile}" STDERR.puts err.message exit 1 end puts "Comparing files: #{ARGV[0]} and #{ARGV[1]}" puts "-------------------------------------" wurfl1_unknown, wurfl2_unknown, different = [],[],[] (wurfl1.keys | wurfl2.keys).each do |key| handset1, handset2 = wurfl1[key], wurfl2[key] if !handset1 wurfl1_unknown << key elsif !handset2 wurfl2_unknown << key elsif handset1 != handset2 display_differences(handset1,handset2) end end puts "Comparision complete." puts "Handsets not found in wurfl1: #{wurfl1_unknown.inspect}" puts "Handsets not found in wurfl2: #{wurfl2_unknown.inspect}" end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
wurfl-1.2.0 | lib/wurfl/command/comparator.rb |