diff options
-rw-r--r-- | common.mk | 11 | ||||
-rw-r--r-- | spec/bundled_gems.mspec | 6 | ||||
-rw-r--r-- | spec/default.mspec | 10 |
3 files changed, 21 insertions, 6 deletions
@@ -994,6 +994,15 @@ yes-test-spec: yes-test-spec-precheck $(ACTIONS_ENDGROUP) no-test-spec: +test-bundled-gems-spec: $(TEST_RUNNABLE)-test-bundled-gems-spec +yes-test-bundled-gems-spec: yes-test-spec-precheck + $(ACTIONS_GROUP) + $(gnumake_recursive)$(Q) \ + $(RUNRUBY) -r./$(arch)-fake -r$(tooldir)/rubyspec_temp \ + $(srcdir)/spec/mspec/bin/mspec run -B $(srcdir)/spec/bundled_gems.mspec $(MSPECOPT) $(SPECOPTS) + $(ACTIONS_ENDGROUP) +no-test-bundled-gems-spec: + check: $(DOT_WAIT) test-spec RUNNABLE = $(LIBRUBY_RELATIVE:no=un)-runnable @@ -1568,7 +1577,7 @@ yes-test-bundled-gems-prepare: yes-test-bundled-gems-precheck PREPARE_BUNDLED_GEMS = test-bundled-gems-prepare test-bundled-gems: $(TEST_RUNNABLE)-test-bundled-gems -yes-test-bundled-gems: test-bundled-gems-run +yes-test-bundled-gems: test-bundled-gems-run test-bundled-gems-spec no-test-bundled-gems: # Override this to allow failure of specific gems on CI diff --git a/spec/bundled_gems.mspec b/spec/bundled_gems.mspec new file mode 100644 index 0000000000..762fa1c165 --- /dev/null +++ b/spec/bundled_gems.mspec @@ -0,0 +1,6 @@ +load File.dirname(__FILE__) + '/default.mspec' + +class MSpecScript + set :library, get(:stdlibs).to_a & get(:bundled_gems).to_a + set :files, get(:library) +end diff --git a/spec/default.mspec b/spec/default.mspec index 3296289a11..7c44526c0b 100644 --- a/spec/default.mspec +++ b/spec/default.mspec @@ -32,13 +32,13 @@ class MSpecScript end # Disable to run for bundled gems in test-spec - bundled_gems = File.readlines("gems/bundled_gems").map do |line| + set :bundled_gems, (File.readlines("#{srcdir}/gems/bundled_gems").map do |line| next if /^\s*(?:#|$)/ =~ line - "library/" + line.split.first - end.compact - stdlibs = Dir.glob("ruby/library/*").map{|d| d.sub(%r'\Aruby/', '')} + "#{srcdir}/spec/ruby/library/" + line.split.first + end.compact) + set :stdlibs, Dir.glob("#{srcdir}/spec/ruby/library/*") + set :library, get(:stdlibs).to_a - get(:bundled_gems).to_a - set :library, stdlibs - bundled_gems set :files, get(:command_line) + get(:language) + get(:core) + get(:library) + get(:security) + get(:optional) if ENV.key?("COVERAGE") |