My bad. These look fine as is then. jD
-----Original Message----- From: Shri Borde <shri.bo...@microsoft.com> Sent: April 07, 2009 1:47 PM To: Jim Deville <jdevi...@microsoft.com>; IronRuby External Code Reviewers <irb...@microsoft.com> Cc: ironruby-core@rubyforge.org <ironruby-core@rubyforge.org> Subject: RE: Review: GzipWriter.open The following Ruby code prints “to_int”. So checking for to_int seems to be correct, right? class C def to_int puts "to_int" 0 end def to_i puts "to_i" 0 end end [].at(C.new) Thanks, Shri From: Jim Deville Sent: Tuesday, April 07, 2009 1:25 PM To: Shri Borde; IronRuby External Code Reviewers Cc: ironruby-core@rubyforge.org Subject: RE: Review: GzipWriter.open + it "raises TypeError unless the arguments are exactly a String, Fixnum and Fixnum" do + filename = mock("filename") + filename.should_not_receive(:to_s) + lambda { Zlib::GzipWriter.open(filename) }.should raise_error(TypeError) + + level = mock("level") + level.should_not_receive(:to_int) + lambda { Zlib::GzipWriter.open(@filename, level) }.should raise_error(TypeError) + + strategy = mock("strategy") + strategy.should_not_receive(:to_int) + lambda { Zlib::GzipWriter.open(@filename, 0, strategy) }.should raise_error(TypeError) + end I would check to_i, not to_int in this case. Other than this and the extra file, test looks good. JD From: Shri Borde Sent: Tuesday, April 07, 2009 1:09 PM To: IronRuby External Code Reviewers Cc: ironruby-core@rubyforge.org Subject: Review: GzipWriter.open http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555 GitDiff.bat 9fc3048beb4a315ec7ac3dc82908da8f92bf1a07 fb6f89146e331a9f20f444d5ca94478dfce7f555 · Implemented Zlib::GzipWriter.open · Added Kernel.abort · Mapped Errno::EACCES to System.UnauthorizedAccessException · File.delete catches IOException and rethrows Errno::EACCES to match MRI · Adds Errno::EXDEV · Updated rbconfig.rb to work with the dev environment. Change RbConfig[:ruby_install_name] to "ir". Note that it is not "ironruby" because RubyGems uses this to spawn new processes for running setup scripts, and so it needs to match the executable name (ir.exe). · Added Languages\Ruby\Tests\Interop\uncategorized_spec.rb as a place for devs to add CLR tests. Jim can later move them into the right place in CLR interop test suite. Files modified: * Merlin/External/Languages/IronRuby/mspec/ironruby-tags/core/file/open_tags.txt<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-0> * Merlin/External/Languages/IronRuby/mspec/ironruby-tags/core/kernel/abort_tags.txt * Merlin/External/Languages/IronRuby/mspec/rubyspec/core/file/open_spec.rb<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-2> * Merlin/External/Languages/IronRuby/mspec/rubyspec/library/zlib/gzipwriter/open_spec.rb<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-3> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Dir.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-4> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/Errno.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-5> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/FileOps.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-6> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/KernelOps.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-7> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Builtins/StringFormatter.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-8> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Initializers.Generated.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-9> * Merlin/Main/Languages/Ruby/Libraries.LCA_RESTRICTED/Zlib/zlib.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-10> * Merlin/Main/Languages/Ruby/Libs/rbconfig.rb<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-11> * Merlin/Main/Languages/Ruby/Ruby/Builtins/RubyObject.cs<http://github.com/shri/ironruby/commit/fb6f89146e331a9f20f444d5ca94478dfce7f555#diff-12> * Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_spec.rb<http://github.com/shri/ironruby/tree/fb6f89146e331a9f20f444d5ca94478dfce7f555/Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_spec.rb> * Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_specs.rb<http://github.com/shri/ironruby/tree/fb6f89146e331a9f20f444d5ca94478dfce7f555/Merlin/Main/Languages/Ruby/Tests/Interop/uncategorized_specs.rb> Thanks, Shri
_______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core