Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .github/workflows/current.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,7 @@ jobs:
rubygems: latest
bundler: latest

# truffleruby-24.1
# (according to documentation: targets Ruby 3.3 compatibility)
# (according to runtime: targets Ruby 3.2 compatibility)
# truffleruby-24.1 (targets Ruby 3.3 compatibility)
- ruby: "truffleruby"
appraisal: "current"
exec_cmd: "rake test"
Expand Down
6 changes: 2 additions & 4 deletions .idea/oauth2.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 6 additions & 7 deletions .junie/guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ This document captures project-specific knowledge to streamline setup, testing,
- See .env.local.example for an example of what to put in .env.local.
- See CONTRIBUTING.md for details on how to set up your local environment.
- Ruby and Bundler
- Runtime supports very old Rubies (>= 2.2), but development tooling targets >= 2.3 because of CI/setup-ruby and dev dependencies.
- Runtime supports Ruby >= 2.2.0
- Development tooling targets Ruby >= 2.3 (minimum supported by setup-ruby GHA).
- Use a recent Ruby (>= 3.4 recommended) for fastest setup and to exercise modern coverage behavior.
- Install dependencies via Bundler in project root:
- bundle install
Expand Down Expand Up @@ -53,7 +54,7 @@ This document captures project-specific knowledge to streamline setup, testing,
- RSpec.describe usage:
- Use `describe "#<method_name>"` to contain a block of specs that test instance method behavior.
- Use `describe "::<method_name>"` to contain a block of specs that test class method behavior.
- Do not use `describe ".<method_name>"` because the dot is ambiguous w.r.t instance vs. class methods.
- Do not use `describe ".<method_name>"` because the dot is ambiguous w.r.t instance vs. class methods.
- When adding new code or modifying existing code always add tests to cover the updated behavior, including branches, and different types of expected and unexpected inputs.
- Additional test utilities:
- rspec-stubbed_env: Use stub_env to control ENV safely within examples.
Expand Down Expand Up @@ -89,14 +90,11 @@ This document captures project-specific knowledge to streamline setup, testing,
- Place new specs under spec/ mirroring lib/ structure where possible. Do not require "spec_helper" at the top of spec files, as it is automatically loaded by .rspec.
- If your code relies on environment variables that drive activation (see "Activation env vars" below), prefer using rspec-stubbed_env:
- it does not support stubbing with blocks, but it does automatically clean up after itself.
- outside the example:
```ruby
- the below config is included in all spec scenarios by the kettle-test gem, so no need to do it again; it is here for reference:
include_context 'with stubbed env'
```
- in a before hook, or in an example:
```ruby
stub_env("FLOSS_FUNDING_MY_NS" => "Free-as-in-beer")
```
# example code continues
- If your spec needs to assert on console output, tag it with :check_output. By default, STDOUT is silenced.
- Use Timecop for deterministic time-sensitive behavior as needed (require config/timecop is already done by spec_helper).

Expand Down Expand Up @@ -136,6 +134,7 @@ Notes
- Coverage reports: NEVER review the HTML report. Use JSON (preferred), XML, LCOV, or RCOV. For this project, always run tests with K_SOUP_COV_FORMATTERS set to "json".
- Do NOT modify .envrc in tasks; when running tests locally or in scripts, manually prefix each run, e.g.: K_SOUP_COV_FORMATTERS="json" bin/rspec
- For all the kettle-soup-cover options, see .envrc and find the K_SOUP_COV_* env vars.
- NEVER modify ENV variables in tests directly. Always use the stub_env macro from the rspec-stubbed_env gem (more details in the testing section above).

Important documentation rules
- Do NOT edit files under docs/ manually; they are generated by `bundle exec rake yard` as part of the default rake task.
Expand Down
2 changes: 1 addition & 1 deletion Appraisals
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ appraise "ruby-2-7" do
eval_gemfile "modular/logger_v1_7.gemfile"
eval_gemfile "modular/multi_xml_v0_6.gemfile"
eval_gemfile "modular/rack_v3.gemfile"
eval_gemfile "modular/x_std_libs/r3.1/libs.gemfile"
eval_gemfile "modular/x_std_libs/r2/libs.gemfile"
end

appraise "ruby-3-0" do
Expand Down
6 changes: 3 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ GEM
json (2.13.2)
jwt (3.1.2)
base64
kettle-dev (1.1.20)
kettle-dev (1.1.24)
kettle-soup-cover (1.0.10)
simplecov (~> 0.22)
simplecov-cobertura (~> 3.0)
Expand Down Expand Up @@ -190,7 +190,7 @@ GEM
ruby_version (~> 1.0)
version_gem (~> 1.1, >= 1.1.8)
rspec-stubbed_env (1.0.4)
rspec-support (3.13.5)
rspec-support (3.13.6)
rspec_junit_formatter (0.6.0)
rspec-core (>= 2, < 4, != 2.12.0)
rubocop (1.80.2)
Expand Down Expand Up @@ -336,7 +336,7 @@ DEPENDENCIES
gem_bench (~> 2.0, >= 2.0.5)
gitmoji-regex (~> 1.0, >= 1.0.3)
irb (~> 1.15, >= 1.15.2)
kettle-dev (~> 1.1, >= 1.1.20)
kettle-dev (~> 1.1)
kettle-soup-cover (~> 1.0, >= 1.0.10)
kettle-test (~> 1.0)
kramdown (~> 2.5, >= 2.5.1)
Expand Down
Loading
Loading