ruby 1.8.8dev (2011-03-03) [x86_64-linux] (duet) 502W KB1F0E 3F0E failed(rubyspec CommandTimeout) 91failed(rubyspec/) failed(rubyspec/library/net/ftp/abort_spec.rb CommandTimeout) failed(rubyspec/library/net/ftp/status_spec.rb CommandTimeout)

chkbuild summary recent last

OlderDiff < 20110307T232125Z < ThisDiff > 20110308T232423Z > NewerDiff

COMMIT [Brian Ford] Added string or symbol helper for MSpec.
COMMIT [Brian Ford] Respect privacy of method_missing in Ruby.
COMMIT [Brian Ford] Load ActionFilter before custom mspec scripts.
COMMIT [Brian Ford] Added have_singleton_method matcher.
COMMIT [Brian Ford] Fixed Array#inspect specs for tainted Array or elements.
COMMIT [Brian Ford] Fixed order-dependent Hash#each spec.
COMMIT [Evan Phoenix] Mild cleanup and clarify modification during iteration spec
COMMIT [Brian Ford] Enhance spec for Array#inspect tainting result.
COMMIT [Ivan Samsonov] Enhance spec for using in Hash#[]= already frozen keys.
COMMIT [Dirkjan Bussink] Add spec for rb_str_buf_new2
COMMIT [Chuck Remes] improve string arg handling so numbers are always decimal
COMMIT [Santiago Pastorino] String#strip should remove null bytes only if they are last and consecutives
COMMIT [Evan Phoenix] Add spec for module_eval + lexical constant scope
COMMIT [Evan Phoenix] Add spec for IO#expect
COMMIT [Brian Ford] Fixed String#strip, #rstrip specs for 1.9.
COMMIT [Evan Phoenix] Format fix some Time specs
COMMIT [Evan Phoenix] Add a few more arg type check specs for Time
COMMIT [Mikko Perttunen] Make sure TCPSocket.new (shared) spec cleans up properly after failing (fixes hang)
COMMIT [Dirkjan Bussink] Add specs for defining attribute methods on immediates
COMMIT [Evan Phoenix] Flesh out string coerce specs in StringScanner
COMMIT [Dirkjan Bussink] Add specs that Kernel#object_id shouldn't collide
COMMIT [Brian Ford] Rewrote Kernel#singleton_methods specs.
COMMIT [Ivan Samsonov] Enhance Module#define_method spec
COMMIT [Brian Ford] Spec for File.expand_path('~').
COMMIT [Brian Ford] Added Module#define_method with block specs for arity checking.
COMMIT [Brian Ford] Quarantine #freeze specs temporarily.
COMMIT [Brian Ford] More method reflection specs.
COMMIT [Dirkjan Bussink] Add missing return in CAPI Array spec
COMMIT [Evan Phoenix] Add spec for visibility+alias changes
COMMIT [Evan Phoenix] Add spec for a directory with a glob
COMMIT [Thiago Pradi] Specs for Hash[] method when passing an array
COMMIT [Brian Ford] Fixed Hash.[] spec for 1.8.6.
COMMIT [Brian Ford] Spec for eval locals at script scope.
COMMIT [Evan Phoenix] Cleanup eval specs
COMMIT [Aman Gupta] Handle ST_DELETE returns from the rb_hash_foreach callback
COMMIT [Brian Ford] Language specs for break.
COMMIT [Jari Bakken] Add spec for reuse of an Exception's backtrace.
COMMIT [John Mair] Added new specs for Class#dup
COMMIT [Brian Ford] Clarify language/break specs for non-compliant rbx behavior.
COMMIT [Evan Phoenix] Add extra spec for magic + braces in one name
COMMIT [NARUSE, Yui] Clear ENV["RUBY_FLAGS"] for -v
COMMIT [Brian Ford] Some fixes for Kernel#sprintf specs for 1.8.
COMMIT [Brian Ford] Revert "Clear ENV["RUBY_FLAGS"] for -v"
COMMIT [Brian Ford] Properly Clear ENV[RUBY_FLAGS] for RUBYOPT specs.
COMMIT [Brian Ford] Do not use 1.9 syntax in common spec files.

===================================================================
+++ 20110308T232423Z
@@ 7993 @@
 - returns a string
 - calls inspect on its elements
 - handles recursive arrays
+- taints the result String if the Array is tainted
+- taints the result String if an element is tainted
+- does not taint the result String if the Array is empty
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/array/intersection_spec.rb
 Array#&
@@ 9915 @@
 - properly handles recursive arrays
 - accepts a block instead of an argument
 - ignore the block if there is an argument
+- rechecks the array size during iteration
 
 Array#rindex given no argument and no block
 - produces an Enumerator
@@ 10514 @@
 - returns a fully-formed instance of Module
 - does not call initialize on the new instance
 
+/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/class/dup_spec.rb
+Class#dup
+- duplicates both the class and the singleton class
+- retains the correct ancestor chain for the singleton class
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/class/inherited_spec.rb
 Class.inherited
@@ 10733 @@
 - matches dotfiles with '.*<non-special characters>'
 - matches files with any ending with '<non-special characters>*'
 - matches files with any middle with '<non-special characters>*<non-special characters>'
+- handles directories with globs
 - matches files with multiple '*' special characters
 - matches non-dotfiles in the current directory with '**'
 - matches dotfiles in the current directory with '.**'
@@ 10746 @@
 - matches any characters except those in a set with '[^<characters>]'
 - matches any characters except those in a range with '[^<character>-<character]'
 - matches any one of the strings in a set with '{<string>,<other>,...}'
+- matches a set '{<string>,<other>,...}' which also uses a glob
 - accepts string sets with empty strings with {<string>,,<other>}
 - matches dot or non-dotfiles with '{,.}*'
 - respects the order of {} expressions, expanding left most first
@@ 10798 @@
 - matches dotfiles with '.*<non-special characters>'
 - matches files with any ending with '<non-special characters>*'
 - matches files with any middle with '<non-special characters>*<non-special characters>'
+- handles directories with globs
 - matches files with multiple '*' special characters
 - matches non-dotfiles in the current directory with '**'
 - matches dotfiles in the current directory with '.**'
@@ 10811 @@
 - matches any characters except those in a set with '[^<characters>]'
 - matches any characters except those in a range with '[^<character>-<character]'
 - matches any one of the strings in a set with '{<string>,<other>,...}'
+- matches a set '{<string>,<other>,...}' which also uses a glob
 - accepts string sets with empty strings with {<string>,,<other>}
 - matches dot or non-dotfiles with '{,.}*'
 - respects the order of {} expressions, expanding left most first
@@ 11716 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/exception/set_backtrace_spec.rb
 Exception#set_backtrace
 - allows the user to set the backtrace to any array
+- allows the user to set the backtrace from a rescued exception
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/exception/signm_spec.rb
 SignalException#signm
@@ 12024 @@
 - does not modify a HOME string argument
 - returns a String when passed a String subclass
 
+File.expand_path when HOME is not set
+- raises an ArgumentError when passed '~' if HOME is nil
+- raises an ArgumentError when passed '~' if HOME == ''
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/file/extname_spec.rb
 File.extname
@@ 13379 @@
 - creates a Hash; values can be provided as a list of value-pairs in an array
 - raises an ArgumentError when passed an odd number of arguments
 - calls to_hash
+- returns an instance of a subclass when passed an Array
 - returns an instance of the class it's called on
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/hash/default_proc_spec.rb
@@ 13439 @@
 Hash#each
 - yields a [[key, value]] Array for each pair to a block expecting |*args|
 - yields the key and value of each pair to a block expecting |key, value|
+- yields the key only to a block expecting |key,|
 - uses the same order as keys() and values()
 - returns an Enumerator if called on a non-empty hash without a block
 - returns an Enumerator if called on an empty hash without a block
@@ 13474 @@
 - duplicates string keys using dup semantics
 - stores unequal keys that hash to the same value
 - duplicates and freezes string keys
+- doesn't duplicate and freeze already frozen string keys
 - raises a TypeError if called on a frozen instance
 - does not raise an exception if changing the value of an existing key during iteration
 
@@ 13727 @@
 - duplicates string keys using dup semantics
 - stores unequal keys that hash to the same value
 - duplicates and freezes string keys
+- doesn't duplicate and freeze already frozen string keys
 - raises a TypeError if called on a frozen instance
 - does not raise an exception if changing the value of an existing key during iteration
 
@@ 15037 @@
 - returns a different value for two Float literals
 - returns a different value for two String literals
 - returns a different value for an object and its dup
+- returns a different value for two numbers near the 32 bit Fixnum limit
+- returns a different value for two numbers near the 64 bit Fixnum limit
 
 Kernel#__id__
 - needs to be reviewed for spec completeness
@@ 15302 @@
 - updates a local in a surrounding block scope
 - updates a local in a scope above a surrounding block scope
 - updates a local in a scope above when modified in a nested block scope
+- updates a local at script scope
 - accepts a Proc object as a binding
 - does not make Proc locals visible to evaluated code
+- stores all locals of nested eval bindings in the first non-eval binding
+- allows a Proc invocation to terminate the eval binding chain on local creation
+- can access normal locals in nested closures
 - allows creating a new class in a binding
 - allows creating a new class in a binding created by #eval
 - includes file and line information in syntax error
@@ 15701 @@
 - does not return superclass methods undefined in a superclass
 - does not return included module methods undefined in the object's class
 
+Kernel#methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/nil_spec.rb
 Kernel#nil?
@@ 15730 @@
 - returns a different value for two Float literals
 - returns a different value for two String literals
 - returns a different value for an object and its dup
+- returns a different value for two numbers near the 32 bit Fixnum limit
+- returns a different value for two numbers near the 64 bit Fixnum limit
 
 Kernel#object_id
 - needs to be reviewed for spec completeness
@@ 15782 @@
 - respects the class hierarchy when decided what is private
 - returns private methods mixed in to the metaclass
 
+Kernel#private_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#private_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/proc_spec.rb
 Kernel.proc
@@ 15809 @@
 - returns a list of the names of protected methods accessible in the object and from its ancestors and mixed-in modules
 - returns protected methods mixed in to the metaclass
 
+Kernel#protected_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#protected_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/public_method_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/public_methods_spec.rb
@@ 15826 @@
 - returns a list of the names of publicly accessible methods in the object and its ancestors and mixed-in modules
 - returns public methods mixed in to the metaclass
 
+Kernel#public_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#public_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/public_send_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/putc_spec.rb
@@ 16109 @@
 - is a private method
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/singleton_methods_spec.rb
+Kernel#singleton_methods when not passed an argument
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- returns the names of singleton methods for an object extented with a module
+- returns a unique list for an object extended with a module
+- returns the names of singleton methods for an object extented with two modules
+- returns the names of singleton methods for an object extented with a module including a module
+- returns the names of inherited singleton methods for a subclass
+- returns a unique list for a subclass
+- returns the names of inherited singleton methods for a subclass including a module
+- returns a unique list for a subclass including a module
+- returns the names of inherited singleton methods for a subclass of a class including a module
+- returns the names of inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns the names of inherited singleton methods for a class extended with a module
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
 
+Kernel#singleton_methods when passed true
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- returns the names of singleton methods for an object extented with a module
+- returns a unique list for an object extended with a module
+- returns the names of singleton methods for an object extented with two modules
+- returns the names of singleton methods for an object extented with a module including a module
+- returns the names of inherited singleton methods for a subclass
+- returns a unique list for a subclass
+- returns the names of inherited singleton methods for a subclass including a module
+- returns a unique list for a subclass including a module
+- returns the names of inherited singleton methods for a subclass of a class including a module
+- returns the names of inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns the names of inherited singleton methods for a class extended with a module
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
 
+Kernel#singleton_methods when passed false
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns an empty Array for an object extented with a module
+- returns an empty Array for an object extented with two modules
+- returns an empty Array for an object extended with a module including a module
+- returns the names of singleton methods of the subclass
+- does not return names of inherited singleton methods for a subclass
+- does not return the names of inherited singleton methods for a class extended with a module
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/sleep_spec.rb
 Kernel#sleep
@@ 17000 @@
 Module#alias_method
 - makes a copy of the method
 - retains method visibility
+- handles aliasing a stub that changes visibility
 - fails if origin method not found
+- converts the names using #to_str
 - raises a TypeError when the given name can't be converted using to_str
 - is a private method
 - works in module
@@ 17028 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_accessor_spec.rb
 Module#attr_accessor
 - creates a getter and setter for each given attribute name
+- allows creating an attr_accessor on an immediate class
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
 - applies current visibility to methods created
@@ 17036 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_reader_spec.rb
 Module#attr_reader
 - creates a getter for each given attribute name
+- allows for adding an attr_reader to an immediate
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
 - applies current visibility to methods created
@@ 17053 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_writer_spec.rb
 Module#attr_writer
 - creates a setter for each given attribute name
+- allows for adding an attr_writer to an immediate
 - creates a setter for an attribute name given as a Fixnum
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
@@ 17118 @@
 - raises an ArgumentError when no arguments and no block are given
 - raises an ArgumentError when more than 3 arguments are given
 - raises an ArgumentError when a block and normal arguments are given
+- adds methods respecting the lexical constant scope
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/class_exec_spec.rb
 Module#class_exec
@@ 17255 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/define_method_spec.rb
 Module#define_method when given an UnboundMethod
+- passes the given arguments to the new method
 - adds the new method to the methods list
+- defines a method on a singleton class
 
 Module#define_method
 - defines the given method as an instance method with the given name in self
@@ 17271 @@
 - is private
 - returns a Proc
 
+Module#define_method passed {  } creates a method that
+- returns the value computed by the block when passed zero arguments
+- returns the value computed by the block when passed one argument
+- returns the value computed by the block when passed two arguments
 
+Module#define_method passed { ||  } creates a method that
+- returns the value computed by the block when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed two arguments
 
+Module#define_method passed { |a|  } creates a method that
+- receives nil as the argument when passed zero arguments
+- receives nil as the argument when passed zero arguments and a block
+- returns the value computed by the block when passed two arguments
+- receives the value passed as the argument when passed one argument
 
+Module#define_method passed { |*a|  } creates a method that
+- receives an empty array as the argument when passed zero arguments
+- receives the value in an array when passed one argument
+- receives the values in an array when passed two arguments
 
+Module#define_method passed { |a, *b|  } creates a method that
+- raises an ArgumentError when passed zero arguments
+- returns the value computed by the block when passed one argument
+- returns the value computed by the block when passed two arguments
 
+Module#define_method passed { |a, b|  } creates a method that
+- returns the value computed by the block when passed two arguments
+- raises an ArgumentError when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed one argument and a block
+- raises an ArgumentError when passed three arguments
 
+Module#define_method passed { |a, b, *c|  } creates a method that
+- raises an ArgumentError when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed one argument and a block
+- receives an empty array as the third argument when passed two arguments
+- receives the third argument in an array when passed three arguments
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/eql_spec.rb
 Module#eql?
@@ 17463 @@
 - raises an ArgumentError when no arguments and no block are given
 - raises an ArgumentError when more than 3 arguments are given
 - raises an ArgumentError when a block and normal arguments are given
+- adds methods respecting the lexical constant scope
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/module_exec_spec.rb
 Module#module_exec
@@ 17530 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#private_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#private_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/private_method_defined_spec.rb
 Module#private_method_defined?
@@ 17563 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#protected_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#protected_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/protected_method_defined_spec.rb
 Module#protected_method_defined?
@@ 17604 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#public_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#public_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/public_method_defined_spec.rb
 Module#public_method_defined?
@@ 19853 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/string/rstrip_spec.rb
 String#rstrip
 - returns a copy of self with trailing whitespace removed
+- returns a copy of self with trailing NULL bytes and whitespace after a NULL byte removed
 - taints the result when self is tainted
 
 String#rstrip!
 - modifies self in place and returns self
+- modifies self removing trailing NULL bytes and whitespace after a NULL
 - returns nil if no modifications were made
 - raises a TypeError on a frozen instance that is modified
 - does not raise an exception on a frozen instance that would not be modified
@@ 20082 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/string/strip_spec.rb
 String#strip
 - returns a new string with leading and trailing whitespace removed
+- returns a copy of self with trailing NULL bytes and whitespace after a NULL byte removed
 - taints the result when self is tainted
 
 String#strip!
 - modifies self in place and returns self
 - returns nil if no modifications where made
+- modifies self removing trailing NULL bytes and whitespace after a NULL byte
 - raises a TypeError on a frozen instance that is modified
 - does not raise an exception on a frozen instance that would not be modified
 
@@ 21812 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/gmt_offset_spec.rb
 Time#gmt_offset
@@ 21876 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/localtime_spec.rb
 Time#localtime
@@ 21912 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/mon_spec.rb
 Time#mon
@@ 22044 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 Time#utc
 - returns the utc representation of time
@@ 22243 @@
 - calls method=
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/language/break_spec.rb
+The break statement in a block
+- returns nil to method invoking the method yielding to the block when not passed an argument
+- returns a value to the method invoking the method yielding to the block
 
+The break statement in a captured block when the invocation of the scope creating the block is still active
+- raises a LocalJumpError when invoking the block from the scope creating the block
+- raises a LocalJumpError when invoking the block from a method
+- raises a LocalJumpError when yielding to the block
 
+The break statement in a captured block from a scope that has returned
+- raises a LocalJumpError when calling the block from a method
+- raises a LocalJumpError when yielding to the block
 
+The break statement in a lambda when the invocation of the scope creating the lambda is still active
+- returns nil when not passed an argument
+- returns a value to the scope creating and calling the lambda
+- returns a value to the method scope below invoking the lambda
+- returns a value to a block scope invoking the lambda in a method below
+- raises a LocalJumpError when yielding to a lambda passed as a block argument
 
+The break statement in a lambda created at the toplevel
+- returns a value when invoking from the toplevel
+- returns a value when invoking from a method
+- returns a value when invoking from a block
 
+The break statement in a lambda from a scope that has returned
+- returns a value to the method scope invoking the lambda
+- returns a value to the block scope invoking the lambda in a method
+- raises a LocalJumpError when yielding to a lambda passed as a block argument
 
 Executing break from within a block
 - returns from the invoking singleton method
@@ 27243 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/etc/passwd_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/etc/setgrent_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/etc/setpwent_spec.rb
+/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/expect/expect_spec.rb
+IO#expect
+- matches data against a Regexp
+- matches data against a String
+- returns any captures of the Regexp
+- returns raises IOError if the IO is closed
+- returns nil if eof is hit
+- yields the result if a block is given
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/fiber/alive_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/fiber/current_spec.rb
@@ 29829 @@
 - returns a string
 - calls inspect on its elements
 - handles recursive arrays
+- taints the result String if the Array is tainted
+- taints the result String if an element is tainted
+- does not taint the result String if the Array is empty
 
 
 Finished in <t> seconds
@@ 32162 @@
 - properly handles recursive arrays
 - accepts a block instead of an argument
 - ignore the block if there is an argument
+- rechecks the array size during iteration
 
 Array#rindex given no argument and no block
 - produces an Enumerator
@@ 33556 @@
 Finished in <t> seconds
 
 1 file, 3 examples, <num> expectations, 0 failures, 0 errors
+== rubyspec/core/class/dup_spec.rb # <time>
++ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/core/class/dup_spec.rb
 ruby <version>
 
+/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/class/dup_spec.rb
+Class#dup
+- duplicates both the class and the singleton class
+- retains the correct ancestor chain for the singleton class
 
 
 Finished in <t> seconds
@@ 34325 @@
 - matches dotfiles with '.*<non-special characters>'
 - matches files with any ending with '<non-special characters>*'
 - matches files with any middle with '<non-special characters>*<non-special characters>'
+- handles directories with globs
 - matches files with multiple '*' special characters
 - matches non-dotfiles in the current directory with '**'
 - matches dotfiles in the current directory with '.**'
@@ 34338 @@
 - matches any characters except those in a set with '[^<characters>]'
 - matches any characters except those in a range with '[^<character>-<character]'
 - matches any one of the strings in a set with '{<string>,<other>,...}'
+- matches a set '{<string>,<other>,...}' which also uses a glob
 - accepts string sets with empty strings with {<string>,,<other>}
 - matches dot or non-dotfiles with '{,.}*'
 - respects the order of {} expressions, expanding left most first
@@ 34438 @@
 - matches dotfiles with '.*<non-special characters>'
 - matches files with any ending with '<non-special characters>*'
 - matches files with any middle with '<non-special characters>*<non-special characters>'
+- handles directories with globs
 - matches files with multiple '*' special characters
 - matches non-dotfiles in the current directory with '**'
 - matches dotfiles in the current directory with '.**'
@@ 34451 @@
 - matches any characters except those in a set with '[^<characters>]'
 - matches any characters except those in a range with '[^<character>-<character]'
 - matches any one of the strings in a set with '{<string>,<other>,...}'
+- matches a set '{<string>,<other>,...}' which also uses a glob
 - accepts string sets with empty strings with {<string>,,<other>}
 - matches dot or non-dotfiles with '{,.}*'
 - respects the order of {} expressions, expanding left most first
@@ 36860 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/exception/set_backtrace_spec.rb
 Exception#set_backtrace
 - allows the user to set the backtrace to any array
+- allows the user to set the backtrace from a rescued exception
 
 
 Finished in <t> seconds
@@ 37456 @@
 - does not modify a HOME string argument
 - returns a String when passed a String subclass
 
+File.expand_path when HOME is not set
+- raises an ArgumentError when passed '~' if HOME is nil
+- raises an ArgumentError when passed '~' if HOME == ''
 
 
 Finished in <t> seconds
@@ 40766 @@
 - creates a Hash; values can be provided as a list of value-pairs in an array
 - raises an ArgumentError when passed an odd number of arguments
 - calls to_hash
+- returns an instance of a subclass when passed an Array
 - returns an instance of the class it's called on
 
 
@@ 40882 @@
 Hash#each
 - yields a [[key, value]] Array for each pair to a block expecting |*args|
 - yields the key and value of each pair to a block expecting |key, value|
+- yields the key only to a block expecting |key,|
 - uses the same order as keys() and values()
 - returns an Enumerator if called on a non-empty hash without a block
 - returns an Enumerator if called on an empty hash without a block
@@ 40941 @@
 - duplicates string keys using dup semantics
 - stores unequal keys that hash to the same value
 - duplicates and freezes string keys
+- doesn't duplicate and freeze already frozen string keys
 - raises a TypeError if called on a frozen instance
 - does not raise an exception if changing the value of an existing key during iteration
 
@@ 41453 @@
 - duplicates string keys using dup semantics
 - stores unequal keys that hash to the same value
 - duplicates and freezes string keys
+- doesn't duplicate and freeze already frozen string keys
 - raises a TypeError if called on a frozen instance
 - does not raise an exception if changing the value of an existing key during iteration
 
@@ 43822 @@
 - returns a different value for two Float literals
 - returns a different value for two String literals
 - returns a different value for an object and its dup
+- returns a different value for two numbers near the 32 bit Fixnum limit
+- returns a different value for two numbers near the 64 bit Fixnum limit
 
 Kernel#__id__
 - needs to be reviewed for spec completeness
@@ 44365 @@
 - updates a local in a surrounding block scope
 - updates a local in a scope above a surrounding block scope
 - updates a local in a scope above when modified in a nested block scope
+- updates a local at script scope
 - accepts a Proc object as a binding
 - does not make Proc locals visible to evaluated code
+- stores all locals of nested eval bindings in the first non-eval binding
+- allows a Proc invocation to terminate the eval binding chain on local creation
+- can access normal locals in nested closures
 - allows creating a new class in a binding
 - allows creating a new class in a binding created by #eval
 - includes file and line information in syntax error
@@ 45077 @@
 - does not return superclass methods undefined in a superclass
 - does not return included module methods undefined in the object's class
 
+Kernel#methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 
 Finished in <t> seconds
@@ 45130 @@
 - returns a different value for two Float literals
 - returns a different value for two String literals
 - returns a different value for an object and its dup
+- returns a different value for two numbers near the 32 bit Fixnum limit
+- returns a different value for two numbers near the 64 bit Fixnum limit
 
 Kernel#object_id
 - needs to be reviewed for spec completeness
@@ 45222 @@
 - respects the class hierarchy when decided what is private
 - returns private methods mixed in to the metaclass
 
+Kernel#private_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#private_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 
 Finished in <t> seconds
@@ 45265 @@
 - returns a list of the names of protected methods accessible in the object and from its ancestors and mixed-in modules
 - returns protected methods mixed in to the metaclass
 
+Kernel#protected_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#protected_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 
 Finished in <t> seconds
@@ 45298 @@
 - returns a list of the names of publicly accessible methods in the object and its ancestors and mixed-in modules
 - returns public methods mixed in to the metaclass
 
+Kernel#public_methods when not passed an argument
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
+Kernel#public_methods when passed true
+- returns a unique list for an object extended by a module
+- returns a unique list for a class including a module
+- returns a unique list for a subclass of a class that includes a module
 
 
 Finished in <t> seconds
@@ 45749 @@
 ruby <version>
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/singleton_methods_spec.rb
+Kernel#singleton_methods when not passed an argument
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- returns the names of singleton methods for an object extented with a module
+- returns a unique list for an object extended with a module
+- returns the names of singleton methods for an object extented with two modules
+- returns the names of singleton methods for an object extented with a module including a module
+- returns the names of inherited singleton methods for a subclass
+- returns a unique list for a subclass
+- returns the names of inherited singleton methods for a subclass including a module
+- returns a unique list for a subclass including a module
+- returns the names of inherited singleton methods for a subclass of a class including a module
+- returns the names of inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns the names of inherited singleton methods for a class extended with a module
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
 
+Kernel#singleton_methods when passed true
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- returns the names of singleton methods for an object extented with a module
+- returns a unique list for an object extended with a module
+- returns the names of singleton methods for an object extented with two modules
+- returns the names of singleton methods for an object extented with a module including a module
+- returns the names of inherited singleton methods for a subclass
+- returns a unique list for a subclass
+- returns the names of inherited singleton methods for a subclass including a module
+- returns a unique list for a subclass including a module
+- returns the names of inherited singleton methods for a subclass of a class including a module
+- returns the names of inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns the names of inherited singleton methods for a class extended with a module
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
 
+Kernel#singleton_methods when passed false
+- returns an empty Array for an object with no singleton methods
+- returns the names of module methods for a module
+- does not return private module methods for a module
+- returns the names of class methods for a class
+- does not return private class methods for a class
+- returns the names of singleton methods for an object
+- does not return any included methods for a module including a module
+- does not return any included methods for a class including a module
+- does not return private singleton methods for an object extended with a module
+- does not return private singleton methods for an object extended with two modules
+- does not return private singleton methods for an object extented with a module including a module
+- does not return private singleton methods for a class extended with a module
+- does not return private inherited singleton methods for a module including a module
+- does not return private inherited singleton methods for a class including a module
+- does not return private inherited singleton methods for a subclass
+- does not return private inherited singleton methods for a subclass including a module
+- does not return private inherited singleton methods for a subclass of a class including a module
+- does not return private inherited singleton methods for a subclass of a class that includes a module, where the subclass also includes a module
+- returns an empty Array for an object extented with a module
+- returns an empty Array for an object extented with two modules
+- returns an empty Array for an object extended with a module including a module
+- returns the names of singleton methods of the subclass
+- does not return names of inherited singleton methods for a subclass
+- does not return the names of inherited singleton methods for a class extended with a module
 
 
 Finished in <t> seconds
 
+1 file, 82 examples, <num> expectations, 0 failures, 0 errors
 == rubyspec/core/kernel/sleep_spec.rb # <time>
 + bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/core/kernel/sleep_spec.rb
 ruby <version>
@@ 47448 @@
 Module#alias_method
 - makes a copy of the method
 - retains method visibility
+- handles aliasing a stub that changes visibility
 - fails if origin method not found
+- converts the names using #to_str
 - raises a TypeError when the given name can't be converted using to_str
 - is a private method
 - works in module
@@ 47508 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_accessor_spec.rb
 Module#attr_accessor
 - creates a getter and setter for each given attribute name
+- allows creating an attr_accessor on an immediate class
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
 - applies current visibility to methods created
@@ 47524 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_reader_spec.rb
 Module#attr_reader
 - creates a getter for each given attribute name
+- allows for adding an attr_reader to an immediate
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
 - applies current visibility to methods created
@@ 47557 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/attr_writer_spec.rb
 Module#attr_writer
 - creates a setter for each given attribute name
+- allows for adding an attr_writer to an immediate
 - creates a setter for an attribute name given as a Fixnum
 - converts non string/symbol/fixnum names to strings using to_str
 - raises a TypeError when the given names can't be converted to strings using to_str
@@ 47679 @@
 - raises an ArgumentError when no arguments and no block are given
 - raises an ArgumentError when more than 3 arguments are given
 - raises an ArgumentError when a block and normal arguments are given
+- adds methods respecting the lexical constant scope
 
 
 Finished in <t> seconds
@@ 47912 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/define_method_spec.rb
 Module#define_method when given an UnboundMethod
+- passes the given arguments to the new method
 - adds the new method to the methods list
+- defines a method on a singleton class
 
 Module#define_method
 - defines the given method as an instance method with the given name in self
@@ 47928 @@
 - is private
 - returns a Proc
 
+Module#define_method passed {  } creates a method that
+- returns the value computed by the block when passed zero arguments
+- returns the value computed by the block when passed one argument
+- returns the value computed by the block when passed two arguments
 
+Module#define_method passed { ||  } creates a method that
+- returns the value computed by the block when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed two arguments
 
+Module#define_method passed { |a|  } creates a method that
+- receives nil as the argument when passed zero arguments
+- receives nil as the argument when passed zero arguments and a block
+- returns the value computed by the block when passed two arguments
+- receives the value passed as the argument when passed one argument
 
+Module#define_method passed { |*a|  } creates a method that
+- receives an empty array as the argument when passed zero arguments
+- receives the value in an array when passed one argument
+- receives the values in an array when passed two arguments
 
+Module#define_method passed { |a, *b|  } creates a method that
+- raises an ArgumentError when passed zero arguments
+- returns the value computed by the block when passed one argument
+- returns the value computed by the block when passed two arguments
 
+Module#define_method passed { |a, b|  } creates a method that
+- returns the value computed by the block when passed two arguments
+- raises an ArgumentError when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed one argument and a block
+- raises an ArgumentError when passed three arguments
 
+Module#define_method passed { |a, b, *c|  } creates a method that
+- raises an ArgumentError when passed zero arguments
+- raises an ArgumentError when passed one argument
+- raises an ArgumentError when passed one argument and a block
+- receives an empty array as the third argument when passed two arguments
+- receives the third argument in an array when passed three arguments
 
 
 Finished in <t> seconds
@@ 48296 @@
 - raises an ArgumentError when no arguments and no block are given
 - raises an ArgumentError when more than 3 arguments are given
 - raises an ArgumentError when a block and normal arguments are given
+- adds methods respecting the lexical constant scope
 
 
 Finished in <t> seconds
@@ 48419 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#private_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#private_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 
 Finished in <t> seconds
@@ 48476 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#protected_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#protected_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 
 Finished in <t> seconds
@@ 48557 @@
 - when passed false as a parameter, should return only methods defined in that module
 - default list should be the same as passing true as an argument
 
+Module#public_instance_methods when not passed an argument
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
+Module#public_instance_methods when passed true
+- returns a unique list for a class including a module
+- returns a unique list for a subclass
 
 
 Finished in <t> seconds
@@ 54055 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/string/rstrip_spec.rb
 String#rstrip
 - returns a copy of self with trailing whitespace removed
+- returns a copy of self with trailing NULL bytes and whitespace after a NULL byte removed
 - taints the result when self is tainted
 
 String#rstrip!
 - modifies self in place and returns self
+- modifies self removing trailing NULL bytes and whitespace after a NULL
 - returns nil if no modifications were made
 - raises a TypeError on a frozen instance that is modified
 - does not raise an exception on a frozen instance that would not be modified
@@ 54414 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/string/strip_spec.rb
 String#strip
 - returns a new string with leading and trailing whitespace removed
+- returns a copy of self with trailing NULL bytes and whitespace after a NULL byte removed
 - taints the result when self is tainted
 
 String#strip!
 - modifies self in place and returns self
 - returns nil if no modifications where made
+- modifies self removing trailing NULL bytes and whitespace after a NULL byte
 - raises a TypeError on a frozen instance that is modified
 - does not raise an exception on a frozen instance that would not be modified
 
@@ 57662 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 
 Finished in <t> seconds
@@ 57814 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 
 Finished in <t> seconds
@@ 57890 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 
 Finished in <t> seconds
@@ 58238 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
+- raises ArgumentError for invalid number of arguments
+- accepts a String or Integer only for arguments
+- does not accept nil for params
 
 Time#utc
 - returns the utc representation of time
@@ 58661 @@
 ruby <version>
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/language/break_spec.rb
+The break statement in a block
+- returns nil to method invoking the method yielding to the block when not passed an argument
+- returns a value to the method invoking the method yielding to the block
 
+The break statement in a captured block when the invocation of the scope creating the block is still active
+- raises a LocalJumpError when invoking the block from the scope creating the block
+- raises a LocalJumpError when invoking the block from a method
+- raises a LocalJumpError when yielding to the block
 
+The break statement in a captured block from a scope that has returned
+- raises a LocalJumpError when calling the block from a method
+- raises a LocalJumpError when yielding to the block
 
+The break statement in a lambda when the invocation of the scope creating the lambda is still active
+- returns nil when not passed an argument
+- returns a value to the scope creating and calling the lambda
+- returns a value to the method scope below invoking the lambda
+- returns a value to a block scope invoking the lambda in a method below
+- raises a LocalJumpError when yielding to a lambda passed as a block argument
 
+The break statement in a lambda created at the toplevel
+- returns a value when invoking from the toplevel
+- returns a value when invoking from a method
+- returns a value when invoking from a block
 
+The break statement in a lambda from a scope that has returned
+- returns a value to the method scope invoking the lambda
+- returns a value to the block scope invoking the lambda in a method
+- raises a LocalJumpError when yielding to a lambda passed as a block argument
 
 Executing break from within a block
 - returns from the invoking singleton method
@@ 69064 @@
 Finished in <t> seconds
 
 1 file, 0 examples, <num> expectations, 0 failures, 0 errors
+== rubyspec/library/expect/expect_spec.rb # <time>
++ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/library/expect/expect_spec.rb
 ruby <version>
 
+/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/expect/expect_spec.rb
+IO#expect
+- matches data against a Regexp
+- matches data against a String
+- returns any captures of the Regexp
+- returns raises IOError if the IO is closed
+- returns nil if eof is hit
+- yields the result if a block is given
 
 
 Finished in <t> seconds
@@ 83314 @@
 StringScanner#initialize
 - is a private method
 - returns an instance of StringScanner
+- converts the argument into a string using #to_str
 
 
 Finished in <t> seconds
@@ 83666 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/stringscanner/string_spec.rb
 StringScanner#string
 - returns the string being scanned
+- returns the identical object passed in
 
 StringScanner#string=
 - changes the string being scanned to the argument and resets the scanner
+- converts the argument into a string using #to_str
 
 
 Finished in <t> seconds
@@ 86815 @@
 
 C-API Hash function rb_hash_foreach
 - iterates over the hash
+- stops via the callback
+- deletes via the callback
 
 
 Finished in <t> seconds
@@ 87320 @@
 - returns a string which can be assigned to from C
 - returns a string that can be modified by rb_str_set_len
 
+C-API String function rb_str_buf_new2
 - returns a new string object calling strlen on the passed C string
 
 C-API String function rb_str_new
@@ 87427 @@
 
 Finished in <t> seconds
 
+1 file, 60 examples, <num> expectations, 0 failures, 0 errors
 == rubyspec/optional/capi/struct_spec.rb # <time>
 + bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/optional/capi/struct_spec.rb
 ruby <version>

===================================================================
--- 20110307T232125Z
@@ 7993 @@
 - returns a string
 - calls inspect on its elements
 - handles recursive arrays
-- propagates taint from itself or elements
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/array/intersection_spec.rb
 Array#&
@@ 9916 @@
 
 Array#rindex given no argument and no block
 - produces an Enumerator
-- raises StopIteration if the array is truncated before completion
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/array/rotate_spec.rb
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/array/sample_spec.rb
@@ 12006 @@
 - expands ~ENV['USER'] to the user's home directory
 - does not expand ~ENV['USER'] when it's not at the start
 - expands ../foo with ~/dir as base dir to /path/to/user/home/foo
-- raises an ArgumentError if not passed one or two arguments
 - raises a TypeError if not passed a String type
 - expands /./dir to /dir
 - does not modify the string argument
@@ 13423 @@
 Hash#each
 - yields a [[key, value]] Array for each pair to a block expecting |*args|
 - yields the key and value of each pair to a block expecting |key, value|
-- yields the key only to a block expecting |key,| (FAILED - <n>)
 - uses the same order as keys() and values()
 - returns an Enumerator if called on a non-empty hash without a block
 - returns an Enumerator if called on an empty hash without a block
@@ 15279 @@
 - evaluates such that consts are scoped to the class of the eval
 - finds a local in an enclosing scope
 - updates a local in an enclosing scope
-- creates an eval-scope local
 - updates a local in a surrounding block scope
 - updates a local in a scope above a surrounding block scope
 - updates a local in a scope above when modified in a nested block scope
 - accepts a Proc object as a binding
 - does not make Proc locals visible to evaluated code
-- allows a binding to be captured inside an eval
-- allows Proc and binding to be nested in horrible ways
 - allows creating a new class in a binding
 - allows creating a new class in a binding created by #eval
-- allows creating a new class in a binding returned by a method defined with #eval
 - includes file and line information in syntax error
 - should perform top level evaluations from inside a block
 - uses the filename of the binding if none is provided
 - should not alter the value of __FILE__ in the binding
 - uses the receiver as self inside the eval
 
-Kernel.eval
 - does not pass the block to the method being eval'ed
 - needs to be reviewed for spec completeness
 
@@ 15363 @@
 - is accessible as a module function
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/freeze_spec.rb
-Kernel#freeze
-- prevents self from being further modified
 - returns the immediate when called on an immediate
 - has no effect on immediate values
 - causes mutative calls to raise TypeError
@@ 16056 @@
 - is a private method
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/singleton_methods_spec.rb
-Kernel#singleton_methods
-- returns a list of the names of singleton methods in the object
-- returns a list of names of singleton methods in object and superclasses when passed true
-- should handle singleton_methods call with and without argument
-- returns a list of the names of singleton methods in the object and its ancestors and mixed-in modules
-- includes public and protected methods defined through a mixin into the metaclass based on the flag
-- does not include private methods defined through a mixin into the metaclass
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/sleep_spec.rb
 Kernel#sleep
@@ 16090 @@
 - treats nil arguments as zeroes in %d slots
 - passes some tests for positive %x
 - passes some tests for negative %x
-- passes some tests for negative % u
 - passes some tests for negative %u
 - passes some tests for positive %u
 - passes some tests for positive %f
@@ 17117 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/define_method_spec.rb
 Module#define_method when given an UnboundMethod
-- correctly passes given arguments to the new method
 - adds the new method to the methods list
-- works for singleton classes too
 
 Module#define_method
 - defines the given method as an instance method with the given name in self
-- supports being called with a splat
 - calls #method_added after the method is added to the Module
 - defines a new method with the given name and the given block as body in self
 - raises a TypeError when the given method is no Method/Proc
@@ 21605 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/gmt_offset_spec.rb
 Time#gmt_offset
@@ 21667 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/localtime_spec.rb
 Time#localtime
@@ 21701 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/time/mon_spec.rb
 Time#mon
@@ 21831 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 Time#utc
 - returns the utc representation of time
@@ 22029 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/language/break_spec.rb
 The break statement
-- ends block execution if used whithin block
-- causes block to return value passed to break
-- causes block to return nil if an empty expression passed to break
-- causes block to return nil if no value passed to break
 
 Executing break from within a block
 - returns from the invoking singleton method
@@ 29581 @@
 - returns a string
 - calls inspect on its elements
 - handles recursive arrays
-- propagates taint from itself or elements
 
 
 Finished in <t> seconds
@@ 31915 @@
 
 Array#rindex given no argument and no block
 - produces an Enumerator
-- raises StopIteration if the array is truncated before completion
 
 
 Finished in <t> seconds
@@ 34208 @@
 
 Finished in <t> seconds
 
-1 file, 48 examples, <num> expectations, 0 failures, 0 errors
 == rubyspec/core/dir/home_spec.rb # <time>
 + bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/core/dir/home_spec.rb
 ruby <version>
@@ 37182 @@
 - expands ~ENV['USER'] to the user's home directory
 - does not expand ~ENV['USER'] when it's not at the start
 - expands ../foo with ~/dir as base dir to /path/to/user/home/foo
-- raises an ArgumentError if not passed one or two arguments
 - raises a TypeError if not passed a String type
 - expands /./dir to /dir
 - does not modify the string argument
@@ 40610 @@
 Hash#each
 - yields a [[key, value]] Array for each pair to a block expecting |*args|
 - yields the key and value of each pair to a block expecting |key, value|
-- yields the key only to a block expecting |key,| (FAILED - <n>)
 - uses the same order as keys() and values()
 - returns an Enumerator if called on a non-empty hash without a block
 - returns an Enumerator if called on an empty hash without a block
 
 
  <n>)
-Hash#each yields the key only to a block expecting |key,| FAILED
-Expected [:c, :a, :b]
- to equal [:a, :b, :c]
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/expectations/expectations.rb:15:in `fail_with'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/matchers/base.rb:8:in `=='
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/hash/shared/each.rb:19
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `instance_eval'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `protect'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `protect'
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/hash/each_spec.rb:4:in `all?'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `each'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `all?'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `protect'
@@ 40636 @@
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/context.rb:199:in `process'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:37:in `describe'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/object.rb:11:in `describe'
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/hash/each_spec.rb:6
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `load'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `files'
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `instance_eval'
@@ 40651 @@
 
 Finished in <t> seconds
 
-1 file, 6 examples, <num> expectations, 1 failure, 0 errors
 exit 1
-failed(rubyspec/core/hash/each_spec.rb)
 == rubyspec/core/hash/each_value_spec.rb # <time>
 + bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/core/hash/each_value_spec.rb
 ruby <version>
@@ 44121 @@
 - evaluates such that consts are scoped to the class of the eval
 - finds a local in an enclosing scope
 - updates a local in an enclosing scope
-- creates an eval-scope local
 - updates a local in a surrounding block scope
 - updates a local in a scope above a surrounding block scope
 - updates a local in a scope above when modified in a nested block scope
 - accepts a Proc object as a binding
 - does not make Proc locals visible to evaluated code
-- allows a binding to be captured inside an eval
-- allows Proc and binding to be nested in horrible ways
 - allows creating a new class in a binding
 - allows creating a new class in a binding created by #eval
-- allows creating a new class in a binding returned by a method defined with #eval
 - includes file and line information in syntax error
 - should perform top level evaluations from inside a block
 - uses the filename of the binding if none is provided
 - should not alter the value of __FILE__ in the binding
 - uses the receiver as self inside the eval
 
-Kernel.eval
 - does not pass the block to the method being eval'ed
 - needs to be reviewed for spec completeness
 
@@ 44261 @@
 ruby <version>
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/freeze_spec.rb
-Kernel#freeze
-- prevents self from being further modified
 - returns the immediate when called on an immediate
 - has no effect on immediate values
 - causes mutative calls to raise TypeError
@@ 45475 @@
 ruby <version>
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/kernel/singleton_methods_spec.rb
-Kernel#singleton_methods
-- returns a list of the names of singleton methods in the object
-- returns a list of names of singleton methods in object and superclasses when passed true
-- should handle singleton_methods call with and without argument
-- returns a list of the names of singleton methods in the object and its ancestors and mixed-in modules
-- includes public and protected methods defined through a mixin into the metaclass based on the flag
-- does not include private methods defined through a mixin into the metaclass
 
 
 Finished in <t> seconds
@@ 45541 @@
 - treats nil arguments as zeroes in %d slots
 - passes some tests for positive %x
 - passes some tests for negative %x
-- passes some tests for negative % u
 - passes some tests for negative %u
 - passes some tests for positive %u
 - passes some tests for positive %f
@@ 47553 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/core/module/define_method_spec.rb
 Module#define_method when given an UnboundMethod
-- correctly passes given arguments to the new method
 - adds the new method to the methods list
-- works for singleton classes too
 
 Module#define_method
 - defines the given method as an instance method with the given name in self
-- supports being called with a splat
 - calls #method_added after the method is added to the Module
 - defines a new method with the given name and the given block as body in self
 - raises a TypeError when the given method is no Method/Proc
@@ 57234 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 
 Finished in <t> seconds
@@ 57384 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 
 Finished in <t> seconds
@@ 57458 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 
 Finished in <t> seconds
@@ 57804 @@
 - handles float arguments
 - should accept various year ranges
 - raises an ArgumentError for out of range values
-- throws ArgumentError for invalid number of arguments
 
 Time#utc
 - returns the utc representation of time
@@ 58226 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/language/break_spec.rb
 The break statement
-- ends block execution if used whithin block
-- causes block to return value passed to break
-- causes block to return nil if an empty expression passed to break
-- causes block to return nil if no value passed to break
 
 Executing break from within a block
 - returns from the invoking singleton method
@@ 82714 @@
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/stringscanner/dup_spec.rb
 StringScanner#dup
-- returns a new StringScanner duplicated from the original
 
 
 Finished in <t> seconds
@@ 82826 @@
 Finished in <t> seconds
 
 1 file, 5 examples, <num> expectations, 0 failures, 0 errors
-== rubyspec/library/stringscanner/initialize_copy_spec.rb # <time>
-+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/library/stringscanner/initialize_copy_spec.rb
 ruby <version>
 
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/library/stringscanner/initialize_copy_spec.rb
-StringScanner#initialize_copy
 - is a private method
 - copies the passed StringScanner's content to self
 - copies the passed StringSCanner's position to self
 - copies previous match state
-- does not taint self when the passed StringScanner is tainted
 - copies the passed StringScanner scan pointer to self
 
 
@@ 85938 @@
 == rubyspec/optional/capi/array_spec.rb # <time>
 + bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/bin/ruby rubyspec/optional/capi/array_spec.rb
 ruby <version>
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/optional/capi/ext/array_spec.c: In function [e28098]sub_pair[e28099]:
-/home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/optional/capi/ext/array_spec.c:<line_a>: warning: no return statement in function returning non-void
 
 /home/chkbuild/tmp/build/ruby-1.8/<buildtime>/rubyspec/optional/capi/array_spec.rb
 C-API Array function rb_ary_new

OlderDiff < 20110307T232125Z < ThisDiff > 20110308T232423Z > NewerDiff


chkbuild summary recent last