Sha256: 91ae719dad35031b6774d1c06a2f6c7650d8e3db1b382b5498735b6bd27412dc
Contents?: true
Size: 1.09 KB
Versions: 1
Compression:
Stored size: 1.09 KB
Contents
# frozen_string_literal: true module Akita module HarLogger class HarUtils # Rack apparently uses 8-bit ASCII for everything, even when the string # is not 8-bit ASCII. This reinterprets the given string as UTF-8. def self.fixEncoding(v) if v == nil || v.encoding == Encoding::UTF_8 then v else String.new(v).force_encoding(Encoding::UTF_8) end end # Converts a Hash into a list of Hash objects. Each entry in the given # Hash will be represented in the output by a Hash object that maps # 'name' to the entry's key and 'value' to the entry's value. def self.hashToList(hash) hash.reduce([]) { |accum, (k, v)| accum.append({ name: fixEncoding(k), value: fixEncoding(v), }) } end # Determines whether all values in a Hash are strings. def self.allValuesAreStrings(hash) hash.each do |_, value| if !(value.is_a? String) then return false end end return true end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
akita-har_logger-0.2.3 | lib/akita/har_logger/har_utils.rb |