import { mount } from "enzyme";
import React from "react";
import { MockBodyshop } from "../../utils/TestingHelpers";
import { AllocationsAssignmentComponent } from "./allocations-assignment.component";

describe("AllocationsAssignmentComponent component", () => {
  let wrapper;

  beforeEach(() => {
    const mockProps = {
      bodyshop: MockBodyshop,
      handleAssignment: jest.fn(),
      assignment: {},
      setAssignment: jest.fn(),
      visibilityState: [false, jest.fn()],
      maxHours: 4
    };

    wrapper = mount(<AllocationsAssignmentComponent {...mockProps} />);
  });

  it("should render AllocationsAssignmentComponent component", () => {
    expect(wrapper).toMatchSnapshot();
  });

  it("should render a list of employees", () => {
    const empList = wrapper.find("#employeeSelector");
    expect(empList.children()).to.have.lengthOf(2);
  });

  it("should create an allocation on save", () => {
    wrapper.find("Button").simulate("click");
    expect(wrapper).toMatchSnapshot();
  });
});
