Как проверить значение функции, которая является доступом, используя метод instance () - PullRequest
0 голосов
/ 17 декабря 2018

У меня есть реагирующий компонент, такой как сильфон

import React, { Component } from 'react'

import { ActionWrapper } from 'components/Wrappers'

import { P } from 'components/Text'

class TestStock extends Component {
  total = (a, b) => {
    let totValue = 0
    totValue = a + b
    return totValue
  }

  render() {
    return (
      <ActionWrapper
        title="In stock"
        description={'Manage your in stock items'}
      >
        <P>Total is {this.totValue}</P>
      </ActionWrapper>
    )
  }
}

export default TestStock

, и я должен написать тест для проверки всей функции сильфона

 describe('total function in the stock', () => {
  const wrapper = shallow(<Stock />)
  const value = wrapper.instance().total(5 + 7)

  test('for total value calculation', () => {
    expect(value).toBe(6)
  })

  test('for total less or equal to 10 ', () => {
    expect(value).toBeLessThanOrEqual(10)
  })
})

Но тест не прошел, когда я получил Нанв качестве значения.Что я сделал не так, как я могу проверить эту функцию

1 Ответ

0 голосов
/ 17 декабря 2018

Проблема в том, что вместо передачи значений в качестве аргументов функции экземпляра вы передаете затем как выражение, и, следовательно, второй аргумент - undefined, в результате чего a + b будет оценено как NaN внутри функции.,Измените свой код на

const value = wrapper.instance().total(5, 7)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...