Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

test: cover the gaps left by the audit

Chiusa
#91 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 17 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
55/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
android, kotlin
Ambito
testing

Direzione di ricerca

Start with MockConfigRepositoryTest.kt, RequestMatcherTest.kt, NetworkMockPluginTest.kt, and EndpointCardTest.kt to follow the repository's commonTest, androidDeviceTest, and androidHostTest conventions. Check epic #72 before duplicating coverage, then add focused tests for the listed repository, UI, sample-config, and plugin gaps. Done means each gap is covered or explicitly recorded as already covered.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

test

Summary

A grab-bag of test coverage gaps identified while auditing the networkmock family, independent of the OpenAPI migration (tracked in the epic, #72). Each bullet below is independently addressable — feel free to split into separate PRs (or separate issues) rather than doing all of them at once; this issue exists to record them so they aren't lost, not to mandate one big PR.

Gaps

  1. Delay precedence — Operation.delayMs ?: group.defaultDelayMs resolution (devview-networkmock-core/src/commonMain/kotlin/com/worldline/devview/networkmock/core/repository/MockConfigRepository.kt:366) has no dedicated test asserting the precedence order (operation-level delay wins, falls back to group default, falls back to no delay).
  2. Ambiguous-match precedence — if two groups' configured hosts both match an incoming request's hostname, findMatchingMock (repository/MockConfigRepository.kt:304-374) returns whichever is declared first, with no test pinning this down. (If #2 has landed by the time this is picked up, this is likely already covered there — check before duplicating.)
  3. NetworkMockEndpointScreen has zero tests — no coverage exists for the sticky-header status-family grouping (devview-networkmock/src/commonMain/kotlin/com/worldline/devview/networkmock/NetworkMockEndpointScreen.kt:119-121, :234-278), the "No mock" row (:208-225), or response-row selection (:244-262).
  4. Preview/diff bottom sheet has zero tests — NetworkMockEndpointPreviewBottomSheet.kt and the diff rendering pipeline it drives (utils/DiffLineUtils.kt) have no test coverage, despite PreviewSheetState itself (the state machine) being tested in PreviewSheetStateTest.kt.
  5. No test loads the real sample mocks.json (or, post-migration, the real sample spec) — every existing config-loading test uses hand-built fixture data (MockTestData.kt), so the shipped sample can silently drift out of sync with what the parser actually accepts. Add a test that loads sample/network/src/commonMain/composeResources/files/networkmocks/mocks.json (or its post-migration equivalent) through the real repository and asserts it parses successfully.
  6. queryParams/queryParameters matching through the Ktor plugin — RequestMatcherTest.kt covers matchesQueryParams in isolation thoroughly, but NetworkMockPluginTest.kt (devview-networkmock-ktor/src/androidHostTest/...) has no end-to-end test exercising query-param matching through the actual plugin interception path.
  7. No assertion on response headers/content-type in NetworkMockPluginTest.kt — existing tests check status and body but not that Content-Type: application/json is actually present on the synthetic response.

Acceptance criteria

  • Each gap above has at least one new test closing it, or is explicitly noted as already covered by a different in-flight PR (to avoid duplicate work — check the epic #72 for what's landed).
  • New tests follow this repo's existing conventions: commonTest + JVM for repository/matcher logic (see RequestMatcherTest.kt, MockConfigRepositoryTest.kt for style), androidDeviceTest + fakes for Compose UI (see EndpointCardTest.kt for style), androidHostTest + MockK for the Ktor plugin (see NetworkMockPluginTest.kt for style).

Files likely touched

  • devview-networkmock-core/src/commonTest/kotlin/com/worldline/devview/networkmock/core/repository/MockConfigRepositoryTest.kt
  • devview-networkmock/src/androidDeviceTest/kotlin/com/worldline/devview/networkmock/... (new test files for the endpoint screen and preview sheet)
  • devview-networkmock-ktor/src/androidHostTest/kotlin/com/worldline/devview/networkmock/ktor/plugin/NetworkMockPluginTest.kt
Lingua principale
Kotlin
Stelle
11
Fork
3
Merge medio
10g 9h
PR unite (30g)
18

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di worldline/devview

Tutte le issue di worldline/devview

Issue simili

Altre issue su Kotlin

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.