Sha256: 7a6f4c61ca80a599ee1cc0526a939eb01bd8fd2b46772802a633777e06b617c8
Contents?: true
Size: 1.39 KB
Versions: 1
Compression:
Stored size: 1.39 KB
Contents
#!/usr/bin/ruby # encoding: utf-8 # (c) 2011 Martin Kozák (martinkozak@martinkozak.net) $:.push("./lib") require "object-proxy" require "riot" context "ObjectProxy" do asserts("#create") do s = OP["a,b,c,d"] s.register_handler(:"before_<<") do |args| args = [",A,B,C"] args end s.register_handler(:"after_<<") do |result| "alfa beta" end (s << ",1,2,3" == "alfa beta") and (s == "a,b,c,d,A,B,C") end asserts("#fake") do pr = OP::fake(String) do define_method :to_s do "alfa beta" end end pr = pr::new (pr.to_s == "alfa beta") and pr.inspect.nil? end asserts("#track") do log = [ ] s = OP::track("a,b,c,d") s.before_call do |name| log << name end s.after_call do |name| log << name end s.gsub!(",", "") (log == [:gsub!, :gsub!]) and (s == "abcd") end asserts("#catch") do s = OP::catch("alfa") log = [ ] s.method_call do |name, args, block| if name == :to_s log << name s.wrapped.send(name, *args, &block) end end s.replace("beta") s.to_s (log == [:to_s]) and (s.to_s == "alfa") end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
object-proxy-0.2.0 | test |