Когда я запускаю свой тест в jest, он возвращается с
expect(received).toEqual(expected) // deep equality
Expected: "name"
Received: undefined
. Я не понимаю, почему Jest не помещает значение по умолчанию для любого из реквизитов. В MyComponent
встроенные значения являются значениями по умолчанию, если они не были объявлены при вызове компонента.
Вот мой шутник
import MyComponent from '../MyComponentFile';
afterEach(cleanup)
configure({ adapter: new Adapter() });
describe('testing components', () => {
it('Props update properly', ()=>{
const textWrapper = mount(
<MyComponent/>);
expect(textWrapper.prop('prop_one')).toEqual('defaultname1')
})
});
Компонент записан в такой форме:
const MyComponent = (props) => {
var prop_one = props.propone
var prop_twp = props.proptwo
...
//many more props after this
...
//now the defaults
if (prop_one === undefined)
prop_one = 'defaultname1'
if (prop_two === undefined)
prop_Two = 'defaultname2'
...and so on