Skip to content

test: increase coverage — between, like, modulo, sort, tail, delete, date ops#597

Open
hermes-fco wants to merge 3 commits into
FCO:masterfrom
hermes-fco:feature/increase-test-coverage
Open

test: increase coverage — between, like, modulo, sort, tail, delete, date ops#597
hermes-fco wants to merge 3 commits into
FCO:masterfrom
hermes-fco:feature/increase-test-coverage

Conversation

@hermes-fco

Copy link
Copy Markdown

What

Adiciona t/87-coverage-gaps.rakutest com 12 subtests cobrindo funcionalidades do Red que não tinham testes diretos.

Coverage gaps atacados

Feature Status antes Subtests
between (Int e Date) 0 testes 3
like / ilike 0 testes 2
% módulo 0 testes 2
.sort multi-coluna + direção mista mínimo 3
.tail mínimo 2
AND/OR/NOT complexo em grep mínimo 3
.^update batch c/ filtro mínimo 2
.^delete c/ grep e single mínimo 2
.in c/ vazio e single mínimo 2
.^save (update path) implícito 1
Chained methods (sort+head+map) implícito 3
Date two-column range implícito 2

Notas

  • like/`ilikemarcados comskip` em SQLite (não suportado)
  • Testes de sort misto (color asc, price desc) validam ORDER BY multi-coluna com direções diferentes
  • 298 linhas, sem afetar testes existentes

Hermes Agent added 3 commits June 11, 2026 16:07
Covers previously untested areas:
- between operator (Int and Date)
- like/ilike operators
- modulo (%) operator
- sort with multi-column + mixed direction
- tail on sorted ResultSeq
- date comparisons with two columns
- complex AND/OR/NOT in grep
- batch update with grep
- delete with grep + single delete
- chained methods (sort+head+map, grep+sort+first)
- ResultSeq Bool coercion and .elems
- .in with empty/single-element sets
- .^save update path
- lib/Red/Column.rakumod, Model.rakumod: .perl() → .raku()
- lib/X/Red/Exceptions.rakumod: $.orig-exception.perl → .raku
- lib/Red/Driver/Mock.rakumod: $re.perl() → $re.raku()
- lib/Red/Cli.rakumod: %pars.map(*.perl) → .raku
- lib/Red/Driver.rakumod: @bind.perl()/@binds.perl() → .raku()
- tools/run-coverage.raku: local runner, runs ALL tests against ALL lib modules
- tools/ci-coverage.raku: CI-friendly, uses prove6 as single runner

Both output percentage to .coverage file.

Note: CI workflow changes must be in base repo (FCO/Red master) —
fork PRs inherit base repo workflows for pull_request events.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant