У меня есть место, mapModule
куда я импортирую компоненты и экспортирую их:
import ComponentName from '../components/ComponentName';
export default {
name: ComponentName,
};
Как я могу проверить, что у mapModule
него есть правильные экспортированные ключи и значения, и что они не являются нулевыми или неопределенными?
javascript
unit-testing
jestjs
Fasenberg
источник
источник
toMatch
должно быть таким,toMatchObject
как указано @ user3605834Имейте в виду, что это
.toMatchObject
проверяет, «что объект JavaScript соответствует подмножеству свойств объекта». Таким образом, у него могут быть непреднамеренные утверждения как таковые:expect({ a: 1, b: 2 }).toMatchObject({ a: 1 }); // pass
Если вы хотите точно сопоставить объект, вы должны использовать
.toStrictEqual
, доступно сjest 23
:expect({ a: 1, b: 2 }).toStrictEqual({ a: 1 }); // fail
источник
За один ключ можно оформить заказ
expect(Boolean(obj[prop])).toBe(true | false);
Для нескольких ключей (где все должно присутствовать) вы можете использовать,
expect(Boolean(obj[prop1]) && Boolean(obj[prop2])).toBe(true | false);
Для нескольких ключей (где должен присутствовать любой) вы можете использовать
expect(Boolean(obj[prop1]) || Boolean(obj[prop2])).toBe(true | false);
источник