Guest User

Untitled

a guest
May 29th, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. import React from 'react';
  2. import ReactDOM from 'react-dom';
  3. import Login from '../login';
  4.  
  5. // Basic unit test
  6. test('calls onSubmit with the username and password when submitted', () => {
  7. const formContainer = document.createElement("div");
  8. const onSubmit = jest.fn();
  9.  
  10. ReactDOM.render(<Login onSubmit={onSubmit} />, formContainer);
  11.  
  12. const fakeUser = {
  13. username: 'yazan-aabed',
  14. password: '123123'
  15. };
  16.  
  17. const inputsFields = formContainer.querySelectorAll("input");
  18.  
  19. const userNameField = inputsFields[0];
  20. const passwordField = inputsFields[1];
  21.  
  22. const submitButtonNode = formContainer.querySelector("button");
  23.  
  24. userNameField.value = fakeUser.username;
  25. passwordField.value = fakeUser.password;
  26.  
  27. const form = formContainer.querySelector('form');
  28.  
  29. form.dispatchEvent(new window.Event('submit'));
  30.  
  31. expect(onSubmit).toHaveBeenCalledTimes(1)
  32. expect(onSubmit).toHaveBeenCalledWith(fakeUser)
  33. expect(submitButtonNode.type).toBe('submit')
  34. });
Add Comment
Please, Sign In to add comment