Mam miejsce, w mapModule
którym importuję komponenty i eksportuję je:
import ComponentName from '../components/ComponentName';
export default {
name: ComponentName,
};
Jak mogę to sprawdzić, czy mapModule
ma prawidłowe wyeksportowane klucze, wartości i czy nie są one puste ani nieokreślone?
javascript
unit-testing
jestjs
fasenberg
źródło
źródło
toMatch
powinno byćtoMatchObject
zgodne z opisem @ user3605834Pamiętaj, że
.toMatchObject
sprawdza, „czy obiekt JavaScript pasuje do podzbioru właściwości obiektu”. Może więc mieć niezamierzone twierdzenia jako takie:expect({ a: 1, b: 2 }).toMatchObject({ a: 1 }); // pass
Jeśli chcesz dokładnie dopasować obiekt, użyj
.toStrictEqual
, dostępne odjest 23
:expect({ a: 1, b: 2 }).toStrictEqual({ a: 1 }); // fail
źródło
Za jeden klucz możesz sprawdzić
expect(Boolean(obj[prop])).toBe(true | false);
W przypadku wielu kluczy (gdzie wszystkie muszą być obecne) możesz użyć,
expect(Boolean(obj[prop1]) && Boolean(obj[prop2])).toBe(true | false);
W przypadku kluczy wielokrotnych (w przypadku których musi być dowolny) można użyć
expect(Boolean(obj[prop1]) || Boolean(obj[prop2])).toBe(true | false);
źródło