OlderDiff < 20110308T005133Z < ThisDiff > 20110309T005508Z > NewerDiff
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.
===================================================================
+++ 20110309T005508Z
@@ 10422 @@
- returns a fully-formed instance of Module
- does not call initialize on the new instance
+/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/core/class/inherited_spec.rb
Class.inherited
@@ 10637 @@
- 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 '.**'
@@ 10650 @@
- 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
@@ 10702 @@
- 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 '.**'
@@ 10715 @@
- 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
@@ 11398 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/core/exception/signm_spec.rb
SignalException#signm
@@ 11706 @@
- 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
+- returns '/' when passed '~' if HOME == ''
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/file/extname_spec.rb
File.extname
@@ 13673 @@
- raises an IOError if passed a closed stream
- raises an Errno::EINVAL if the new mode is not compatible with the descriptor's current mode
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb
+IO.foreach
+- raises TypeError if the first parameter is nil
+- raises Errno::ENOENT if the file does not exist
+- converts first parameter to string and uses as file name
+IO.foreach with no separator argument
+- yields a sequence of Strings that were separated by $/
+- updates $. with each yield
+IO.foreach with nil as the separator argument
+- yields a single string with entire content
+- updates $. with each yield
+IO.foreach with an empty String as the separator argument
+- yields a sequence of paragraphs when the separator is an empty string
+- updates $. with each yield
+IO.foreach with an arbitrary String as the separator argument
+- yields a sequence of Strings that were separated by r
+- updates $. with each yield
+- accepts non-ASCII data as separator
+IO.foreach with an object as the separator argument
+- calls #to_str once to convert it to a String
+IO.foreach when the filename starts with |
- gets data from the standard out of the subprocess
- gets data from a fork when passed -
@@ 14611 @@
- 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
@@ 14864 @@
- 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
@@ 15259 @@
- 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.6/<buildtime>/rubyspec/core/kernel/nil_spec.rb
Kernel#nil?
@@ 15288 @@
- 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
@@ 15340 @@
- 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.6/<buildtime>/rubyspec/core/kernel/proc_spec.rb
Kernel.proc
@@ 15367 @@
- 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.6/<buildtime>/rubyspec/core/kernel/public_method_spec.rb
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/kernel/public_methods_spec.rb
@@ 15384 @@
- 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.6/<buildtime>/rubyspec/core/kernel/public_send_spec.rb
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/kernel/putc_spec.rb
@@ 15659 @@
- is a private method
/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/core/kernel/sleep_spec.rb
Kernel#sleep
@@ 16528 @@
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
@@ 16556 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 16564 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 16581 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 16783 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
Module#define_method
@@ 16798 @@
- 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.6/<buildtime>/rubyspec/core/module/eql_spec.rb
Module#eql?
@@ 17057 @@
- 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.6/<buildtime>/rubyspec/core/module/private_method_defined_spec.rb
Module#private_method_defined?
@@ 17090 @@
- 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.6/<buildtime>/rubyspec/core/module/protected_method_defined_spec.rb
Module#protected_method_defined?
@@ 17131 @@
- 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.6/<buildtime>/rubyspec/core/module/public_method_defined_spec.rb
Module#public_method_defined?
@@ 21178 @@
- 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.6/<buildtime>/rubyspec/core/time/gmt_offset_spec.rb
Time#gmt_offset
@@ 21242 @@
- 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.6/<buildtime>/rubyspec/core/time/localtime_spec.rb
Time#localtime
@@ 21278 @@
- 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.6/<buildtime>/rubyspec/core/time/mon_spec.rb
Time#mon
@@ 21410 @@
- 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
@@ 21598 @@
- calls method=
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 32411 @@
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.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/class/dup_spec.rb
ruby <version>
+/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 33102 @@
- 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 '.**'
@@ 33115 @@
- 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
@@ 33215 @@
- 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 '.**'
@@ 33228 @@
- 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
@@ 35415 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 36011 @@
- 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
+- returns '/' when passed '~' if HOME == ''
Finished in <t> seconds
@@ 40525 @@
+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/io/foreach_spec.rb
ruby <version>
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb
+IO.foreach
+- raises TypeError if the first parameter is nil
+- raises Errno::ENOENT if the file does not exist
+- converts first parameter to string and uses as file name
+IO.foreach with no separator argument
+- yields a sequence of Strings that were separated by $/
+- updates $. with each yield
+IO.foreach with nil as the separator argument
+- yields a single string with entire content
+- updates $. with each yield
+IO.foreach with an empty String as the separator argument
+- yields a sequence of paragraphs when the separator is an empty string
+- updates $. with each yield
+IO.foreach with an arbitrary String as the separator argument
+- yields a sequence of Strings that were separated by r
+- updates $. with each yield
+- accepts non-ASCII data as separator
+IO.foreach with an object as the separator argument
+- calls #to_str once to convert it to a String
+IO.foreach when the filename starts with |
- gets data from the standard out of the subprocess
- gets data from a fork when passed -
@@ 42034 @@
- 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
@@ 42495 @@
- 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
@@ 43170 @@
- 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
@@ 43223 @@
- 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
@@ 43315 @@
- 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
@@ 43358 @@
- 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
@@ 43391 @@
- 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
@@ 43834 @@
ruby <version>
/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/kernel/sleep_spec.rb
ruby <version>
@@ 45447 @@
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
@@ 45507 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 45523 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 45556 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 46001 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
Module#define_method
@@ 46016 @@
- 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
@@ 46630 @@
- 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
@@ 46687 @@
- 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
@@ 46768 @@
- 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
@@ 55190 @@
- 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
@@ 55342 @@
- 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
@@ 55418 @@
- 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
@@ 55766 @@
- 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
@@ 56178 @@
ruby <version>
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 62157 @@
<n>)
+ConditionVariable#broadcast releases all threads waiting in line for this resource ERROR
+ThreadError: Thread#join: deadlock 0x7fd1c2c2adf8 - mutual join(0x7fd1c190af98)
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:55:in `join'
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:55
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:55:in `each'
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:55
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `instance_eval'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `protect'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `protect'
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:2:in `all?'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `each'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `all?'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/context.rb:179:in `protect'
@@ 62175 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/context.rb:199:in `process'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:37:in `describe'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/object.rb:11:in `describe'
+/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/conditionvariable/broadcast_spec.rb:4
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `load'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `files'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `instance_eval'
@@ 62190 @@
Finished in <t> seconds
+1 file, 3 examples, <num> expectations, 0 failures, 1 error
exit 1
+failed(rubyspec/library/conditionvariable/broadcast_spec.rb)
== rubyspec/library/conditionvariable/signal_spec.rb # <time>
+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/library/conditionvariable/signal_spec.rb
ruby <version>
@@ 78909 @@
StringScanner#initialize
- is a private method
- returns an instance of StringScanner
+- converts the argument into a string using #to_str
Finished in <t> seconds
@@ 79261 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 82339 @@
C-API Hash function rb_hash_foreach
- iterates over the hash
+- stops via the callback
+- deletes via the callback
Finished in <t> seconds
===================================================================
--- 20110308T005133Z
@@ 11690 @@
- 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
@@ 13660 @@
- raises an IOError if passed a closed stream
- raises an Errno::EINVAL if the new mode is not compatible with the descriptor's current mode
-/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb (ERROR - <n>)
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/fsync_spec.rb
IO#fsync
- raises an IOError on closed stream
@@ 14817 @@
- 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
@@ 14901 @@
- is accessible as a module function
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 15582 @@
- is a private method
/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/core/kernel/sleep_spec.rb
Kernel#sleep
@@ 15616 @@
- 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
@@ 16622 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
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
@@ 20953 @@
- 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.6/<buildtime>/rubyspec/core/time/gmt_offset_spec.rb
Time#gmt_offset
@@ 21015 @@
- 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.6/<buildtime>/rubyspec/core/time/localtime_spec.rb
Time#localtime
@@ 21049 @@
- 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.6/<buildtime>/rubyspec/core/time/mon_spec.rb
Time#mon
@@ 21179 @@
- 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
@@ 21366 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 32978 @@
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.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/dir/home_spec.rb
ruby <version>
@@ 35730 @@
- 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
@@ 40247 @@
+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/io/foreach_spec.rb
ruby <version>
-/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb (ERROR - <n>)
<n>)
-An exception occurred during: loading /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb ERROR
-SyntaxError: /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb:58: syntax error, unexpected ':', expecting ')'
- IO.foreach(@name, mode: 'r') {|l| ScratchPad << l}
- ^
-/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb:58: syntax error, unexpected ')', expecting kEND
- IO.foreach(@name, mode: 'r') {|l| ScratchPad << l}
- ^
-/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/core/io/foreach_spec.rb:58: syntax error, unexpected '}', expecting kEND
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `load'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:56:in `files'
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/mspec/lib/mspec/runner/mspec.rb:68:in `instance_eval'
@@ 40274 @@
1 file, 0 examples, <num> expectations, 0 failures, 1 error
exit 1
-failed(rubyspec/core/io/foreach_spec.rb)
== rubyspec/core/io/fsync_spec.rb # <time>
+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/core/io/fsync_spec.rb
ruby <version>
@@ 42206 @@
- 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
@@ 42346 @@
ruby <version>
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 43515 @@
ruby <version>
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 43581 @@
- 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
@@ 45598 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
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
@@ 54723 @@
- 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
@@ 54873 @@
- 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
@@ 54947 @@
- 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
@@ 55293 @@
- 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
@@ 55704 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 78253 @@
/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/library/stringscanner/dup_spec.rb
StringScanner#dup
-- returns a new StringScanner duplicated from the original
Finished in <t> seconds
@@ 78365 @@
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.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/library/stringscanner/initialize_copy_spec.rb
ruby <version>
-/home/chkbuild/tmp/build/ruby-1.8.6/<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
@@ 81414 @@
== rubyspec/optional/capi/array_spec.rb # <time>
+ bin/ruby mspec/bin/mspec -V -f s -B /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/ruby.1.8.mspec -t /home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/bin/ruby rubyspec/optional/capi/array_spec.rb
ruby <version>
-/home/chkbuild/tmp/build/ruby-1.8.6/<buildtime>/rubyspec/optional/capi/ext/array_spec.c: In function [e28098]sub_pair[e28099]:
-/home/chkbuild/tmp/build/ruby-1.8.6/<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.6/<buildtime>/rubyspec/optional/capi/array_spec.rb
C-API Array function rb_ary_new
OlderDiff < 20110308T005133Z < ThisDiff > 20110309T005508Z > NewerDiff