[macruby-changes] [1256] MacRuby/branches/experimental
source_changes at macosforge.org
source_changes at macosforge.org
Sun Mar 29 03:46:50 PDT 2009
Revision: 1256
http://trac.macosforge.org/projects/ruby/changeset/1256
Author: eloy.de.enige at gmail.com
Date: 2009-03-29 03:46:50 -0700 (Sun, 29 Mar 2009)
Log Message:
-----------
Commented a require statement in constants_spec.rb which does not compile yet, tagged remaining failing examples.
Now that we can at least load all language spec files, I removed the partially green files and simply load "spec/frozen/language" instead of every single spec file. I might bring this back when we need so for the other spec suites.
Use spec:partially_green to run the spec files which are not fully green yet without any tags.
Modified Paths:
--------------
MacRuby/branches/experimental/rakelib/spec.rake
MacRuby/branches/experimental/spec/frozen/language/constants_spec.rb
Added Paths:
-----------
MacRuby/branches/experimental/spec/frozen/tags/macruby/language/constants_tags.txt
Modified: MacRuby/branches/experimental/rakelib/spec.rake
===================================================================
--- MacRuby/branches/experimental/rakelib/spec.rake 2009-03-29 10:46:34 UTC (rev 1255)
+++ MacRuby/branches/experimental/rakelib/spec.rake 2009-03-29 10:46:50 UTC (rev 1256)
@@ -27,59 +27,28 @@
while
}
- KNOWN_PARTIALLY_GOOD = %w{
- alias
- block
- break
- catch
- class
- def
- eigenclass
- encoding
- ensure
- for
- loop
- magic_comment
- metaclass
- method
- next
- predefined
- private
- regexp
- rescue
- return
- throw
- undef
- variables
- yield
- }
-
- KNOWN_GOOD_AND_PARTIALLY_GOOD_FILES =
- FileList["spec/frozen/language/{#{(KNOWN_GOOD + KNOWN_PARTIALLY_GOOD).join(',')}}_spec.rb"]
-
- desc "Run all language known good spec files which should be fully green"
+ desc "Run all language known good spec files which should be fully green (does not use tags)"
task :green do
files = FileList["spec/frozen/language/{#{KNOWN_GOOD.join(',')}}_spec.rb"]
sh "./miniruby -v -I./mspec/lib -I./lib ./mspec/bin/mspec-run #{files.join(' ')}"
end
+ desc "Run all partially good language spec files which are not yet fully green (does not use tags)"
+ task :partially_green do
+ files = Dir["spec/frozen/language/*_spec.rb"] - FileList["spec/frozen/language/{#{KNOWN_GOOD.join(',')}}_spec.rb"]
+ sh "./miniruby -v -I./mspec/lib -I./lib ./mspec/bin/mspec-run #{files.join(' ')}"
+ end
+
desc "Run continuous integration language examples (all known good examples)"
task :ci do
- sh "./mspec/bin/mspec ci -B ./spec/frozen/macruby.mspec #{KNOWN_GOOD_AND_PARTIALLY_GOOD_FILES.join(' ')}"
+ sh "./mspec/bin/mspec ci -B ./spec/frozen/macruby.mspec spec/frozen/language"
end
desc "Run language examples that are known to fail"
task :fails do
- sh "./mspec/bin/mspec run -g fails -B ./spec/frozen/macruby.mspec #{KNOWN_GOOD_AND_PARTIALLY_GOOD_FILES.join(' ')}"
+ sh "./mspec/bin/mspec run -g fails -B ./spec/frozen/macruby.mspec spec/frozen/language"
end
- namespace :list do
- desc "List all spec language spec files which do not load yet"
- task :not_loadable do
- puts((Dir['spec/frozen/language/*_spec.rb'] - KNOWN_GOOD_AND_PARTIALLY_GOOD_FILES).join("\n"))
- end
- end
-
%w{ fails critical }.each do |tag|
namespace :list do
# We cheat by using the fact that currently the ruby.1.9.mspec script uses the macruby tags,
@@ -93,7 +62,7 @@
namespace :"1.9" do
desc "Run roxor language specs tagged `#{tag}' against Ruby 1.9 (use this to look for possible 1.8/1.9 incompatibility bugs)"
task tag do
- sh "./mspec/bin/mspec run -g #{tag} -B ./spec/frozen/ruby.1.9.mspec #{KNOWN_GOOD_AND_PARTIALLY_GOOD_FILES.join(' ')}"
+ sh "./mspec/bin/mspec run -g #{tag} -B ./spec/frozen/ruby.1.9.mspec spec/frozen/language"
end
end
end
Modified: MacRuby/branches/experimental/spec/frozen/language/constants_spec.rb
===================================================================
--- MacRuby/branches/experimental/spec/frozen/language/constants_spec.rb 2009-03-29 10:46:34 UTC (rev 1255)
+++ MacRuby/branches/experimental/spec/frozen/language/constants_spec.rb 2009-03-29 10:46:50 UTC (rev 1256)
@@ -1,6 +1,8 @@
require File.dirname(__FILE__) + '/../spec_helper'
-require File.dirname(__FILE__) + '/../fixtures/constants'
+# MacRuby TODO: This file does not compile yet, causing most examples to fail.
+#require File.dirname(__FILE__) + '/../fixtures/constants'
+
# Read the documentation in fixtures/constants.rb for the guidelines and
# rationale for the structure and organization of these specs.
Added: MacRuby/branches/experimental/spec/frozen/tags/macruby/language/constants_tags.txt
===================================================================
--- MacRuby/branches/experimental/spec/frozen/tags/macruby/language/constants_tags.txt (rev 0)
+++ MacRuby/branches/experimental/spec/frozen/tags/macruby/language/constants_tags.txt 2009-03-29 10:46:50 UTC (rev 1256)
@@ -0,0 +1,39 @@
+fails:Literal (A::X) constant resolution sends #const_missing to the original class or module scope
+fails:Literal (A::X) constant resolution evaluates the qualifier
+fails:Literal (A::X) constant resolution raises a TypeError if a non-class or non-module qualifier is given
+fails:Literal (A::X) constant resolution with statically assigned constants searches the immediate class or module scope first
+fails:Literal (A::X) constant resolution with statically assigned constants searches a module included in the immediate class before the superclass
+fails:Literal (A::X) constant resolution with statically assigned constants searches the superclass before a module included in the superclass
+fails:Literal (A::X) constant resolution with statically assigned constants searches a module included in the superclass
+fails:Literal (A::X) constant resolution with statically assigned constants searches the superclass chain
+fails:Literal (A::X) constant resolution with statically assigned constants searches Object if no class or module qualifier is given
+fails:Literal (A::X) constant resolution with statically assigned constants searches Object if a toplevel qualifier (::X) is given
+fails:Literal (A::X) constant resolution with dynamically assigned constants searches the immediate class or module scope first
+fails:Literal (A::X) constant resolution with dynamically assigned constants searches a module included in the immediate class before the superclass
+fails:Literal (A::X) constant resolution with dynamically assigned constants searches the superclass before a module included in the superclass
+fails:Literal (A::X) constant resolution with dynamically assigned constants searches a module included in the superclass
+fails:Literal (A::X) constant resolution with dynamically assigned constants searches the superclass chain
+fails:Literal (A::X) constant resolution with dynamically assigned constants does not search the singleton class of the class or module
+fails:Literal (A::X) constant resolution with dynamically assigned constants returns the updated value when a constant is reassigned
+fails:Constant resolution within methods sends #const_missing to the original class or module scope
+fails:Constant resolution within methods with statically assigned constants searches the immediate class or module scope first
+fails:Constant resolution within methods with statically assigned constants searches a module included in the immediate class before the superclass
+fails:Constant resolution within methods with statically assigned constants searches the superclass before a module included in the superclass
+fails:Constant resolution within methods with statically assigned constants searches a module included in the superclass
+fails:Constant resolution within methods with statically assigned constants searches the superclass chain
+fails:Constant resolution within methods with statically assigned constants searches the lexical scope of the method not the receiver's immediate class
+fails:Constant resolution within methods with statically assigned constants searches the lexical scope of a singleton method
+fails:Constant resolution within methods with statically assigned constants searches the lexical scope of a block
+fails:Constant resolution within methods with statically assigned constants searches Object as a lexical scope only if Object is explicitly opened
+fails:Constant resolution within methods with dynamically assigned constants searches the immediate class or module scope first
+fails:Constant resolution within methods with dynamically assigned constants searches a module included in the immediate class before the superclass
+fails:Constant resolution within methods with dynamically assigned constants searches the superclass before a module included in the superclass
+fails:Constant resolution within methods with dynamically assigned constants searches a module included in the superclass
+fails:Constant resolution within methods with dynamically assigned constants searches the superclass chain
+fails:Constant resolution within methods with dynamically assigned constants searches the lexical scope of the method not the receiver's immediate class
+fails:Constant resolution within methods with dynamically assigned constants searches the lexical scope of a singleton method
+fails:Constant resolution within methods with dynamically assigned constants does not search the lexical scope of the caller
+fails:Constant resolution within methods with dynamically assigned constants searches the lexical scope of a block
+fails:Constant resolution within methods with dynamically assigned constants searches Object as a lexical scope only if Object is explicitly opened
+fails:Constant resolution within methods with dynamically assigned constants returns the updated value when a constant is reassigned
+fails:Constant resolution within methods with dynamically assigned constants does not search the lexical scope of qualifying modules
\ No newline at end of file
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090329/23718c43/attachment.html>
More information about the macruby-changes
mailing list