Przejdź do treści
Jobless Busters
Z testamiPodstawowa5–10 min

Rozgrzewka: sprawdzenie wejścia

Sprawdzenie wejścia: otrzymujesz unknown. Napisz sprawdzenie, że jest obiektem, ma niepusty tekstowy identyfikator i nie jest null ani tablicą. Porównaj z parseLookupArgs dopiero po swojej próbie. Wyjaśnij, dlaczego as {id:string} nie jest takim sprawdzeniem.

Funkcja parseLookupArgs(value) zwraca { id } albo rzuca błąd.

  • Sprawdzić dane w czasie działania programu
  • Odróżnić rzutowanie typu od walidacji
Testy (3)

Testy napisane na podstawie polecenia rozgrzewki. Implementacja referencyjna dodatkowo odrzuca nadmiarowe pola i id dłuższe niż 100 znaków — tego testy nie wymagają.

zwraca { id } dla poprawnego obiektu

JavaScript
assert.deepEqual(parseLookupArgs({ id: 'A' }), { id: 'A' });

odrzuca null, tablicę i wartości prymitywne

JavaScript
for (const value of [null, [], ['A'], 'A', 7, undefined]) {
  assert.throws(() => parseLookupArgs(value));
}

odrzuca pusty, nietekstowy i brakujący identyfikator

JavaScript
for (const value of [{ id: '' }, { id: 7 }, {}]) {
  assert.throws(() => parseLookupArgs(value));
}

Źródło: AI & Agents — ćwiczenia praktyczne — Autorskie ćwiczenie z programu nauki, nie potwierdzone zadanie rekrutacyjne.

JavaScript · uruchamiany w Web Workerze w przeglądarce

Tab wcina · Esc, a potem Tab, opuszcza edytor · ⌘/Ctrl + Enter uruchamia testy · Twój kod jest zapisywany w tej przeglądarce.

Uruchom testy, żeby sprawdzić rozwiązanie. Gotowych testów: 3.

Utknąłeś? Podpowiedzi idą od ogólnych do konkretnych.

Najpierw spróbuj naprawdę — rozwiązanie najwięcej daje, gdy już trochę się namęczysz.