All files / pages AdminCoursesIndexPage.jsx

100% Statements 33/33
100% Branches 2/2
100% Functions 2/2
100% Lines 33/33

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 34 35 36 37 38 39 40 41 42 43 44 45 461x 1x   1x 1x 1x 1x   1x 14x   14x 14x 14x 14x 14x 14x 14x 14x 14x   14x   14x 14x 14x 14x 14x 14x 14x       14x   14x 14x 14x 14x 14x 14x       14x  
import React from "react";
import { useBackend } from "main/utils/useBackend";
 
import BasicLayout from "main/layouts/BasicLayout/BasicLayout";
import CoursesTable from "main/components/Courses/CoursesTable";
import { useCurrentUser } from "main/utils/currentUser";
import { Button } from "react-bootstrap";
 
export default function AdminCoursesIndexPage() {
  const { data: currentUser } = useCurrentUser();
 
  // Stryker disable  all
  const {
    data: courses,
    error: _error,
    status: _status,
  } = useBackend(
    ["/api/course/all"],
    { method: "GET", url: "/api/course/all" },
    [],
  );
  // Stryker restore  all
 
  const createButton = () => {
    return (
      <Button
        variant="primary"
        href="/admin/createcourses"
        style={{ float: "right" }}
      >
        Create New Course
      </Button>
    );
  };
 
  return (
    <BasicLayout>
      <div className="pt-2">
        {createButton()}
        <h1>Courses</h1>
        <CoursesTable courses={courses} currentUser={currentUser} />
      </div>
    </BasicLayout>
  );
}