Advertisement
Guest User

Untitled

a guest
Nov 28th, 2018
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.84 KB | None | 0 0
  1. import * as React from "react";
  2. import { shallow } from "enzyme";
  3. import * as moment from "moment";
  4.  
  5. import { Role } from "../shared/contracts/user-roles";
  6. import { Task } from "../shared/contracts/task";
  7. import { Status } from "../shared/contracts/status";
  8. import { LoginView } from "../components/log-in/log-in";
  9. import { TimerActionsCreators } from "../actions/actions-creators";
  10. import { UsersReduceStore } from "../stores/users-store";
  11. import { TasksReduceStore } from "../stores/tasks-store";
  12. import { ProjectsReduceStore } from "../stores/projects-store";
  13. import { TimerHelpers } from "../helpers/timer-helpers";
  14.  
  15. it("renders an `.log-in-view`", () => {
  16. const wrapper = shallow(<LoginView allUsers={UsersReduceStore.getState().users} />);
  17. expect(wrapper.find(".log-in-view")).toHaveLength(1);
  18. });
  19.  
  20. it("checks if all users are added from local storage", () => {
  21. TimerActionsCreators.loadUsersFromLocalStorage();
  22. expect(UsersReduceStore.getState().users.length).toBe(9);
  23. });
  24.  
  25. it("adds new user and confirms it's added", () => {
  26. TimerActionsCreators.setUser({ id: "9", userName: "Test Name", login: "test", password: "test", role: Role.Member });
  27. expect(UsersReduceStore.getUserById("9")).toBeDefined();
  28. });
  29.  
  30. it("deletes a user and confirms it's deleted", () => {
  31. TimerActionsCreators.setUser({ id: "9", userName: "Test Name", login: "test", password: "test", role: Role.Member });
  32. TimerActionsCreators.deleteUser("9");
  33. expect(UsersReduceStore.getUserById("9")).toBeUndefined();
  34. });
  35.  
  36. it("adds new task and confirms it's added", () => {
  37. const testTask: Task = {
  38. description: "",
  39. endDate: moment()
  40. .add("hours", -1)
  41. .format(),
  42. startDate: moment()
  43. .add("days", -5)
  44. .add("hours", 1)
  45. .format(),
  46. taskName: "hardcoded",
  47. user: { id: "0", userName: "Denis Jankelaic", login: "denjan", password: "denis", role: Role.Admin },
  48. id: "test",
  49. project: {
  50. projectName: "QuatroTimer",
  51. id: "2",
  52. users: ["0"]
  53. },
  54. taskStatus: Status.Finished,
  55. startStopHistory: [
  56. moment()
  57. .add("hours", -3)
  58. .format(),
  59. moment()
  60. .add("hours", -1)
  61. .format()
  62. ],
  63. isCurrent: false
  64. };
  65. TimerActionsCreators.setTask(testTask);
  66. expect(TasksReduceStore.getTaskById("test")).toBeDefined();
  67. });
  68.  
  69. it("adds new task, then deletes it and confirms it's deleted", () => {
  70. const testTask: Task = {
  71. description: "",
  72. endDate: moment()
  73. .add("hours", -1)
  74. .format(),
  75. startDate: moment()
  76. .add("days", -5)
  77. .add("hours", 1)
  78. .format(),
  79. taskName: "hardcoded",
  80. user: { id: "0", userName: "Denis Jankelaic", login: "denjan", password: "denis", role: Role.Admin },
  81. id: "test",
  82. project: {
  83. projectName: "QuatroTimer",
  84. id: "2",
  85. users: ["0"]
  86. },
  87. taskStatus: Status.Finished,
  88. startStopHistory: [
  89. moment()
  90. .add("hours", -3)
  91. .format(),
  92. moment()
  93. .add("hours", -1)
  94. .format()
  95. ],
  96. isCurrent: false
  97. };
  98. TimerActionsCreators.setTask(testTask);
  99. TimerActionsCreators.deleteTask("test");
  100. expect(TasksReduceStore.getTaskById("test")).toBeUndefined();
  101. });
  102.  
  103. it("checks if function returns all projects by user id", () => {
  104. expect(TimerHelpers.getProjectsByUserId(ProjectsReduceStore.getState().projects, "0").length).toBe(4);
  105. });
  106.  
  107. it("checks if function returns all users in a project", () => {
  108. expect(TimerHelpers.getUsersInProject(ProjectsReduceStore.getState().projects[0], UsersReduceStore.getState().users).length).toBe(1);
  109. });
  110.  
  111. it("adds a project and confirms it's been added", () => {
  112. const currentProjectListLength = ProjectsReduceStore.getState().projects.length;
  113. TimerActionsCreators.addNewProject("testProject");
  114. expect(ProjectsReduceStore.getState().projects.length).toBe(currentProjectListLength + 1);
  115. });
  116.  
  117. it("adds a project and then deletes it, then confirms it's been deleted", () => {
  118. const currentProjectListLength = ProjectsReduceStore.getState().projects.length;
  119. TimerActionsCreators.addNewProject("testProject");
  120. const currentProjectListLengthAgain = ProjectsReduceStore.getState().projects.length;
  121. TimerActionsCreators.deleteProject(ProjectsReduceStore.getState().projects[currentProjectListLengthAgain - 1].id);
  122. expect(ProjectsReduceStore.getState().projects.length).toBe(currentProjectListLength);
  123. });
  124.  
  125. it("checks if this test is done on mobile device", () => {
  126. expect(TimerHelpers.IsMobileHelper()).toBeFalsy();
  127. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement