kettle-test 2.0.12 → 2.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +30 -1
- data/LICENSE.md +2 -2
- data/README.md +8 -4
- data/exe/kettle-test.sh +23 -1
- data/lib/kettle/test/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +5 -5
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b2ba37a906a95717cb1de6c2c49fa9e020bd5bb8e94ad3ac148f7e1df197425b
|
|
4
|
+
data.tar.gz: 8e5d684e1199e371259519818d62fa1dbb60a3686a716ca97d3ff36225306ec7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5a7c12783a1fa25419b5859109e0f2de949b527f74598c47584720edfd60642ed8b21be369af935bd8fadd02428c70a508de925197f58afa15a90bdcce71caa1
|
|
7
|
+
data.tar.gz: dfdbed0e4a42c23afa444668a5fc948dcb7974cba40aec798025ec76fdce14a4386d55b034bc6a7e3c3ebb9e1285e4133b1b5082c99d5ba1846e0aecc4f54097
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -30,6 +30,31 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
30
30
|
|
|
31
31
|
### Security
|
|
32
32
|
|
|
33
|
+
## [2.0.14] - 2026-07-23
|
|
34
|
+
|
|
35
|
+
- TAG: [v2.0.14][2.0.14t]
|
|
36
|
+
- COVERAGE: 96.84% -- 92/95 lines in 17 files
|
|
37
|
+
- BRANCH COVERAGE: 100.00% -- 2/2 branches in 17 files
|
|
38
|
+
- 90.00% documented
|
|
39
|
+
|
|
40
|
+
### Fixed
|
|
41
|
+
|
|
42
|
+
- Final run highlights now deduplicate identical failed-example lines emitted
|
|
43
|
+
more than once by runner output streams.
|
|
44
|
+
|
|
45
|
+
## [2.0.13] - 2026-07-22
|
|
46
|
+
|
|
47
|
+
- TAG: [v2.0.13][2.0.13t]
|
|
48
|
+
- COVERAGE: 96.84% -- 92/95 lines in 17 files
|
|
49
|
+
- BRANCH COVERAGE: 100.00% -- 2/2 branches in 17 files
|
|
50
|
+
- 90.00% documented
|
|
51
|
+
|
|
52
|
+
### Fixed
|
|
53
|
+
|
|
54
|
+
- `kettle-test` now sets turbo_tests2 worker output to `quiet` by default when
|
|
55
|
+
kettle-test silent mode is enabled, while preserving an explicit
|
|
56
|
+
`TURBO_TESTS2_WORKER_OUTPUT` override.
|
|
57
|
+
|
|
33
58
|
## [2.0.12] - 2026-07-21
|
|
34
59
|
|
|
35
60
|
- TAG: [v2.0.12][2.0.12t]
|
|
@@ -436,7 +461,11 @@ Please file a bug if you notice a violation of semantic versioning.
|
|
|
436
461
|
- silent_stream
|
|
437
462
|
- timecop-rspec
|
|
438
463
|
|
|
439
|
-
[Unreleased]: https://github.com/kettle-dev/kettle-test/compare/v2.0.
|
|
464
|
+
[Unreleased]: https://github.com/kettle-dev/kettle-test/compare/v2.0.14...HEAD
|
|
465
|
+
[2.0.14]: https://github.com/kettle-dev/kettle-test/compare/v2.0.13...v2.0.14
|
|
466
|
+
[2.0.14t]: https://github.com/kettle-dev/kettle-test/releases/tag/v2.0.14
|
|
467
|
+
[2.0.13]: https://github.com/kettle-dev/kettle-test/compare/v2.0.12...v2.0.13
|
|
468
|
+
[2.0.13t]: https://github.com/kettle-dev/kettle-test/releases/tag/v2.0.13
|
|
440
469
|
[2.0.12]: https://github.com/kettle-dev/kettle-test/compare/v2.0.11...v2.0.12
|
|
441
470
|
[2.0.12t]: https://github.com/kettle-dev/kettle-test/releases/tag/v2.0.12
|
|
442
471
|
[2.0.11]: https://github.com/kettle-dev/kettle-test/compare/v2.0.10...v2.0.11
|
data/LICENSE.md
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
This project is made available under the following licenses.
|
|
4
4
|
Choose the option that best fits your use case:
|
|
5
5
|
|
|
6
|
-
- [AGPL-3.0-only](AGPL-3.0-only.md)
|
|
7
|
-
- [PolyForm-Small-Business-1.0.0](PolyForm-Small-Business-1.0.0.md)
|
|
6
|
+
- [AGPL-3.0-only](https://github.com/kettle-dev/kettle-test/blob/main/AGPL-3.0-only.md)
|
|
7
|
+
- [PolyForm-Small-Business-1.0.0](https://github.com/kettle-dev/kettle-test/blob/main/PolyForm-Small-Business-1.0.0.md)
|
|
8
8
|
|
|
9
9
|
If none of the above licenses fit your use case, please [contact us](mailto:floss@galtzo.com) to discuss a custom commercial license.
|
|
10
10
|
|
data/README.md
CHANGED
|
@@ -61,7 +61,7 @@ and concordant releases of JRuby, and TruffleRuby.
|
|
|
61
61
|
| Works with MRI Ruby 3 | [![Ruby 3.0 Compat][💎ruby-3.0i]][🚎ruby-3.0-wf] [![Ruby 3.1 Compat][💎ruby-3.1i]][🚎ruby-3.1-wf] [![Ruby 3.2 Compat][💎ruby-3.2i]][🚎ruby-3.2-wf] [![Ruby 3.3 Compat][💎ruby-3.3i]][🚎ruby-3.3-wf] [![Ruby 3.4 Compat][💎ruby-3.4i]][🚎ruby-3.4-wf]|
|
|
62
62
|
| Works with MRI Ruby 2 | [![Ruby 2.4 Compat][💎ruby-2.4i]][🚎ruby-2.4-wf] [![Ruby 2.5 Compat][💎ruby-2.5i]][🚎ruby-2.5-wf] [![Ruby 2.6 Compat][💎ruby-2.6i]][🚎ruby-2.6-wf] [![Ruby 2.7 Compat][💎ruby-2.7i]][🚎ruby-2.7-wf]|
|
|
63
63
|
| Support & Community | [![Join Me on Daily.dev's RubyFriends][✉️ruby-friends-img]][✉️ruby-friends] [![Get help from RubyForum][✉️ruby-forum-img]][✉️ruby-forum] [![Live Chat on Discord][✉️discord-invite-img-ftb]][✉️discord-invite] [![Get help from me on Upwork][👨🏼🏫expsup-upwork-img]][👨🏼🏫expsup-upwork] [![Get help from me on Codementor][👨🏼🏫expsup-codementor-img]][👨🏼🏫expsup-codementor] |
|
|
64
|
-
| Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on
|
|
64
|
+
| Source | [![Source on GitLab.com][📜src-gl-img]][📜src-gl] [![Source on CodeBerg.org][📜src-cb-img]][📜src-cb] [![Source on GitHub.com][📜src-gh-img]][📜src-gh] [![The best SHA: dQw4w9WgXcQ!][🧮kloc-img]][🧮kloc] |
|
|
65
65
|
| Documentation | [![Current release on RubyDoc.info][📜docs-cr-rd-img]][🚎yard-current] [![YARD on Galtzo.com][📜docs-head-rd-img]][🚎yard-head] [![Maintainer Blog][🚂maint-blog-img]][🚂maint-blog] [![GitLab Wiki][📜gl-wiki-img]][📜gl-wiki] [![GitHub Wiki][📜gh-wiki-img]][📜gh-wiki] |
|
|
66
66
|
| Compliance | [![License: AGPL-3.0-only OR PolyForm-Small-Business-1.0.0][📄license-img]][📄license] [![Apache license compatibility: Category X][📄license-compat-img]][📄license-compat] [![📄ilo-declaration-img]][📄ilo-declaration] [![Security Policy][🔐security-img]][🔐security] [![Contributor Covenant 2.1][🪇conduct-img]][🪇conduct] [![SemVer 2.0.0][📌semver-img]][📌semver] |
|
|
67
67
|
| Style | [![Enforced Code Style Linter][💎rlts-img]][💎rlts] [![Keep-A-Changelog 1.0.0][📗keep-changelog-img]][📗keep-changelog] [![Gitmoji Commits][📌gitmoji-img]][📌gitmoji] [![Compatibility appraised by: appraisal2][💎appraisal2-img]][💎appraisal2] |
|
|
@@ -196,7 +196,11 @@ Below are the environment variables recognized by kettle-test. Unless otherwise
|
|
|
196
196
|
- Default: unset/empty → treated as false.
|
|
197
197
|
- KETTLE_TEST_SILENT (String: "true"/"false")
|
|
198
198
|
- Controls silencing of STDOUT/STDERR during specs (unless :check_output is used or DEBUG is true).
|
|
199
|
+
- When true with the default turbo_tests2 runner, sets TURBO_TESTS2_WORKER_OUTPUT=quiet unless already set.
|
|
199
200
|
- Default: value of CI (true on CI, false locally unless CI=true).
|
|
201
|
+
- TURBO_TESTS2_WORKER_OUTPUT (String)
|
|
202
|
+
- Explicit turbo_tests2 worker output mode. When set, kettle-test preserves it.
|
|
203
|
+
- Default: quiet when KETTLE_TEST_SILENT is true; otherwise turbo_tests2's own default.
|
|
200
204
|
- KETTLE_TEST_VERBOSE (String: "true"/"false")
|
|
201
205
|
- Reserved for future verbose logging toggles. Default: "false".
|
|
202
206
|
- KETTLE_TEST_FULL_BACKTRACE (String: "true"/"false")
|
|
@@ -360,7 +364,7 @@ end
|
|
|
360
364
|
|
|
361
365
|
### Silencing output and checking output
|
|
362
366
|
|
|
363
|
-
STDOUT/STDERR are silenced by default when KETTLE_TEST_SILENT is true (defaults to true on CI). To assert output from the code under test, tag examples/groups with :check_output, or run with DEBUG=true to disable silencing globally.
|
|
367
|
+
STDOUT/STDERR are silenced by default when KETTLE_TEST_SILENT is true (defaults to true on CI). With the default turbo_tests2 runner, worker output summaries are also quiet by default in silent mode. To assert output from the code under test, tag examples/groups with :check_output, or run with DEBUG=true to disable silencing globally.
|
|
364
368
|
|
|
365
369
|
```ruby
|
|
366
370
|
RSpec.describe("output", :check_output) do
|
|
@@ -580,7 +584,7 @@ See [CHANGELOG.md][📌changelog] for a list of releases.
|
|
|
580
584
|
|
|
581
585
|
## 📄 License
|
|
582
586
|
|
|
583
|
-
The gem is available under the following licenses: [AGPL-3.0-only](AGPL-3.0-only.md), [PolyForm-Small-Business-1.0.0](PolyForm-Small-Business-1.0.0.md).
|
|
587
|
+
The gem is available under the following licenses: [AGPL-3.0-only](https://github.com/kettle-dev/kettle-test/blob/main/AGPL-3.0-only.md), [PolyForm-Small-Business-1.0.0](https://github.com/kettle-dev/kettle-test/blob/main/PolyForm-Small-Business-1.0.0.md).
|
|
584
588
|
See [LICENSE.md][📄license] for details.
|
|
585
589
|
|
|
586
590
|
If none of the available licenses suit your use case, please [contact us](mailto:floss@galtzo.com) to discuss a custom commercial license.
|
|
@@ -697,7 +701,7 @@ Thanks for RTFM. ☺️
|
|
|
697
701
|
[📜src-gl]: https://gitlab.com/kettle-dev/kettle-test
|
|
698
702
|
[📜src-cb-img]: https://img.shields.io/badge/CodeBerg-4893CC?style=for-the-badge&logo=CodeBerg&logoColor=blue
|
|
699
703
|
[📜src-cb]: https://codeberg.org/kettle-dev/kettle-test
|
|
700
|
-
[📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=
|
|
704
|
+
[📜src-gh-img]: https://img.shields.io/badge/GitHub-238636?style=for-the-badge&logo=GitHub&logoColor=green
|
|
701
705
|
[📜src-gh]: https://github.com/kettle-dev/kettle-test
|
|
702
706
|
[📜docs-cr-rd-img]: https://img.shields.io/badge/RubyDoc-Current_Release-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
|
703
707
|
[📜docs-head-rd-img]: https://img.shields.io/badge/YARD_on_Galtzo.com-HEAD-943CD2?style=for-the-badge&logo=readthedocs&logoColor=white
|
data/exe/kettle-test.sh
CHANGED
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
# KETTLE_TEST_TURBO_PROCESSES - passed to turbo_tests2 -n
|
|
24
24
|
# KETTLE_TEST_TURBO_RUNTIME_LOG - passed to turbo_tests2 --runtime-log
|
|
25
25
|
# KETTLE_TEST_TURBO_NICE - set true to pass turbo_tests2 --nice
|
|
26
|
+
# TURBO_TESTS2_WORKER_OUTPUT - passed through when explicitly set
|
|
26
27
|
#
|
|
27
28
|
# Examples:
|
|
28
29
|
# bundle exec kettle-test
|
|
@@ -55,6 +56,7 @@ Environment:
|
|
|
55
56
|
KETTLE_TEST_TURBO_PROCESSES Passed to turbo_tests2 -n
|
|
56
57
|
KETTLE_TEST_TURBO_RUNTIME_LOG Passed to turbo_tests2 --runtime-log
|
|
57
58
|
KETTLE_TEST_TURBO_NICE Set true to pass turbo_tests2 --nice
|
|
59
|
+
TURBO_TESTS2_WORKER_OUTPUT Passed through when explicitly set
|
|
58
60
|
K_SOUP_COV_DO Set true to enable coverage
|
|
59
61
|
K_SOUP_COV_MIN_HARD Set true to hard-fail on coverage thresholds
|
|
60
62
|
|
|
@@ -115,6 +117,23 @@ TIMESTAMP="$(date -u +%Y%m%d-%H%M%S)"
|
|
|
115
117
|
RUNNER="${KETTLE_TEST_RUNNER:-turbo_tests2}"
|
|
116
118
|
LOG_FILE="$LOG_DIR/${RUNNER}-${TIMESTAMP}-$$.log"
|
|
117
119
|
|
|
120
|
+
silent_enabled() {
|
|
121
|
+
local configured_silent="${KETTLE_TEST_SILENT:-}"
|
|
122
|
+
|
|
123
|
+
if [ -n "$configured_silent" ]; then
|
|
124
|
+
case "$configured_silent" in
|
|
125
|
+
true|TRUE|True)
|
|
126
|
+
return 0
|
|
127
|
+
;;
|
|
128
|
+
*)
|
|
129
|
+
return 1
|
|
130
|
+
;;
|
|
131
|
+
esac
|
|
132
|
+
fi
|
|
133
|
+
|
|
134
|
+
[ "${CI:-}" = "true" ] || [ "${CI:-}" = "TRUE" ]
|
|
135
|
+
}
|
|
136
|
+
|
|
118
137
|
run_kettle_soup_cover_hook() {
|
|
119
138
|
local hook="$1"
|
|
120
139
|
|
|
@@ -135,6 +154,9 @@ cd "$PROJECT_ROOT"
|
|
|
135
154
|
case "$RUNNER" in
|
|
136
155
|
turbo|turbo_tests2)
|
|
137
156
|
export PARALLEL_TEST_FIRST_IS_1="${PARALLEL_TEST_FIRST_IS_1:-true}"
|
|
157
|
+
if [ -z "${TURBO_TESTS2_WORKER_OUTPUT:-}" ] && silent_enabled; then
|
|
158
|
+
export TURBO_TESTS2_WORKER_OUTPUT="quiet"
|
|
159
|
+
fi
|
|
138
160
|
run_kettle_soup_cover_hook "clear_turbo_tests_coverage_dir!"
|
|
139
161
|
command=(bundle exec turbo_tests2)
|
|
140
162
|
if [ -n "${KETTLE_TEST_TURBO_PROCESSES:-}" ]; then
|
|
@@ -183,7 +205,7 @@ finished_line=$(clean_log | grep -E '^Finished in' | tail -1 || true)
|
|
|
183
205
|
seed_line=$(clean_log | grep -E '^Randomized with seed' | tail -1 || true)
|
|
184
206
|
|
|
185
207
|
# Failed examples block (rspec ./path:N # description)
|
|
186
|
-
failed_block=$(clean_log | grep -E '^rspec \./.*#' || true)
|
|
208
|
+
failed_block=$(clean_log | grep -E '^rspec \./.*#' | awk '!seen[$0]++' || true)
|
|
187
209
|
failed_count=$(printf '%s\n' "$failed_block" | grep -c 'rspec \.' || true)
|
|
188
210
|
failed_count=${failed_count:-0}
|
|
189
211
|
|
data/lib/kettle/test/version.rb
CHANGED
data.tar.gz.sig
CHANGED
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kettle-test
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.
|
|
4
|
+
version: 2.0.14
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Peter H. Boling
|
|
@@ -384,10 +384,10 @@ licenses:
|
|
|
384
384
|
- PolyForm-Small-Business-1.0.0
|
|
385
385
|
metadata:
|
|
386
386
|
homepage_uri: https://kettle-test.galtzo.com
|
|
387
|
-
source_code_uri: https://github.com/kettle-dev/kettle-test/tree/v2.0.
|
|
388
|
-
changelog_uri: https://github.com/kettle-dev/kettle-test/blob/v2.0.
|
|
387
|
+
source_code_uri: https://github.com/kettle-dev/kettle-test/tree/v2.0.14
|
|
388
|
+
changelog_uri: https://github.com/kettle-dev/kettle-test/blob/v2.0.14/CHANGELOG.md
|
|
389
389
|
bug_tracker_uri: https://github.com/kettle-dev/kettle-test/issues
|
|
390
|
-
documentation_uri: https://www.rubydoc.info/gems/kettle-test/2.0.
|
|
390
|
+
documentation_uri: https://www.rubydoc.info/gems/kettle-test/2.0.14
|
|
391
391
|
funding_uri: https://github.com/sponsors/pboling
|
|
392
392
|
wiki_uri: https://github.com/kettle-dev/kettle-test/wiki
|
|
393
393
|
news_uri: https://www.railsbling.com/tags/kettle-test
|
|
@@ -416,7 +416,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
416
416
|
- !ruby/object:Gem::Version
|
|
417
417
|
version: '0'
|
|
418
418
|
requirements: []
|
|
419
|
-
rubygems_version: 4.0.
|
|
419
|
+
rubygems_version: 4.0.17
|
|
420
420
|
specification_version: 4
|
|
421
421
|
summary: "\U0001F372 A kettle-dev meta tool to streamline testing"
|
|
422
422
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|