Artichoke embeds a copy of ruby/spec. ruby/spec is a set of specifications for testing the Ruby language, core, and standard library packages.
Artichoke enforces that some ruby/specs pass. These specs are tracked in
spec-runner/enforced-specs.toml.
Target: MRI Ruby 3.1.2.
Artichoke targets recent MRI Ruby. Compatibility with this target is currently very work in progress. As portions of Ruby Core and Stdlib are implemented in Artichoke, their behavior targets the most recent MRI. There are many spec failures.
You can run these specs for Artichoke crate with the spec-runner crate.
bundle exec rake specTo run specific specs, create a custom spec manifest and pass it as the
positional argument to the spec-runner binary.
For the uri stdlib package:
[specs.library.uri]
include = "all"
skip = ["parse"]For Array#each and Array#length:
[specs.core.array]
include = "set"
specs = [
"each",
"length",
]