vendredi 3 août 2018

Testing component method with value passed through

Hi I'm trying to make a test for a component method that is passed in a number and returns a string. This is my first time writing test in react and I couldn't find any examples of what to do in my situation.

my code

import moment from "moment";
import React from 'react';
class ReactPage extends React.Component {
  //some other functions

  //turn number into money (returns string)
  commafyMoney = (money) => {
    return "$"+ money.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
  }

  //return fancy react webpage
  render(){
    return(
      //stuff
    );
  }
}
export default ReactPage; 

this is my attempt of testing the returned value

import {shallow, mount, render} from 'enzyme';
import React from 'react';
import ReactDOM from 'react-dom';
import ReactPage from './App';

it('commafyMoney(number)', () => {
  const wrapper = shallow(<ReactPage />);
  expect(wrapper.instance().commafyMoney(1234.56)).toEqual("$1,234.56");
});

when I run this test the error that's returned is encountered a declaration exception not that test 'commafyMoney(number)' failed

Aucun commentaire:

Enregistrer un commentaire