Skip to content

Commit 92a3f4f

Browse files
removed all answers.
1 parent 26424e3 commit 92a3f4f

File tree

1 file changed

+8
-98
lines changed

1 file changed

+8
-98
lines changed

src/components/ContactForm.test.js

Lines changed: 8 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -6,126 +6,36 @@ import userEvent from '@testing-library/user-event';
66
import ContactForm from './ContactForm';
77

88
test('renders without errors', ()=>{
9-
render(<ContactForm/>);
9+
1010
});
1111

1212
test('renders the contact form header', ()=> {
13-
render(<ContactForm/>);
14-
15-
const headerElement = screen.queryByText(/contact form/i);
16-
expect(headerElement).toBeInTheDocument();
17-
expect(headerElement).toBeTruthy();
18-
expect(headerElement).toHaveTextContent(/contact form/i);
13+
1914
});
2015

2116
test('renders ONE error message if user enters less then 5 characters into firstname.', async () => {
22-
render(<ContactForm/>);
23-
24-
const firstNameField = screen.getByLabelText(/First Name*/i);
25-
userEvent.type(firstNameField, "123");
26-
27-
const errorMessages = await screen.findAllByTestId('error');
28-
expect(errorMessages).toHaveLength(1);
17+
2918
});
3019

3120
test('renders THREE error messages if user enters no values into any fields.', async () => {
32-
render(<ContactForm/>);
33-
34-
const submitButton = screen.getByRole("button");
35-
userEvent.click(submitButton);
36-
37-
await waitFor(()=> {
38-
const errorMessages = screen.queryAllByTestId("error");
39-
expect(errorMessages).toHaveLength(3);
40-
});
21+
4122
});
4223

4324
test('renders ONE error message if user enters a valid first name and last name but no email.', async () => {
44-
render(<ContactForm/>);
45-
46-
const firstNameField = screen.getByLabelText(/first name*/i);
47-
userEvent.type(firstNameField, "warren");
48-
49-
const lastNameField = screen.getByLabelText(/last name*/i);
50-
userEvent.type(lastNameField, "longmire");
51-
52-
const button = screen.getByRole("button");
53-
userEvent.click(button);
54-
55-
const errorMessages = await screen.findAllByTestId("error");
56-
expect(errorMessages).toHaveLength(1);
25+
5726
});
5827

5928
test('renders "email must be a valid email address" if an invalid email is entered', async () => {
60-
render(<ContactForm/>);
61-
const emailField = screen.getByLabelText(/email*/i);
62-
userEvent.type(emailField, "warren@gmail");
63-
64-
const errorMessage = await screen.findByText(/email must be a valid email address/i);
65-
expect(errorMessage).toBeInTheDocument();
29+
6630
});
6731

6832
test('renders "lastName is a required field" if an last name is not entered and the submit button is clicked', async () => {
69-
render(<ContactForm/>);
70-
const submitButton = screen.getByRole("button");
71-
userEvent.click(submitButton);
72-
73-
const errorMessage = await screen.findByText(/lastName is a required field/i);
74-
expect(errorMessage).toBeInTheDocument();
33+
7534
});
7635

7736
test('renders all firstName, lastName and email text when submitted. Does NOT render message if message is not submitted.', async () => {
78-
render(<ContactForm/>);
79-
80-
const firstNameField = screen.getByLabelText(/first name*/i);
81-
const lastNameField = screen.getByLabelText(/last name*/i);
82-
const emailField = screen.getByLabelText(/email*/i);
83-
84-
userEvent.type(firstNameField, "warren");
85-
userEvent.type(lastNameField, "longmire");
86-
userEvent.type(emailField, "longmire@email.com");
87-
88-
const button = screen.getByRole("button");
89-
userEvent.click(button);
90-
91-
await waitFor(()=> {
92-
const firstnameDisplay = screen.queryByText("warren");
93-
const lastnameDisplay = screen.queryByText("longmire");
94-
const emailDisplay = screen.queryByText("longmire@email.com");
95-
const messageDisplay = screen.queryByTestId("messageDisplay");
96-
97-
expect(firstnameDisplay).toBeInTheDocument();
98-
expect(lastnameDisplay).toBeInTheDocument();
99-
expect(emailDisplay).toBeInTheDocument();
100-
expect(messageDisplay).not.toBeInTheDocument();
101-
});
37+
10238
});
10339

10440
test('renders all fields text when all fields are submitted.', async () => {
105-
render(<ContactForm/>);
106-
107-
const firstNameField = screen.getByLabelText(/First Name*/i);
108-
const lastNameField = screen.getByLabelText(/Last Name*/i);
109-
const emailField = screen.getByLabelText(/Email*/i);
110-
const messageField = screen.getByLabelText(/Message/i);
111-
112-
userEvent.type(firstNameField, "Johnny");
113-
userEvent.type(lastNameField, "Doe");
114-
userEvent.type(emailField, "address@gmail.com");
115-
userEvent.type(messageField, "this is a message");
116-
117-
const submitButton = await screen.findByRole("button");
118-
userEvent.click(submitButton);
119-
120-
await waitFor(()=> {
121-
const firstnameDisplay = screen.queryByText(/John/i);
122-
const lastnameDisplay = screen.queryByText(/Doe/i);
123-
const emailDisplay = screen.queryByText(/address@gmail.com/i);
124-
const messageDisplay = screen.queryByText(/this is a message/i);
125-
126-
expect(firstnameDisplay).toBeInTheDocument();
127-
expect(lastnameDisplay).toBeInTheDocument();
128-
expect(emailDisplay).toBeInTheDocument();
129-
expect(messageDisplay).toBeInTheDocument();
130-
});
13141
});

0 commit comments

Comments
 (0)