forked from ruby/spec
-
Notifications
You must be signed in to change notification settings - Fork 0
/
default.mspec
58 lines (44 loc) · 1.67 KB
/
default.mspec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Configuration file for Ruby >= 2.0 implementations.
class MSpecScript
# Language features specs
set :language, [ 'language' ]
# Core library specs
set :core, [ 'core' ]
# Standard library specs
set :library, [ 'library' ]
# Command line specs
set :command_line, [ 'command_line' ]
# Security specs
set :security, [ 'security' ]
# C extension API specs
set :capi, [ 'optional/capi' ]
# A list of _all_ optional specs
set :optional, get(:capi)
# An ordered list of the directories containing specs to run
set :files, get(:command_line) + get(:language) + get(:core) + get(:library) + get(:security) + get(:optional)
# This set of files is run by mspec ci
set :ci_files, get(:files)
# The default implementation to run the specs.
# TODO: this needs to be more sophisticated since the
# executable is not consistently named.
set :target, 'ruby'
set :backtrace_filter, /mspec\//
set :tags_patterns, [
[%r(language/), 'tags/1.9/language/'],
[%r(core/), 'tags/1.9/core/'],
[%r(command_line/), 'tags/1.9/command_line/'],
[%r(library/), 'tags/1.9/library/'],
[%r(security/), 'tags/1.9/security/'],
[/_spec.rb$/, '_tags.txt']
]
set :toplevel_constants_excludes, [
/\wSpecs?$/,
/^CS_CONST\d/,
]
# Enable features
MSpec.enable_feature :fiber
MSpec.enable_feature :fiber_library
MSpec.enable_feature :fork if respond_to?(:fork, true)
MSpec.enable_feature :encoding
MSpec.enable_feature :mjit if defined?(RubyVM::MJIT) && RubyVM::MJIT.enabled?
end