import TaskGroupModel from "../TaskGroupModel";
import ModularUIResponse from "../../../modularui/ModularUIResponse";
import mockTaskGroup from "./taskgroup.json";
import mockTaskGroupContributions from "./taskgroupContributions.json";

describe("taskGroupModel", () => {
  it("should be able to create an empty Taskgroup mode", () => {
    const taskgroup = new TaskGroupModel({});

    expect(taskgroup).toBeInstanceOf(TaskGroupModel);
  });

  it("should create an application object with links an a label on a typical modular ui response", () => {
    const data = ModularUIResponse.create({
      key: "TaskGroup",
      data: mockTaskGroup,
      contributions: mockTaskGroupContributions,
    });

    const taskgroup = new TaskGroupModel(data);

    expect(taskgroup).toBeInstanceOf(TaskGroupModel);
    expect(taskgroup.label).toBe("General tasks");
    expect(taskgroup.actionCollection.size).toBe(2);
  });
});
