From a72b02b665946b31a30e7236f1016824732a6d87 Mon Sep 17 00:00:00 2001 From: Alberto Defendi <1369-ahl-berto@users.noreply.gitlab.inf.unibz.it> Date: Sun, 21 Mar 2021 19:23:03 +0100 Subject: [PATCH] Test setup --- src/App.test.tsx | 11 +++++----- src/App.tsx | 2 +- src/components/LoginForm/LoginForm.test.tsx | 14 +++++++++++++ .../LoginForm/{index.tsx => LoginForm.tsx} | 20 ------------------- 4 files changed, 21 insertions(+), 26 deletions(-) create mode 100644 src/components/LoginForm/LoginForm.test.tsx rename src/components/LoginForm/{index.tsx => LoginForm.tsx} (83%) diff --git a/src/App.test.tsx b/src/App.test.tsx index 2a68616..39ef6e5 100644 --- a/src/App.test.tsx +++ b/src/App.test.tsx @@ -1,9 +1,10 @@ import React from 'react'; import { render, screen } from '@testing-library/react'; -import App from './App'; +import { App } from './App'; -test('renders learn react link', () => { - render(<App />); - const linkElement = screen.getByText(/learn react/i); - expect(linkElement).toBeInTheDocument(); +describe('<App />', () => { + it('renders without crashing', () => { + const wrapper = render(<App />); + expect(wrapper.queryByTestId('App')).toBeTruthy(); + }); }); diff --git a/src/App.tsx b/src/App.tsx index 6e5c72d..97d6154 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import { Form } from './components/LoginForm/index'; +import { Form } from './components/LoginForm/LoginForm'; export const App: React.FC = () => ( <div className="App"> diff --git a/src/components/LoginForm/LoginForm.test.tsx b/src/components/LoginForm/LoginForm.test.tsx new file mode 100644 index 0000000..ff13e8f --- /dev/null +++ b/src/components/LoginForm/LoginForm.test.tsx @@ -0,0 +1,14 @@ +import React from 'react'; +import { render, fireEvent } from '@testing-library/react'; +import { LoginForm } from './LoginForm'; + +describe('Email input', () => { + it('Should handle email insertion and validation'); + + it('renders button', () => { + const wrapper = render(<LoginForm />); + + console.log(wrapper.queryByTestId('LoginButton')); + expect(wrapper.queryByTestId('LoginButton')).toBeTruthy(); + }); +}); diff --git a/src/components/LoginForm/index.tsx b/src/components/LoginForm/LoginForm.tsx similarity index 83% rename from src/components/LoginForm/index.tsx rename to src/components/LoginForm/LoginForm.tsx index 2eb912d..fea60f6 100644 --- a/src/components/LoginForm/index.tsx +++ b/src/components/LoginForm/LoginForm.tsx @@ -4,13 +4,6 @@ import TextField from '@material-ui/core/TextField'; import Button from '@material-ui/core/Button'; import { isEmailValid } from './emailValidator'; -/** - * TODO - * Add enviroment variable for host - * Connect to api - * Add cookie session fetch - */ - const useStyles = makeStyles((theme: Theme) => createStyles({ root: { @@ -42,15 +35,6 @@ export const Form: React.FC = () => { }; const [formValues, setFormValues] = useState<formData>(defaultValues); - const requestOptions = { - method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify({ - email: formValues.email, - password: formValues.password, - }), - }; - const handleSubmit = (event: React.FormEvent): void => { event.preventDefault(); const errors: Array<string> = []; @@ -59,10 +43,6 @@ export const Form: React.FC = () => { console.log('Email address not valid'); } else { console.log(formValues); - fetch( - 'https://jsonplaceholder.typicode.com/posts', - requestOptions, - ).then((response) => response.json()); } }; -- GitLab