Altinn / Altinn/altinn-platform-validation-tests
Test GET /resource/resourcelist og /resource/search
- Dominant language
- JavaScript
- Stars
- 2
- Forks
- 1
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 124
Description
De to endepunktene lister ressurser: `resourcelist` gir hele katalogen med valgfri `includeApps` og `includeMigratedApps`, og `Search` filtrerer på søkemodellen (id, tekst, ressurstype, ressurseier og så videre). Begge er anonyme.
Clientene `ResourceGetResourceList` og `ResourceSearch` finnes, det samme gjør byggeblokkene `get-resource-list.js` og `search.js`, og `ResourceSearchQueryBuilder` er alt skrevet. Ingen av dem importeres av noe i dag, så jobben er testen alene.
Testen bør sjekke at listen ikke er tom, at hvert element har identifikator og ressurstype, og at et søk på en kjent ressurs finner den og at et søk på tull ikke gjør det. Et naturlig tillegg er å sjekke at søkeresultatet er en delmengde av `resourcelist`.
Åpent spørsmål: `resourcelist` returnerer hele katalogen og er tung, så det må avgjøres om testen skal be om `includeApps=false` for å holde svaret nede.
De to endepunktene svarer i dag uten `Cache-Control`, `ETag` og `Expires`, meldt som Altinn/altinn-resource-registry#846. Når det er rettet er denne testen det naturlige stedet å legge assertionen på cache-hoder.
Scope: ingen. `ResourceController` har ikke `[Authorize]` på klassen, og verken `resourcelist` eller `Search` har det på metoden, så begge er anonyme. Det er lest ut av `src/Altinn.ResourceRegistry/Controllers/ResourceController.cs` på main i `Altinn/altinn-resource-registry`. Testen trenger dermed ikke token i det hele tatt, og bør heller ikke sende et, slik at den faktisk verifiserer at endepunktene er åpne.
Del av #473
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by inspecting ResourceGetResourceList, ResourceSearch, get-resource-list.js, search.js, and ResourceSearchQueryBuilder, then review ResourceController.cs to confirm the anonymous endpoints. Add integration assertions for a non-empty resource list, required identifiers and types, known and nonsense searches, and the subset relationship; keep the request token-free and decide whether includeApps=false is needed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- api, testing
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 78/100