All files / pages/Dogs DogCreatePage.js

100% Statements 7/7
100% Branches 0/0
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33                2x   2x 1x             1x 1x 1x     2x                  
import BasicLayout from "main/layouts/BasicLayout/BasicLayout";
import DogForm from "main/components/Dogs/DogForm";
import { useNavigate } from 'react-router-dom'
import axios from "axios";
import { toast } from 'react-toastify';
 
export default function DogsCreatePage() {
 
  let navigate = useNavigate(); 
 
  const onSubmit = async (dog) => {
    const res = await axios.post("/api/dogs/post", null, {
      params: {
        id: dog.id,
        name: dog.name,
        breed: dog.breed,
      },
    });
    const createdDog = res.data;
    toast(`New dog Created - id: ${createdDog.id} name: ${createdDog.name}`);
    navigate("/dogs");
  }  
 
  return (
    <BasicLayout>
      <div className="pt-2">
        <h1>Create New Dog!</h1>
        <DogForm submitAction={onSubmit} />
      </div>
    </BasicLayout>
  )
}