Sha256: 37246364a4f3c7917b1effbfee310ad26264b791ae4a73f82730d9ab5efabdd6
Contents?: true
Size: 1.09 KB
Versions: 3
Compression:
Stored size: 1.09 KB
Contents
class SocketSpy < SimpleDelegator def write(content) p :writing => content __getobj__.write content end [:readline, :readuntil, :read_all, :read].each{|symbol| define_method(symbol) do |*args| content = __getobj__.send(symbol, *args) p :reading => content content end } end class MethodSpy def initialize(delegate, &block) @delegate = delegate @filter = block end def method_missing(symbol, *args, &block) result = @delegate.send(symbol, *args, &block) p [symbol, args, result, block] if @filter && @filter.call(symbol.to_s) result end end class String def to_camel_case(split_on='-') self.split(split_on).collect{|e| e.capitalize}.join(split_on) end end module HTTPHeaderPatch # handle multiple parameters with the same name def form_data=(params, sep = '&') self.body = params.map {|key,value| if value.is_a?(Array) value.map{|v| param_line(key, v) } else param_line(key, value) end }.join(sep) end def param_line(k, v) "#{urlencode(k.to_s)}=#{urlencode(v.to_s)}" end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mikehale-rat-hole-0.1.5 | lib/util.rb |
mikehale-rat-hole-0.1.6 | lib/util.rb |
mikehale-rat-hole-0.1.7 | lib/util.rb |